[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 6/9] nvmet: add a "parse_extra_admin_cmd" hook
From: |
Ming Lin |
Subject: |
[Qemu-devel] [RFC PATCH 6/9] nvmet: add a "parse_extra_admin_cmd" hook |
Date: |
Thu, 19 Nov 2015 16:21:05 -0800 |
From: Ming Lin <address@hidden>
This is used to execute controller specific cmd parse code
Signed-off-by: Ming Lin <address@hidden>
---
drivers/nvme/target/admin-cmd.c | 7 +++++++
drivers/nvme/target/nvmet.h | 3 +++
2 files changed, 10 insertions(+)
diff --git a/drivers/nvme/target/admin-cmd.c b/drivers/nvme/target/admin-cmd.c
index d9db0d4..f009c77 100644
--- a/drivers/nvme/target/admin-cmd.c
+++ b/drivers/nvme/target/admin-cmd.c
@@ -346,6 +346,13 @@ int nvmet_parse_admin_cmd(struct nvmet_req *req)
req->data = 0;
return 0;
#endif
+ default:
+ if (req->sq->ctrl->parse_extra_admin_cmd) {
+ int ret = req->sq->ctrl->parse_extra_admin_cmd(req);
+
+ if (!ret)
+ return 0;
+ }
}
pr_err("nvmet: unhandled cmd %d\n", cmd->common.opcode);
diff --git a/drivers/nvme/target/nvmet.h b/drivers/nvme/target/nvmet.h
index eac008b..ef79813 100644
--- a/drivers/nvme/target/nvmet.h
+++ b/drivers/nvme/target/nvmet.h
@@ -44,6 +44,8 @@ struct nvmet_sq {
u16 size;
};
+struct nvmet_req;
+
struct nvmet_ctrl {
struct nvmet_subsys *subsys;
struct nvmet_cq **cqs;
@@ -62,6 +64,7 @@ struct nvmet_ctrl {
void *opaque;
void (*start)(void *);
+ int (*parse_extra_admin_cmd)(struct nvmet_req *);
};
struct nvmet_subsys {
--
1.9.1
- [Qemu-devel] [RFC PATCH 0/9] vhost-nvme: new qemu nvme backend using nvme target, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 2/9] nvme-vhost: add basic ioctl handlers, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 4/9] nvmet: add a controller "start" hook, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 1/9] nvme-vhost: add initial commit, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 5/9] nvme-vhost: add controller "start" callback, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 3/9] nvme-vhost: add basic nvme bar read/write, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 7/9] nvme-vhost: add "parse_extra_admin_cmd" callback, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 6/9] nvmet: add a "parse_extra_admin_cmd" hook,
Ming Lin <=
- [Qemu-devel] [RFC PATCH 8/9] nvme-vhost: add vhost memory helpers, Ming Lin, 2015/11/19
- [Qemu-devel] [RFC PATCH 9/9] nvme-vhost: add nvme queue handlers, Ming Lin, 2015/11/19
- Re: [Qemu-devel] [RFC PATCH 0/9] vhost-nvme: new qemu nvme backend using nvme target, Christoph Hellwig, 2015/11/20
- Re: [Qemu-devel] [RFC PATCH 0/9] vhost-nvme: new qemu nvme backend using nvme target, Paolo Bonzini, 2015/11/21