Home
last modified time | relevance | path

Searched +full:- +full:n (Results 1 – 17 of 17) sorted by relevance

/littlefs-2.7.6/tests/
Dtest_alloc.toml3 if = 'LFS_BLOCK_CYCLES == -1'
7 define.SIZE = '(((LFS_BLOCK_SIZE-8)*(LFS_BLOCK_COUNT-6)) / FILES)'
18 for (int n = 0; n < FILES; n++) {
19 sprintf(path, "breakfast/%s", names[n]);
20 lfs_file_open(&lfs, &files[n], path,
23 for (int n = 0; n < FILES; n++) {
24 size = strlen(names[n]);
26 lfs_file_write(&lfs, &files[n], names[n], size) => size;
29 for (int n = 0; n < FILES; n++) {
30 lfs_file_close(&lfs, &files[n]) => 0;
[all …]
Dtest_dirs.toml18 define.N = 'range(0, 100, 3)'
23 for (int i = 0; i < N; i++) {
37 for (int i = 0; i < N; i++) {
49 define.N = 'range(3, 100, 11)'
54 for (int i = 0; i < N; i++) {
68 for (int i = 0; i < N; i++) {
79 for (int i = 0; i < N; i++) {
99 define.N = 'range(3, 100, 11)'
104 for (int i = 0; i < N; i++) {
118 for (int i = 0; i < N; i++) {
[all …]
Dtest_files.toml34 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE-i);
49 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE-i);
73 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE1-i);
88 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE1-i);
103 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE2-i);
118 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE2-i);
130 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE1-i);
155 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE1-i);
170 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE1-i);
185 lfs_size_t chunk = lfs_min(CHUNKSIZE, SIZE2-i);
[all …]
Dtest_superblocks.toml31 define.N = [10, 100, 1000]
35 for (int i = 0; i < N; i++) {
46 // one last check after power-cycle
59 define.N = [10, 100, 1000]
62 for (int i = 0; i < N; i++) {
82 // one last check after power-cycle
92 define.N = 24
101 for (int i = 0; i < N; i++) {
121 // one last check after power-cycle
Dtest_move.toml10 lfs_file_write(&lfs, &file, "hola\n", 5) => 5;
11 lfs_file_write(&lfs, &file, "bonjour\n", 8) => 8;
12 lfs_file_write(&lfs, &file, "ohayo\n", 6) => 6;
48 memcmp(buffer, "hola\n", 5) => 0;
50 memcmp(buffer, "bonjour\n", 8) => 0;
52 memcmp(buffer, "ohayo\n", 6) => 0;
84 lfs_file_write(&lfs, &file, "hola\n", 5) => 5;
85 lfs_file_write(&lfs, &file, "bonjour\n", 8) => 8;
86 lfs_file_write(&lfs, &file, "ohayo\n", 6) => 6;
102 int off = LFS_BLOCK_SIZE-1;
[all …]
Dtest_exhaustion.toml23 // chose name, roughly random seed, and random 2^n size
105 // chose name, roughly random seed, and random 2^n size
167 # These are a sort of high-level litmus test for wear-leveling. One definition
168 # of wear-leveling is that increasing a block device's space translates directly
172 [[case]] # wear-level test running a filesystem to exhaustion
196 // chose name, roughly random seed, and random 2^n size
264 [[case]] # wear-level test + expanding superblock
285 // chose name, roughly random seed, and random 2^n size
370 // chose name, roughly random seed, and random 2^n size
432 lfs_testbd_wear_t minwear = -1;
[all …]
/littlefs-2.7.6/scripts/
Dtest.py27 ./scripts/explode_asserts.py $$< -o $$@
31 -include tests/*.d
35 $(CC) $(CFLAGS) $^ $(LFLAGS) -o $@
50 'LFS_BLOCK_CYCLES': -1,
150 f.write('#define %s %s\n' % (k, v))
153 '\n'+8*' '+'__attribute__((unused)) intmax_t %s' % k
158 f.write('\n')
159 f.write(4*' '+'// test case %d\n' % self.caseno)
160 f.write(4*' '+'#line %d "%s"\n' % (self.code_lineno, self.suite.path))
167 f.write('}\n')
[all …]
Dexplode_asserts.py21 printf("\\n");
138 outf.write("#include <stdio.h>\n")
139 outf.write("#include <stdbool.h>\n")
140 outf.write("#include <stdint.h>\n")
141 outf.write("#include <inttypes.h>\n")
142 outf.write("#include <signal.h>\n")
152 desc['print'].strip().format(**format))+'\n')
154 desc['fail'].strip().format(**format))+'\n')
162 desc['assert'].strip().format(**format))+'\n')
183 'ws': [r'(?:\s|\n|#.*?\n|//.*?\n|/\*.*?\*/)+'],
[all …]
Dprefix.py24 name, count3 = re.subn('\\B-D'+from_prefix.upper(),
25 '-D'+to_prefix.upper(), name)
34 'git', 'ls-tree', '-r', '--name-only', 'HEAD']).split()
47 line, n = subn(from_prefix, to_prefix, line)
48 count += n
56 '%s -> %s' % (oldname, newname) if namecount else oldname,
Dreadmdir.py123 mask = 0x7ff & ~((1 << prefix)-1)
128 type, prefix//4, self.type & ((1 << prefix)-1))
182 while len(block) - off >= 4:
240 return not ((other.rev - self.rev) & 0x80000000)
258 tag.id <= gtag.id - gdiff):
259 if tag.is_('create') and tag.id == gtag.id - gdiff:
266 (int(gmask) & int(gtag.chid(gtag.id - gdiff)))):
276 f.write("%-8s %-8s %-13s %4s %4s" % (
280 f.write('\n')
283 f.write("%08x: %08x %-13s %4s %4s" % (
[all …]
Dreadtree.py35 blocks[id(data[-1])] = block
107 print("%-47s%s" % ("littlefs v%s.%s" % version,
130 ' -> {%#x, %#x}' % struct.unpack('<II', mdir.tail.data)
141 lines = list(filter(None, f.getvalue().split('\n')))
144 ' ' if j == len(dir)-1 else
145 'v' if k == len(lines)-1 else
177 parser.add_argument('-l', '--log', action='store_true',
179 parser.add_argument('-a', '--all', action='store_true',
181 parser.add_argument('-T', '--no-truncate', action='store_true',
/littlefs-2.7.6/
DDESIGN.md3 A little fail-safe filesystem designed for microcontrollers.
6 | | | .---._____
7 .-----. | |
8 --|o |---| littlefs |
9 --| |---| |
10 '-----' '----------'
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
21 low-level details covering every bit on disk, check out [SPEC.md](SPEC.md).
25 The embedded systems littlefs targets are usually 32-bit microcontrollers with
[all …]
D.travis.yml4 - CFLAGS=-Werror
5 - MAKEFLAGS=-j
11 - $HOME/.cache/apt
14 _: &install-common
16 - sudo apt-get install python3 python3-pip
17 - sudo pip3 install toml
18 # setup a ram-backed disk to speed up reentrant tests
19 - mkdir disks
20 - sudo mount -t tmpfs -o size=100m tmpfs disks
21 - export TFLAGS="$TFLAGS --disk=disks/disk"
[all …]
Dlfs_util.h5 * SPDX-License-Identifier: BSD-3-Clause
11 // LFS_CONFIG as a header file to include (-DLFS_CONFIG=lfs_config.h).
65 // macros must not have side-effects as the macros can be removed for a smaller
74 printf("%s:%d:trace: " fmt "%s\n", __FILE__, __LINE__, __VA_ARGS__)
86 printf("%s:%d:debug: " fmt "%s\n", __FILE__, __LINE__, __VA_ARGS__)
98 printf("%s:%d:warn: " fmt "%s\n", __FILE__, __LINE__, __VA_ARGS__)
110 printf("%s:%d:error: " fmt "%s\n", __FILE__, __LINE__, __VA_ARGS__)
130 // toolchain-specific implementations. LFS_NO_INTRINSICS falls back to a more
133 // Min/max functions for unsigned 32-bit numbers
144 return a - (a % alignment); in lfs_aligndown()
[all …]
DREADME.md3 A little fail-safe filesystem designed for microcontrollers.
6 | | | .---._____
7 .-----. | |
8 --|o |---| littlefs |
9 --| |---| |
10 '-----' '----------'
14 **Power-loss resilience** - littlefs is designed to handle random power
15 failures. All file operations have strong copy-on-write guarantees and if
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
[all …]
DSPEC.md10 | | | .---._____
11 .-----. | |
12 --|o |---| littlefs |
13 --| |---| |
14 '-----' '----------'
20 - littlefs is a block-based filesystem. The disk is divided into an array of
23 - Block pointers are stored in 32 bits, with the special value `0xffffffff`
26 - In addition to the logical block size (which usually matches the erase
31 - By default, all values in littlefs are stored in little-endian byte order.
49 The high-level layout of a metadata block is fairly simple:
[all …]
Dlfs.c5 * SPDX-License-Identifier: BSD-3-Clause
10 #define LFS_BLOCK_NULL ((lfs_block_t)-1)
11 #define LFS_BLOCK_INLINE ((lfs_block_t)-2)
18 rcache->block = LFS_BLOCK_NULL; in lfs_cache_drop()
23 memset(pcache->buffer, 0xff, lfs->cfg->cache_size); in lfs_cache_zero()
24 pcache->block = LFS_BLOCK_NULL; in lfs_cache_zero()
32 if (block >= lfs->cfg->block_count || in lfs_bd_read()
33 off+size > lfs->cfg->block_size) { in lfs_bd_read()
40 if (pcache && block == pcache->block && in lfs_bd_read()
41 off < pcache->off + pcache->size) { in lfs_bd_read()
[all …]