scsi: myrs: Remove WARN_ON(in_interrupt())
authorAhmed S. Darwish <a.darwish@linutronix.de>
Thu, 26 Nov 2020 13:29:49 +0000 (14:29 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 1 Dec 2020 05:03:53 +0000 (00:03 -0500)
The in_interrupt() macro is ill-defined and does not provide what the name
suggests. The usage especially in driver code is deprecated and a tree-wide
effort to clean up and consolidate the (ab)usage of in_interrupt() and
related checks is happening.

In this case the check covers only parts of the contexts in which these
functions cannot be called. It fails to detect preemption or interrupt
disabled invocations.

As wait_for_completion() already contains a broad variety of checks (always
enabled or debug option dependent) which cover all invalid conditions
already, there is no point in having extra inconsistent warnings in
drivers.

Just remove it.

Link: https://lore.kernel.org/r/20201126132952.2287996-12-bigeasy@linutronix.de
Cc: Hannes Reinecke <hare@kernel.org>
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>
drivers/scsi/myrs.c

index 7a3ade7..4adf9de 100644 (file)
@@ -136,7 +136,6 @@ static void myrs_exec_cmd(struct myrs_hba *cs,
        myrs_qcmd(cs, cmd_blk);
        spin_unlock_irqrestore(&cs->queue_lock, flags);
 
-       WARN_ON(in_interrupt());
        wait_for_completion(&complete);
 }