Re: [Bluez-devel] [PATCH] bluetooth: Eliminate checks for impossible conditions in irq handler

Previous thread: [PATCH 1/3] parport: Consolidate code copies into a single generic irq handler by Jeff Garzik on Friday, October 19, 2007 - 12:29 am. (3 messages)

Next thread: [PATCH] Eliminate pointless casts from void* in a few driver irq handlers. by Jeff Garzik on Friday, October 19, 2007 - 12:31 am. (1 message)
From: Jeff Garzik
Date: Friday, October 19, 2007 - 12:31 am

commit 1c8073a42f133bf5780099c1e6efd9e48468cd29
Author: Jeff Garzik <jeff@garzik.org>
Date:   Fri Oct 19 03:07:30 2007 -0400

    [BLUETOOTH] Eliminate checks for impossible conditions in irq handler
    
    Our info structure and info->hdev is always passed to the irq handler,
    so we don't have to worry about these checks in every interrupt.
    
    Leave a BUG_ON() just to help unwary programmers, but these could
    probably be removed as well.
    
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

 drivers/bluetooth/bluecard_cs.c |    5 +----
 drivers/bluetooth/bt3c_cs.c     |    5 +----
 drivers/bluetooth/btuart_cs.c   |    5 +----
 drivers/bluetooth/dtl1_cs.c     |    5 +----
 4 files changed, 4 insertions(+), 16 deletions(-)

1c8073a42f133bf5780099c1e6efd9e48468cd29
diff --git a/drivers/bluetooth/bluecard_cs.c b/drivers/bluetooth/bluecard_cs.c
index 851de4d..bcf5792 100644
--- a/drivers/bluetooth/bluecard_cs.c
+++ b/drivers/bluetooth/bluecard_cs.c
@@ -503,10 +503,7 @@ static irqreturn_t bluecard_interrupt(int irq, void *dev_inst)
 	unsigned int iobase;
 	unsigned char reg;
 
-	if (!info || !info->hdev) {
-		BT_ERR("Call of irq %d for unknown device", irq);
-		return IRQ_NONE;
-	}
+	BUG_ON(!info->hdev);
 
 	if (!test_bit(CARD_READY, &(info->hw_state)))
 		return IRQ_HANDLED;
diff --git a/drivers/bluetooth/bt3c_cs.c b/drivers/bluetooth/bt3c_cs.c
index 3951607..a18f9b8 100644
--- a/drivers/bluetooth/bt3c_cs.c
+++ b/drivers/bluetooth/bt3c_cs.c
@@ -344,10 +344,7 @@ static irqreturn_t bt3c_interrupt(int irq, void *dev_inst)
 	unsigned int iobase;
 	int iir;
 
-	if (!info || !info->hdev) {
-		BT_ERR("Call of irq %d for unknown device", irq);
-		return IRQ_NONE;
-	}
+	BUG_ON(!info->hdev);
 
 	iobase = info->p_dev->io.BasePort1;
 
diff --git a/drivers/bluetooth/btuart_cs.c b/drivers/bluetooth/btuart_cs.c
index d7d2ea0..08f48d5 100644
--- a/drivers/bluetooth/btuart_cs.c
+++ b/drivers/bluetooth/btuart_cs.c
@@ -294,10 +294,7 @@ static irqreturn_t ...
From: Marcel Holtmann
Date: Saturday, October 20, 2007 - 6:52 am

applied to my tree. Thanks.

Regards

Marcel


-

Previous thread: [PATCH 1/3] parport: Consolidate code copies into a single generic irq handler by Jeff Garzik on Friday, October 19, 2007 - 12:29 am. (3 messages)

Next thread: [PATCH] Eliminate pointless casts from void* in a few driver irq handlers. by Jeff Garzik on Friday, October 19, 2007 - 12:31 am. (1 message)