Messages in this thread Patch in this message | | | Date | Thu, 22 Jun 2006 23:43:05 -0400 | From | Florin Malita <> | Subject | [PATCH] jffs2: potential memory leaks in jffs2_scan_medium() |
| |
This patch deals with 3 return paths that fail to perform proper cleanup (which can result into leaking 'flashbuf' and/or 's').
Coverity IDs: 676, 1301
Signed-off-by: Florin Malita <fmalita@gmail.com> ---
fs/jffs2/scan.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/jffs2/scan.c b/fs/jffs2/scan.c index 6161808..4a068de 100644 --- a/fs/jffs2/scan.c +++ b/fs/jffs2/scan.c @@ -128,12 +128,12 @@ #endif } if (jffs2_sum_active()) { - s = kmalloc(sizeof(struct jffs2_summary), GFP_KERNEL); + s = kzalloc(sizeof(struct jffs2_summary), GFP_KERNEL); if (!s) { JFFS2_WARNING("Can't allocate memory for summary\n"); - return -ENOMEM; + ret = -ENOMEM; + goto out; } - memset(s, 0, sizeof(struct jffs2_summary)); } for (i=0; i<c->nr_blocks; i++) { @@ -194,7 +194,7 @@ #endif if (c->nextblock) { ret = file_dirty(c, c->nextblock); if (ret) - return ret; + goto out; /* deleting summary information of the old nextblock */ jffs2_sum_reset_collected(c->summary); } @@ -205,7 +205,7 @@ #endif } else { ret = file_dirty(c, jeb); if (ret) - return ret; + goto out; } break;
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |