Searched full:is (Results 1 – 23 of 23) sorted by relevance
/littlefs-2.7.6/ |
D | SPEC.md | 3 This is the technical specification of the little filesystem. This document 4 covers the technical details of how the littlefs is stored on disk for 20 - littlefs is a block-based filesystem. The disk is divided into an array of 36 distributed atomic updates. Even the superblock is stored in a metadata pair. 38 As their name suggests, a metadata pair is stored in two blocks, with one block 39 providing a backup during erase cycles in case power is lost. These two blocks 41 metadata pair is stored as two block pointers. 49 The high-level layout of a metadata block is fairly simple: 103 blob of data. But exactly how these tags are stored is a little bit tricky. 137 tag contains a valid bit used to indicate if the tag and containing commit is [all …]
|
D | lfs.h | 63 // Maximum size of custom attributes in bytes, may be redefined, but there is 77 LFS_ERR_NOTDIR = -20, // Entry is not a dir 78 LFS_ERR_ISDIR = -21, // Entry is a dir 79 LFS_ERR_NOTEMPTY = -39, // Dir is not empty 168 // The state of an erased block is undefined. Negative error codes 211 // lookahead buffer is stored as a compact bitmap, so each byte of RAM 216 // By default lfs_malloc is used to allocate this buffer. 220 // By default lfs_malloc is used to allocate this buffer. 224 // and aligned to a 32-bit boundary. By default lfs_malloc is used to 229 // larger names except the size of the info struct which is controlled by [all …]
|
D | README.md | 14 **Power-loss resilience** - littlefs is designed to handle random power 16 power is lost the filesystem will fall back to the last known good state. 18 **Dynamic wear leveling** - littlefs is designed with flash in mind, and 22 **Bounded RAM/ROM** - littlefs is designed to work with a small amount of 23 memory. RAM usage is strictly bounded, which means RAM consumption does not 25 recursion and dynamic memory is limited to configurable buffers that can be 41 // configuration of the filesystem is provided by this struct 81 // remember the storage is not updated until the file is closed successfully 94 Detailed documentation (or at least as much detail as is currently available) 103 The state of the littlefs is stored in the `lfs_t` type which is left up [all …]
|
D | DESIGN.md | 16 filesystem that is resilient to power-loss and flash wear without using 19 This document covers the high-level design of littlefs, how it is different 31 Flash itself is an interesting piece of technology with its own quirks and 33 operations: erasing and programming. Programming (setting bits to 0) is 39 systems to lose power at any time. Usually, microcontroller code is simple and 51 1. **Wear leveling** - Writing to flash is destructive. If a filesystem 62 were possible. For RAM we have a stronger requirement, all RAM usage is 77 Here storage is divided into blocks, with each file being stored in a 79 power-loss resilient, so updating a file is a simple as rewriting the blocks 105 and smallest. However the lack of power resilience is not great, and the [all …]
|
D | LICENSE.md | 15 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
D | .travis.yml | 76 | capture(\"code size is (?<size>[0-9]+)\").size" \ 79 STATUS="Passed, code size is ${CURR}B" 135 # note this is still tested in the native tests 164 # note this is still tested in the native tests 193 # note this is still tested in the native tests 414 # this isn't perfect but is probably good enough
|
D | lfs.c | 15 // do not zero, cheaper if cache is readonly or only going to be in lfs_cache_drop() 43 // is already in pcache? in lfs_bd_read() 60 // is already in rcache? in lfs_bd_read() 459 // Invalidate the lookahead buffer. This is done during mounting and 599 // is already in pcache? in lfs_dir_getread() 616 // is already in rcache? in lfs_dir_getread() 775 // if either block address is invalid we return LFS_ERR_CORRUPT here, in lfs_dir_fetchmatch() 1083 // only equal if our size is still the same in lfs_dir_find_match() 1271 // padding is not crced, which lets fetches skip padding but in lfs_dir_commitcrc() 1365 // zero for reproducability in case initial block is unreadable in lfs_dir_alloc() [all …]
|
D | lfs_util.h | 13 // If LFS_CONFIG is used, none of the default utils will be emitted and must be 188 // Find the sequence comparison of a and b, this is the distance
|
/littlefs-2.7.6/bd/ |
D | lfs_testbd.h | 33 // Not that read-noop is not allowed. Read _must_ return a consistent (but 47 // testbd config, this is required for testing 55 // of bad blocks is controlled by the badblock_mode. 97 // Note that filebd is used if a path is provided, if path is NULL 119 // state of an erased block is undefined.
|
D | lfs_testbd.c | 153 // check if read is valid in lfs_testbd_read() 178 // check if write is valid in lfs_testbd_prog() 224 // check if erase is valid in lfs_testbd_erase() 281 // check if block is valid in lfs_testbd_getwear() 294 // check if block is valid in lfs_testbd_setwear()
|
D | lfs_filebd.c | 78 // check if read is valid in lfs_filebd_read() 83 // zero for reproducability (in case file is truncated) in lfs_filebd_read() 114 // check if write is valid in lfs_filebd_prog() 166 // check if erase is valid in lfs_filebd_erase()
|
D | lfs_rambd.c | 78 // check if read is valid in lfs_rambd_read() 97 // check if write is valid in lfs_rambd_prog() 121 // check if erase is valid in lfs_rambd_erase()
|
D | lfs_rambd.h | 29 // occurs, which is still a valid block device 64 // state of an erased block is undefined.
|
D | lfs_filebd.h | 62 // state of an erased block is undefined.
|
/littlefs-2.7.6/scripts/ |
D | readmdir.py | 198 # is valid commit? 219 if tag in self and self[tag] is tag: 222 # id could have change, I know this is messy and slow 226 if ntag in self and self[ntag] is tag: 313 if block is None: 332 if b is not None),
|
D | test.py | 174 if (self.filter is not None and 178 elif (self.filter is not None and 182 elif args.get('no_internal', False) and self.in_ is not None: 184 elif self.if_ is not None: 270 if m and assert_ is None: 380 if self.code is not None: 472 if self.code is not None: 528 if path is None: 732 if failure is not None: 747 help="Description of test(s) to run. By default, this is all tests \ [all …]
|
D | readtree.py | 70 if mdir.tail is None or not mdir.tail.is_('hardtail'): 74 if mdir.tail is None:
|
D | explode_asserts.py | 234 if m is not None:
|
/littlefs-2.7.6/tests/ |
D | test_relocations.toml | 146 [[case]] # reentrant testing for relocations, this is the same as the 192 // is valid dir? 196 // try to delete path in reverse order, ignore if dir is not empty 268 // stop once some dir is renamed 292 // ignore if dir is not empty
|
D | test_orphans.toml | 103 // is valid dir? 107 // try to delete path in reverse order, ignore if dir is not empty
|
D | test_exhaustion.toml | 168 # of wear-leveling is that increasing a block device's space translates directly 169 # into increasing the block devices lifetime. This is something we can actually 435 // skip 0 and 1 as superblock movement is intentionally avoided
|
D | test_move.toml | 58 [[case]] # noop move, yes this is legal 1018 // rename file while everything is open, this triggers both 1077 // rename file while everything is open, this triggers both 1169 // rename file while everything is open, this triggers both 1234 // rename file while everything is open, this triggers both 1333 // rename file while everything is open, this triggers both 1436 // rename file while everything is open, this triggers both 1586 // the worst case is if we need to relocate and we need to implicit
|
D | test_alloc.toml | 363 // but mark the head of our file as a "bad block", this is force our
|