Message ID | 20191009192530.13079-4-logang@deltatee.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | nvmet: add target passthru commands support | expand |
On Wed, Oct 09, 2019 at 01:25:20PM -0600, Logan Gunthorpe wrote: > From: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> > > Change the return value for nvmet_add_async_event(). > > This change is needed for the target passthru code which will > submit async events on namespaces changes and can fail the command > should adding the event fail (on -ENOMEM). > > Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> > [logang@deltatee.com: > * fleshed out commit message > * change to using int as a return type instead of bool > ] > Signed-off-by: Logan Gunthorpe <logang@deltatee.com> > Reviewed-by: Sagi Grimberg <sagi@grimberg.me> > --- Looks fine, but let's remove the version comments out of commit log if we're applying this one. Reviewed-by: Keith Busch <kbusch@kernel.org> > drivers/nvme/target/core.c | 6 ++++-- > drivers/nvme/target/nvmet.h | 2 +- > 2 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/nvme/target/core.c b/drivers/nvme/target/core.c > index 3a67e244e568..d6dcb86d8be7 100644 > --- a/drivers/nvme/target/core.c > +++ b/drivers/nvme/target/core.c > @@ -173,14 +173,14 @@ static void nvmet_async_event_work(struct work_struct *work) > } > } > > -void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, > +int nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, > u8 event_info, u8 log_page) > { > struct nvmet_async_event *aen; > > aen = kmalloc(sizeof(*aen), GFP_KERNEL); > if (!aen) > - return; > + return -ENOMEM; > > aen->event_type = event_type; > aen->event_info = event_info; > @@ -191,6 +191,8 @@ void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, > mutex_unlock(&ctrl->lock); > > schedule_work(&ctrl->async_event_work); > + > + return 0; > } > > static void nvmet_add_to_changed_ns_log(struct nvmet_ctrl *ctrl, __le32 nsid) > diff --git a/drivers/nvme/target/nvmet.h b/drivers/nvme/target/nvmet.h > index c51f8dd01dc4..3d313a6452cc 100644 > --- a/drivers/nvme/target/nvmet.h > +++ b/drivers/nvme/target/nvmet.h > @@ -441,7 +441,7 @@ void nvmet_port_disc_changed(struct nvmet_port *port, > struct nvmet_subsys *subsys); > void nvmet_subsys_disc_changed(struct nvmet_subsys *subsys, > struct nvmet_host *host); > -void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, > +int nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, > u8 event_info, u8 log_page); > > #define NVMET_QUEUE_SIZE 1024 > -- > 2.20.1 >
diff --git a/drivers/nvme/target/core.c b/drivers/nvme/target/core.c index 3a67e244e568..d6dcb86d8be7 100644 --- a/drivers/nvme/target/core.c +++ b/drivers/nvme/target/core.c @@ -173,14 +173,14 @@ static void nvmet_async_event_work(struct work_struct *work) } } -void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, +int nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, u8 event_info, u8 log_page) { struct nvmet_async_event *aen; aen = kmalloc(sizeof(*aen), GFP_KERNEL); if (!aen) - return; + return -ENOMEM; aen->event_type = event_type; aen->event_info = event_info; @@ -191,6 +191,8 @@ void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, mutex_unlock(&ctrl->lock); schedule_work(&ctrl->async_event_work); + + return 0; } static void nvmet_add_to_changed_ns_log(struct nvmet_ctrl *ctrl, __le32 nsid) diff --git a/drivers/nvme/target/nvmet.h b/drivers/nvme/target/nvmet.h index c51f8dd01dc4..3d313a6452cc 100644 --- a/drivers/nvme/target/nvmet.h +++ b/drivers/nvme/target/nvmet.h @@ -441,7 +441,7 @@ void nvmet_port_disc_changed(struct nvmet_port *port, struct nvmet_subsys *subsys); void nvmet_subsys_disc_changed(struct nvmet_subsys *subsys, struct nvmet_host *host); -void nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, +int nvmet_add_async_event(struct nvmet_ctrl *ctrl, u8 event_type, u8 event_info, u8 log_page); #define NVMET_QUEUE_SIZE 1024