block: fix memory leak in bio_clone()
Changes
1 files changed · +3 −1
fs/bio.c
View filediff --git a/fs/bio.c b/fs/bio.c
index cf74737..d4f0632 100644
--- a/fs/bio.c
+++ b/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);
- if (ret < 0)
+ if (ret < 0) {
+ bio_put(b);
return NULL;
+ }
}
return b;