lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 7 Jun 2016 09:18:21 -0500 From: Larry Finger <Larry.Finger@...inger.net> To: Catalin Marinas <catalin.marinas@....com>, Shaun Tancheff <shaun.tancheff@...gate.com> Cc: Christoph Hellwig <hch@....de>, linux-block@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>, Jens Axboe <axboe@...com>, bart.vanassche@...disk.com, drysdale@...gle.com Subject: Re: kmemleak report after 9082e87bfbf8 ("block: remove struct bio_batch") On 06/07/2016 04:39 AM, Catalin Marinas wrote: > On Mon, Jun 06, 2016 at 12:09:49PM -0500, Shaun Tancheff wrote: >> I'm pretty sure it is missing a bio_put() after submit_bio_wait(). >> >> Please excuse the hack-y patch but I think you need to do something >> like this ... >> (Note tabs eaten by gmail). >> >> diff --git a/block/blk-lib.c b/block/blk-lib.c >> index 23d7f30..9e29dc3 100644 >> --- a/block/blk-lib.c >> +++ b/block/blk-lib.c >> @@ -113,6 +113,7 @@ int blkdev_issue_discard(struct block_device >> *bdev, sector_t sector, >> ret = submit_bio_wait(type, bio); >> if (ret == -EOPNOTSUPP) >> ret = 0; >> + bio_put(bio); >> } >> blk_finish_plug(&plug); >> >> @@ -165,8 +166,10 @@ int blkdev_issue_write_same(struct block_device >> *bdev, sector_t sector, >> } >> } >> >> - if (bio) >> + if (bio) { >> ret = submit_bio_wait(REQ_WRITE | REQ_WRITE_SAME, bio); >> + bio_put(bio); >> + } >> return ret != -EOPNOTSUPP ? ret : 0; >> } >> EXPORT_SYMBOL(blkdev_issue_write_same); >> @@ -206,8 +209,11 @@ static int __blkdev_issue_zeroout(struct >> block_device *bdev, sector_t sector, >> } >> } >> >> - if (bio) >> - return submit_bio_wait(WRITE, bio); >> + if (bio) { >> + ret = submit_bio_wait(WRITE, bio); >> + bio_put(bio); >> + return ret; >> + } >> return 0; >> } > > This patch appears to fix the memory leak on my machine. > > Tested-by: Catalin Marinas <catalin.marinas@....com> The patch appears to work here as well. Tested-by: Larry Finger@...inger.net Thanks, Larry
Powered by blists - more mailing lists