Browse Source

Merge pull request #1110 from Ryan-CW-Code/perf_gc

perf: gc might try to populate the lookahead buffer each time
Christopher Haster 5 months ago
parent
commit
8e251dd675
1 changed files with 3 additions and 1 deletions
  1. 3 1
      lfs.c

+ 3 - 1
lfs.c

@@ -5222,7 +5222,9 @@ static int lfs_fs_gc_(lfs_t *lfs) {
     }
 
     // try to populate the lookahead buffer, unless it's already full
-    if (lfs->lookahead.size < 8*lfs->cfg->lookahead_size) {
+    if (lfs->lookahead.size < lfs_min(
+            8 * lfs->cfg->lookahead_size,
+            lfs->block_count)) {
         err = lfs_alloc_scan(lfs);
         if (err) {
             return err;