From: Michael S. Tsirkin Date: Mon, 26 Sep 2005 16:29:33 +0000 (-0700) Subject: [IB] mthca: fix off by one in clr_int calculation X-Git-Tag: v2.6.14-rc3~76^2~4 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=f7ed3a5971da98acdc506bdbdef25cfe51c334a2;p=linux-2.6-omap-h63xx.git [IB] mthca: fix off by one in clr_int calculation We should use the first word of the clear interrupt register if the bit we're after is < 32, not < 31. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier --- diff --git a/drivers/infiniband/hw/mthca/mthca_eq.c b/drivers/infiniband/hw/mthca/mthca_eq.c index 78152a8ad17..c81fa8e975e 100644 --- a/drivers/infiniband/hw/mthca/mthca_eq.c +++ b/drivers/infiniband/hw/mthca/mthca_eq.c @@ -836,7 +836,7 @@ int __devinit mthca_init_eq_table(struct mthca_dev *dev) dev->eq_table.clr_mask = swab32(1 << (dev->eq_table.inta_pin & 31)); dev->eq_table.clr_int = dev->clr_base + - (dev->eq_table.inta_pin < 31 ? 4 : 0); + (dev->eq_table.inta_pin < 32 ? 4 : 0); } dev->eq_table.arm_mask = 0;