diff options
Diffstat (limited to 'src/kernel/core.c')
-rw-r--r-- | src/kernel/core.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/kernel/core.c b/src/kernel/core.c index f4b7204..7e985f7 100644 --- a/src/kernel/core.c +++ b/src/kernel/core.c @@ -192,17 +192,12 @@ static void dnbd3_blk_fail_all_requests(dnbd3_device *dev) static int dnbd3_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd, unsigned long arg) { - int result = -100; + int result = -EIO; dnbd3_device *dev = bdev->bd_disk->private_data; char *imgname = NULL; dnbd3_ioctl_t *msg = NULL; printk(KERN_DEBUG "dnbd3: ioctl device %i, cmd %i, arg %lu\n", dev->minor, cmd, arg); - //unsigned long irqflags; - -// while (dev->disconnecting) { -// // do nothing -// } if (arg != 0) { msg = kmalloc(sizeof(*msg), GFP_KERNEL); @@ -271,7 +266,7 @@ static int dnbd3_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd case IOCTL_CLOSE: printk(KERN_DEBUG "dnbd3: ioctl close\n"); dnbd3_blk_fail_all_requests(dev); - dnbd3_net_disconnect(dev); + result = dnbd3_net_disconnect(dev); dnbd3_blk_fail_all_requests(dev); set_capacity(dev->disk, 0); if (dev->imgname) { |