[U-Boot] ubifs: memory possibly not freed
Renaud Barbier
renaud.barbier at ge.com
Fri Sep 30 18:42:52 CEST 2011
Looking at the function ubifs_finddir in the file fs/ubifs/ubifs.c,
I was wondering if some memory had not been freed before
the function returns.
287 static int ubifs_finddir(struct super_block *sb, char *dirname,
288 unsigned long root_inum, unsigned long *inum)
289 {
...
299 file = kzalloc(sizeof(struct file), 0);
300 dentry = kzalloc(sizeof(struct dentry), 0);
301 dir = kzalloc(sizeof(struct inode), 0);
....
336 if ((strncmp(dirname, (char *)dent->name, nm.len) ==
0) &&
337 (strlen(dirname) == nm.len)) {
338 *inum = le64_to_cpu(dent->inum);
339 return 1;
340 }
Line 339 returns without freeing file, dentry and dir.
Maybe wrong but could somebody check that.
More information about the U-Boot
mailing list