Home
last modified time | relevance | path

Searched refs:free (Results 1 – 4 of 4) sorted by relevance

/littlefs-3.5.0-3.4.0/
Dlfs.c536 lfs_block_t off = ((block - lfs->free.off) in lfs_alloc_lookahead()
539 if (off < lfs->free.size) { in lfs_alloc_lookahead()
540 lfs->free.buffer[off / 32] |= 1U << (off % 32); in lfs_alloc_lookahead()
551 lfs->free.ack = lfs->cfg->block_count; in lfs_alloc_ack()
557 lfs->free.size = 0; in lfs_alloc_drop()
558 lfs->free.i = 0; in lfs_alloc_drop()
565 while (lfs->free.i != lfs->free.size) { in lfs_alloc()
566 lfs_block_t off = lfs->free.i; in lfs_alloc()
567 lfs->free.i += 1; in lfs_alloc()
568 lfs->free.ack -= 1; in lfs_alloc()
[all …]
Dlfs_util.h233 free(p); in lfs_free()
DDESIGN.md851 Normally, block allocation involves some sort of free list or bitmap stored on
852 the filesystem that is updated with free blocks. However, with power
857 littlefs takes a cautious approach. Instead of trusting a free list on disk,
859 the free blocks on the disk. The block allocator operates much like a garbage
883 '-------------------'----'-------------------'----'-- free blocks
886 While this approach may sound complicated, the decision to not maintain a free
896 Our block allocator needs to find free blocks efficiently. You could traverse
922 is empty, we scan the filesystem for more free blocks, populating our lookahead
954 one or two passes are usually needed to find free blocks. Additionally, the
1235 perfectly, but it is distributed among the free blocks and greatly extends the
[all …]
Dlfs.h410 } free; member