Commit 0c284db7 authored by Keith Busch's avatar Keith Busch Committed by Jens Axboe
Browse files

nvme: check namespace head shared property



Reject a new shared namespace if a duplicate unshared namespace exists.

Signed-off-by: default avatarKeith Busch <kbusch@kernel.org>
Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 9ad1927a
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -3496,8 +3496,9 @@ static int nvme_init_ns_head(struct nvme_ns *ns, unsigned nsid,
			ret = PTR_ERR(head);
			goto out_unlock;
		}
		head->shared = is_shared;
	} else {
		if (!is_shared) {
		if (!is_shared || !head->shared) {
			dev_err(ctrl->device,
				"Duplicate unshared namespace %d\n",
					nsid);
+1 −0
Original line number Diff line number Diff line
@@ -352,6 +352,7 @@ struct nvme_ns_head {
	struct nvme_ns_ids	ids;
	struct list_head	entry;
	struct kref		ref;
	bool			shared;
	int			instance;
#ifdef CONFIG_NVME_MULTIPATH
	struct gendisk		*disk;