Skip to content

Commit 969ce21

Browse files
author
CKI KWF Bot
committed
Merge: loop: fix backing file reference leak on validation error
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/1586 loop: fix backing file reference leak on validation error JIRA: https://issues.redhat.com/browse/RHEL-118049 Signed-off-by: Ming Lei <ming.lei@redhat.com> Approved-by: Jeff Moyer <jmoyer@redhat.com> Approved-by: Ewan D. Milne <emilne@redhat.com> Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2 parents 7db9f5d + bac1b8d commit 969ce21

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

drivers/block/loop.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -541,8 +541,10 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
541541
return -EBADF;
542542

543543
error = loop_check_backing_file(file);
544-
if (error)
544+
if (error) {
545+
fput(file);
545546
return error;
547+
}
546548

547549
/* suppress uevents while reconfiguring the device */
548550
dev_set_uevent_suppress(disk_to_dev(lo->lo_disk), 1);
@@ -983,8 +985,10 @@ static int loop_configure(struct loop_device *lo, blk_mode_t mode,
983985
return -EBADF;
984986

985987
error = loop_check_backing_file(file);
986-
if (error)
988+
if (error) {
989+
fput(file);
987990
return error;
991+
}
988992

989993
is_loop = is_loop_device(file);
990994

0 commit comments

Comments
 (0)