diff mbox series

[1/8] orinoco: Remove BUG_ON(in_interrupt/irq())

Message ID 20201101211536.2966644-2-bigeasy@linutronix.de (mailing list archive)
State Accepted
Commit ce4dd05cbba697c748d9b665bd05467910318811
Delegated to: Kalle Valo
Headers show
Series [1/8] orinoco: Remove BUG_ON(in_interrupt/irq()) | expand

Commit Message

Sebastian Andrzej Siewior Nov. 1, 2020, 9:15 p.m. UTC
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
---
 drivers/net/wireless/intersil/orinoco/orinoco_usb.c | 4 ----
 1 file changed, 4 deletions(-)

Comments

Kalle Valo Nov. 7, 2020, 3:52 p.m. UTC | #1
Sebastian Andrzej Siewior <bigeasy@linutronix.de> wrote:

> 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

8 patches applied to wireless-drivers-next.git, thanks.

ce4dd05cbba6 orinoco: Remove BUG_ON(in_interrupt/irq())
24bf941f2c96 airo: Invoke airo_read_wireless_stats() directly
49eb01995285 airo: Always use JOB_STATS and JOB_EVENT
494e46d08d35 airo: Replace in_atomic() usage.
7534fd5e5834 hostap: Remove in_atomic() check.
abcda807d868 zd1211rw: Remove in_atomic() usage.
317f688b0a54 rtlwifi: Remove in_interrupt() usage in is_any_client_connect_to_ap().
50c61ae15865 rtlwifi: Remove in_interrupt() usage in halbtc_send_bt_mp_operation()
diff mbox series

Patch

diff --git a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c
index b849d27bd741e..046f2453ad5d9 100644
--- a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c
+++ b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c
@@ -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);