Hi Nic, Good to see you back! > On Oct 9, 2018, at 10:23 PM, Nicholas A. Bellinger <nab@xxxxxxxxxxxxxxx> wrote: > > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > Short of reverting commit 00d909a107 for v4.19, target-core needs a > wait_event_t marco can be executed using TASK_UNINTERRUPTIBLE to > function correctly with existing fabric drivers that expect to run > with signals pending during session shutdown and active se_cmd I/O > quiesce. > > The most notable is iscsi-target/iser-target, while ibmvscsi_tgt invokes > session shutdown logic from userspace via configfs attribute that could > also potentially have signals pending. > > So go ahead and introduce wait_event_lock_irq_timeout() to achieve this, > and update + rename __wait_event_lock_irq_timeout() to make it accept > 'state' as a parameter. > > Fixes: 00d909a107 ("scsi: target: Make the session shutdown code also wait for commands that are being aborted") > Cc: Bart Van Assche <bvanassche@xxxxxxx> > Cc: Mike Christie <mchristi@xxxxxxxxxx> > Cc: Hannes Reinecke <hare@xxxxxxxx> > Cc: Christoph Hellwig <hch@xxxxxx> > Cc: Sagi Grimberg <sagi@xxxxxxxxxxx> > Cc: Bryant G. Ly <bryantly@xxxxxxxxxxxxxxxxxx> > Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> > Tested-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > --- > include/linux/wait.h | 20 +++++++++++++++----- > 1 file changed, 15 insertions(+), 5 deletions(-) > > diff --git a/include/linux/wait.h b/include/linux/wait.h > index d9f131e..ed7c122 100644 > --- a/include/linux/wait.h > +++ b/include/linux/wait.h > @@ -1052,10 +1052,9 @@ void __wake_up_locked_key_bookmark(struct wait_queue_head *wq_head, > __ret; \ > }) > > I do not technically work for IBM anymore as of 3 weeks ago, but my new company is a partner… Anyways, IBM does invoke shutdown logic from userspace. Thanks for the patch! Reviewed-by: Bryant G. Ly <bly@xxxxxxxxxxxxxxxxxxxxx> -Bryant Ly