在16MB的nor flash移植了littlefs2.11.1,文件系统操作读写、删除都没有问题,间隔500ms循环写1K数据到同一个文件中,几分钟之后会出现写入失败,错误码为-84,
部分日志如下:可以看到nhead:-134279184异常导致写失败
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:-1, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:4, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:0, skips:5, nhead:2815
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:8, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:1, skips:5, nhead:2740
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:12, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:2, skips:5, nhead:2734
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:16, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:3, skips:5, nhead:-134279184
LFS_INFO:lfs_bd_read 51, off:12, size:4, block_size:4096, block_count:3584, block:-134279184
LFS_INFO:lfs_ctz_extend 3006
LFS_INFO:lfs_file_flushedwrite 3632
LFS_INFO:lfs_file_write -> -84
参数配置如下:
// 设备参数
cfg->read_size = 256;
cfg->prog_size = 256;
cfg->block_size = 4096;
cfg->block_count = 16M/cfg->block_size;
cfg->block_cycles = 800;
cfg->cache_size = 4096;
cfg->lookahead_size = 512;
cfg->read_buffer = NULL;
cfg->prog_buffer = NULL;
cfg->lookahead_buffer = NULL;
在16MB的nor flash移植了littlefs2.11.1,文件系统操作读写、删除都没有问题,间隔500ms循环写1K数据到同一个文件中,几分钟之后会出现写入失败,错误码为-84,
部分日志如下:可以看到nhead:-134279184异常导致写失败
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:-1, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:4, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:0, skips:5, nhead:2815
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:8, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:1, skips:5, nhead:2740
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:12, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:2, skips:5, nhead:2734
LFS_INFO:lfs_bd_prog 237, block:2816, pcache->block:2816, pcache->off:0, lfs->cfg->cache_size:4096
LFS_INFO:lfs_bd_prog 251, data:239, off:16, size:0, diff:4
LFS_INFO:lfs_ctz_extend 2999, i:3, skips:5, nhead:-134279184
LFS_INFO:lfs_bd_read 51, off:12, size:4, block_size:4096, block_count:3584, block:-134279184
LFS_INFO:lfs_ctz_extend 3006
LFS_INFO:lfs_file_flushedwrite 3632
LFS_INFO:lfs_file_write -> -84
参数配置如下:
// 设备参数
cfg->read_size = 256;
cfg->prog_size = 256;
cfg->block_size = 4096;
cfg->block_count = 16M/cfg->block_size;
cfg->block_cycles = 800;
cfg->cache_size = 4096;
cfg->lookahead_size = 512;
cfg->read_buffer = NULL;
cfg->prog_buffer = NULL;
cfg->lookahead_buffer = NULL;