Commit e5d66a10 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Jens Axboe
Browse files

loop: don't allow deleting an unspecified loop device



Passing a negative index to loop_lookup while return any unbound device.
Doing that for a delete does not make much sense, so add check to
explicitly reject that case.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20210623145908.92973-8-hch@lst.de


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 18d1f200
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -2405,6 +2405,11 @@ static int loop_control_remove(int idx)
	struct loop_device *lo;
	int ret;

	if (idx < 0) {
		pr_warn("deleting an unspecified loop device is not supported.\n");
		return -EINVAL;
	}
		
	ret = mutex_lock_killable(&loop_ctl_mutex);
	if (ret)
		return ret;