From: Chaitanya Kulkarni Date: Wed, 8 Aug 2018 06:01:06 +0000 (-0700) Subject: nvme: set gendisk read only based on nsattr X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=1293477f4f324f9cf23a36f6cc0adc6801f1baac;p=openwrt%2Fstaging%2Fblogic.git nvme: set gendisk read only based on nsattr NVMe 1.3 TP 4005 introduces new filed (NSATTR). This field indicates whether given namespace is write protected or not. This patch sets the gendisk associated with the namespace to read only based on the identify namespace nsattr field. Signed-off-by: Chaitanya Kulkarni Signed-off-by: Christoph Hellwig --- diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 603fe59756fb..dd8ec1dd9219 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -1484,6 +1484,12 @@ static void nvme_update_disk_info(struct gendisk *disk, set_capacity(disk, capacity); nvme_config_discard(ns); + + if (id->nsattr & (1 << 0)) + set_disk_ro(disk, true); + else + set_disk_ro(disk, false); + blk_mq_unfreeze_queue(disk->queue); }