X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fblock%2Floop.c;h=9c3b94e8f03baa7d4138802e01b87e27e511c159;hb=00e5edcbfdb7030f6cbb8d5d89fdc2848133a182;hp=74bf0255e98f44dd2cc405426254a6e9b744f19d;hpb=2e1ca21d46aaef95101723fa402f39d3a95aba59;p=linux-2.6 diff --git a/drivers/block/loop.c b/drivers/block/loop.c index 74bf0255e9..9c3b94e8f0 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c @@ -839,7 +839,9 @@ static int loop_set_fd(struct loop_device *lo, struct file *lo_file, set_blocksize(bdev, lo_blocksize); - kernel_thread(loop_thread, lo, CLONE_KERNEL); + error = kernel_thread(loop_thread, lo, CLONE_KERNEL); + if (error < 0) + goto out_putf; wait_for_completion(&lo->lo_done); return 0;