diff options
author | Ahmed S. Darwish <a.darwish@linutronix.de> | 2020-11-26 14:29:43 +0100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2020-12-01 00:03:52 -0500 |
commit | 9fef41f25d60d3cb22ee81d5d92cdea99a1b35ea (patch) | |
tree | 2a767e622154c665a3a6543ac3720d98b8e52e72 /drivers | |
parent | 8ac246bdd07a0f948f0e33eb4797bd2645cd8224 (diff) | |
download | linux-9fef41f25d60d3cb22ee81d5d92cdea99a1b35ea.tar.bz2 |
scsi: target: tcm_qla2xxx: Remove BUG_ON(in_interrupt())
tcm_qla2xxx_free_session() has a BUG_ON(in_interrupt()).
While in_interrupt() is ill-defined and does not provide what the name
suggests, it is not needed here: the function is always invoked from
workqueue context through "struct qla_tgt_func_tmpl" ->free_session() hook
it is bound to.
The function also calls wait_event_timeout() down the chain, which already
has a might_sleep().
Remove the in_interrupt() check.
Link: https://lore.kernel.org/r/20201126132952.2287996-6-bigeasy@linutronix.de
Cc: Nilesh Javali <njavali@marvell.com>
Cc: <GR-QLogic-Storage-Upstream@marvell.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/scsi/qla2xxx/tcm_qla2xxx.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/scsi/qla2xxx/tcm_qla2xxx.c b/drivers/scsi/qla2xxx/tcm_qla2xxx.c index 784b43f18181..b55fc768a2a7 100644 --- a/drivers/scsi/qla2xxx/tcm_qla2xxx.c +++ b/drivers/scsi/qla2xxx/tcm_qla2xxx.c @@ -1400,8 +1400,6 @@ static void tcm_qla2xxx_free_session(struct fc_port *sess) struct se_session *se_sess; struct tcm_qla2xxx_lport *lport; - BUG_ON(in_interrupt()); - se_sess = sess->se_sess; if (!se_sess) { pr_err("struct fc_port->se_sess is NULL\n"); |