On Wed, Oct 09, 2019 at 01:25:20PM -0600, Logan Gunthorpe wrote: > From: Chaitanya Kulkarni <chaitanya.kulkarni@xxxxxxx> > > 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@xxxxxxx> > [logang@xxxxxxxxxxxx: > * fleshed out commit message > * change to using int as a return type instead of bool > ] > Signed-off-by: Logan Gunthorpe <logang@xxxxxxxxxxxx> > Reviewed-by: Sagi Grimberg <sagi@xxxxxxxxxxx> > --- Looks fine, but let's remove the version comments out of commit log if we're applying this one. Reviewed-by: Keith Busch <kbusch@xxxxxxxxxx> > 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 >