diff options
author | Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> | 2018-08-07 23:01:06 -0700 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2018-08-08 11:55:49 +0200 |
commit | 1293477f4f324f9cf23a36f6cc0adc6801f1baac (patch) | |
tree | e7e7558e7d9c9d4675893cd12e1fc52d9851e326 /drivers/nvme | |
parent | 93045d5942da60801e71764597d448cf37a798c1 (diff) | |
download | op-kernel-dev-1293477f4f324f9cf23a36f6cc0adc6801f1baac.zip op-kernel-dev-1293477f4f324f9cf23a36f6cc0adc6801f1baac.tar.gz |
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 <chaitanya.kulkarni@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/nvme')
-rw-r--r-- | drivers/nvme/host/core.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 603fe59..dd8ec1d 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); } |