From: Paolo Bonzini Date: Thu, 28 Feb 2013 01:05:26 +0000 (-0800) Subject: nbd: show read-only state in sysfs X-Git-Tag: v3.9-rc1~46^2~24 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a83e814b5bb948850e903585d18b6298b7093cb2;p=profile%2Fivi%2Fkernel-x86-ivi.git nbd: show read-only state in sysfs Pass the read-only flag to set_device_ro, so that it will be visible to the block layer and in sysfs. Signed-off-by: Paolo Bonzini Cc: Paul Clements Cc: Alex Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 869861a..52003d7 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -703,6 +703,8 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd, mutex_unlock(&nbd->tx_lock); + if (nbd->flags & NBD_FLAG_READ_ONLY) + set_device_ro(bdev, true); if (nbd->flags & NBD_FLAG_SEND_TRIM) queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, nbd->disk->queue); @@ -730,6 +732,7 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd, dev_warn(disk_to_dev(nbd->disk), "queue cleared\n"); kill_bdev(bdev); queue_flag_clear_unlocked(QUEUE_FLAG_DISCARD, nbd->disk->queue); + set_device_ro(bdev, false); if (file) fput(file); nbd->flags = 0;