[U-Boot] [PATCH v2 2/2] fs: fat: Reduce default max clustersize 64KiB from malloc pool
Chee, Tien Fong
tien.fong.chee at intel.com
Fri Feb 1 03:52:09 UTC 2019
On Thu, 2019-01-31 at 15:23 +0100, Marek Vasut wrote:
> On 1/31/19 1:42 PM, tien.fong.chee at intel.com wrote:
> >
> > From: Tien Fong Chee <tien.fong.chee at intel.com>
> >
> > 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 at intel.com>
> >
> > ---
> >
> > changes for v2
> > - Assigned NULL to itr after free.
> > - Added NULL checking to itr, avoid freeing twice.
> > ---
> > fs/fat/fat.c | 13 +++++++++++--
> > 1 file changed, 11 insertions(+), 2 deletions(-)
> >
> > diff --git a/fs/fat/fat.c b/fs/fat/fat.c
> > index 347787e..fa846ff 100644
> > --- a/fs/fat/fat.c
> > +++ b/fs/fat/fat.c
> > @@ -1152,12 +1152,21 @@ 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);
> > out_free_itr:
> > - free(itr);
> > + if (itr)
> > + free(itr);
> free(NULL) is valid, so you can drop the if conditional.
Noted.
>
> >
> > return ret;
> > }
> >
> >
>
More information about the U-Boot
mailing list