Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

loop: add missing bd_abort_claiming in loop_set_status

Commit 08e136ebd193 ("loop: don't change loop device under exclusive
opener in loop_set_status") forgot to call bd_abort_claiming() when
mutex_lock_killable() failed.

Fixes: 08e136ebd193 ("loop: don't change loop device under exclusive opener in loop_set_status")
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Jens Axboe <axboe@kernel.dk>

authored by

Tetsuo Handa and committed by
Jens Axboe
2704024d 6acd4ac5

+3 -1
+3 -1
drivers/block/loop.c
··· 1245 1245 1246 1246 err = mutex_lock_killable(&lo->lo_mutex); 1247 1247 if (err) 1248 - return err; 1248 + goto out_abort_claiming; 1249 + 1249 1250 if (lo->lo_state != Lo_bound) { 1250 1251 err = -ENXIO; 1251 1252 goto out_unlock; ··· 1285 1284 } 1286 1285 out_unlock: 1287 1286 mutex_unlock(&lo->lo_mutex); 1287 + out_abort_claiming: 1288 1288 if (!(mode & BLK_OPEN_EXCL)) 1289 1289 bd_abort_claiming(bdev, loop_set_status); 1290 1290 out_reread_partitions: