Re: [patch 12/35] net: ionic: Remove WARN_ON(in_interrupt()).

From: Shannon Nelson
Date: Mon Sep 28 2020 - 13:26:19 EST


On 9/27/20 12:48 PM, Thomas Gleixner wrote:
From: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>

in_interrupt() 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 the functions which are invoked from ionic_adminq_post() and
ionic_dev_cmd_wait() contain a broad variety of checks (always enabled or
debug option dependent) which cover all invalid conditions already, there
is no point in having inconsistent warnings in those drivers.

Just remove them.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: Shannon Nelson <snelson@xxxxxxxxxxx>
Cc: Pensando Drivers <drivers@xxxxxxxxxxx>
Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
Cc: netdev@xxxxxxxxxxxxxxx
Thanks.

Acked-by: Shannon Nelson <snelson@xxxxxxxxxxx>

---
drivers/net/ethernet/pensando/ionic/ionic_main.c | 4 ----
1 file changed, 4 deletions(-)

--- a/drivers/net/ethernet/pensando/ionic/ionic_main.c
+++ b/drivers/net/ethernet/pensando/ionic/ionic_main.c
@@ -248,8 +248,6 @@ static int ionic_adminq_post(struct ioni
struct ionic_queue *adminq;
int err = 0;
- WARN_ON(in_interrupt());
-
if (!lif->adminqcq)
return -EIO;
@@ -346,8 +344,6 @@ int ionic_dev_cmd_wait(struct ionic *ion
int done;
int err;
- WARN_ON(in_interrupt());
-
/* Wait for dev cmd to complete, retrying if we get EAGAIN,
* but don't wait any longer than max_seconds.
*/