OSDN Git Service

orinoco: Remove BUG_ON(in_interrupt/irq())
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Sun, 1 Nov 2020 21:15:29 +0000 (22:15 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Sat, 7 Nov 2020 15:52:16 +0000 (17:52 +0200)
The usage of in_irq()/in_interrupt() in drivers is phased out and the
BUG_ON()'s based on those are not covering all contexts in which these
functions cannot be called.

Aside of that BUG_ON() should only be used as last resort, which is clearly
not the case here.

A broad variety of checks in the invoked functions (always enabled or debug
option dependent) cover these conditions already, so the BUG_ON()'s do not
really provide additional value.

Just remove them.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: linux-wireless@vger.kernel.org
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20201101211536.2966644-2-bigeasy@linutronix.de
drivers/net/wireless/intersil/orinoco/orinoco_usb.c

index b849d27..046f245 100644 (file)
@@ -859,8 +859,6 @@ static int ezusb_access_ltv(struct ezusb_priv *upriv,
        int retval = 0;
        enum ezusb_state state;
 
-       BUG_ON(in_irq());
-
        if (!upriv->udev) {
                retval = -ENODEV;
                goto exit;
@@ -1349,7 +1347,6 @@ static int ezusb_init(struct hermes *hw)
        struct ezusb_priv *upriv = hw->priv;
        int retval;
 
-       BUG_ON(in_interrupt());
        if (!upriv)
                return -EINVAL;
 
@@ -1448,7 +1445,6 @@ static inline void ezusb_delete(struct ezusb_priv *upriv)
        struct list_head *tmp_item;
        unsigned long flags;
 
-       BUG_ON(in_interrupt());
        BUG_ON(!upriv);
 
        mutex_lock(&upriv->mtx);