[PATCH 01/11] xfsprogs: xfs_io: fix a memory leak in imap_f
Eric Sandeen
sandeen at sandeen.net
Wed Dec 2 11:55:06 CST 2015
On 12/2/15 5:19 AM, Vivek Trivedi wrote:
> add NULL check for malloc return and free allocated memory in
> return path in imap_f
>
> Signed-off-by: Vivek Trivedi <t.vivek at samsung.com>
Reviewed-by: Eric Sandeen <sandeen at redhat.com>
> ---
> io/imap.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/io/imap.c b/io/imap.c
> index 34901cb..6ed98eb 100644
> --- a/io/imap.c
> +++ b/io/imap.c
> @@ -39,6 +39,8 @@ imap_f(int argc, char **argv)
> nent = atoi(argv[1]);
>
> t = malloc(nent * sizeof(*t));
> + if (!t)
> + return 0;
>
> bulkreq.lastip = &last;
> bulkreq.icount = nent;
> @@ -46,8 +48,10 @@ imap_f(int argc, char **argv)
> bulkreq.ocount = &count;
>
> while (xfsctl(file->name, file->fd, XFS_IOC_FSINUMBERS, &bulkreq) == 0) {
> - if (count == 0)
> + if (count == 0) {
> + free(t);
> return 0;
> + }
> for (i = 0; i < count; i++) {
> printf(_("ino %10llu count %2d mask %016llx\n"),
> (unsigned long long)t[i].xi_startino,
> @@ -55,6 +59,7 @@ imap_f(int argc, char **argv)
> (unsigned long long)t[i].xi_allocmask);
> }
> }
> + free(t);
> perror("xfsctl(XFS_IOC_FSINUMBERS)");
> exitcode = 1;
> return 0;
>
More information about the xfs
mailing list