]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
fs: fat: Reduce default max clustersize 64KiB from malloc pool
authorTien Fong Chee <tien.fong.chee@intel.com>
Mon, 11 Feb 2019 06:56:20 +0000 (14:56 +0800)
committerTom Rini <trini@konsulko.com>
Tue, 19 Feb 2019 13:55:43 +0000 (08:55 -0500)
Release cluster block immediately when no longer use would help to reduce
64KiB memory allocated to the memory pool.

Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com>
fs/fat/fat.c

index f593e989ff0628a3fd63cc3186f1f8d5d681357c..6ade4ea54ecd8e227196c13c73e077863801828a 100644 (file)
@@ -1148,7 +1148,15 @@ int file_fat_read_at(const char *filename, loff_t pos, void *buffer,
                goto out_free_both;
 
        debug("reading %s at pos %llu\n", filename, pos);
-       ret = get_contents(&fsdata, itr->dent, pos, buffer, maxsize, actread);
+
+       /* For saving default max clustersize memory allocated to malloc pool */
+       dir_entry *dentptr = itr->dent;
+
+       free(itr);
+
+       itr = NULL;
+
+       ret = get_contents(&fsdata, dentptr, pos, buffer, maxsize, actread);
 
 out_free_both:
        free(fsdata.fatbuf);