mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-04-03 03:38:01 +07:00
block: fix memory leak in bio_clone()
If bio_integrity_clone() fails, bio_clone() returns NULL without freeing the newly allocated bio. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
parent
87092698c6
commit
059ea3318c
4
fs/bio.c
4
fs/bio.c
@ -465,8 +465,10 @@ struct bio *bio_clone(struct bio *bio, gfp_t gfp_mask)
|
|||||||
|
|
||||||
ret = bio_integrity_clone(b, bio, gfp_mask, fs_bio_set);
|
ret = bio_integrity_clone(b, bio, gfp_mask, fs_bio_set);
|
||||||
|
|
||||||
if (ret < 0)
|
if (ret < 0) {
|
||||||
|
bio_put(b);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return b;
|
return b;
|
||||||
|
Loading…
Reference in New Issue
Block a user