[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <51F8E0BF.3040606@cn.fujitsu.com>
Date: Wed, 31 Jul 2013 18:02:39 +0800
From: Gu Zheng <guz.fnst@...fujitsu.com>
To: Al Viro <viro@...iv.linux.org.uk>
CC: linux-fsdevel <linux-fsdevel@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
Jens <axboe@...nel.dk>, Kent <kmo@...erainc.com>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH RESEND] fs/bio-integrity: fix a potential mem leak
cc akpm
On 07/29/2013 09:49 AM, Gu Zheng wrote:
> Free the bio_integrity_pool in the fail path of biovec_create_pool
> in function bioset_integrity_create().
>
> Signed-off-by: Gu Zheng <guz.fnst@...fujitsu.com>
> ---
> fs/bio-integrity.c | 9 +++++----
> 1 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/fs/bio-integrity.c b/fs/bio-integrity.c
> index 8fb4291..6025084 100644
> --- a/fs/bio-integrity.c
> +++ b/fs/bio-integrity.c
> @@ -716,13 +716,14 @@ int bioset_integrity_create(struct bio_set *bs, int pool_size)
> return 0;
>
> bs->bio_integrity_pool = mempool_create_slab_pool(pool_size, bip_slab);
> -
> - bs->bvec_integrity_pool = biovec_create_pool(bs, pool_size);
> - if (!bs->bvec_integrity_pool)
> + if (!bs->bio_integrity_pool)
> return -1;
>
> - if (!bs->bio_integrity_pool)
> + bs->bvec_integrity_pool = biovec_create_pool(bs, pool_size);
> + if (!bs->bvec_integrity_pool) {
> + mempool_destroy(bs->bio_integrity_pool);
> return -1;
> + }
>
> return 0;
> }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists