[PATCH 3/4] nvme: don't allow userspace to set the Host Behavior Support feature
Christoph Hellwig
hch at lst.de
Wed Nov 16 05:01:03 PST 2022
This feature is used to tell the controller what features are supported
by the driver. We thus can't let userspace processes update it.
Signed-off-by: Christoph Hellwig <hch at lst.de>
---
drivers/nvme/host/ioctl.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/drivers/nvme/host/ioctl.c b/drivers/nvme/host/ioctl.c
index badbc55d29350..171c983191501 100644
--- a/drivers/nvme/host/ioctl.c
+++ b/drivers/nvme/host/ioctl.c
@@ -23,6 +23,20 @@ static int nvme_cmd_allowed(struct nvme_ns *ns, struct nvme_command *c,
return -EINVAL;
}
+ if (!ns) {
+ switch (c->common.opcode) {
+ case nvme_admin_set_features:
+ switch (c->features.opcode) {
+ case NVME_FEAT_HOST_BEHAVIOR:
+ dev_warn_ratelimited(ns->ctrl->device,
+ "rejecting Host Behavior support update by %s\n",
+ current->comm);
+ return -EINVAL;
+ }
+ break;
+ }
+ }
+
/*
* Allow privileged processes to pass through any other command.
*/
--
2.30.2
More information about the Linux-nvme
mailing list