linux/drivers/net/ethernet
Doron Tsur 9ef3ceb4e7 net/mlx5_core: Fix trimming down IRQ number
[ Upstream commit 0b6e26ce89 ]

With several ConnectX-4 cards installed on a server, one may receive
irqn > 255 from the kernel API, which we mistakenly trim to 8bit.

This causes EQ creation failure with the following stack trace:
[<ffffffff812a11f4>] dump_stack+0x48/0x64
[<ffffffff810ace21>] __setup_irq+0x3a1/0x4f0
[<ffffffff810ad7e0>] request_threaded_irq+0x120/0x180
[<ffffffffa0923660>] ? mlx5_eq_int+0x450/0x450 [mlx5_core]
[<ffffffffa0922f64>] mlx5_create_map_eq+0x1e4/0x2b0 [mlx5_core]
[<ffffffffa091de01>] alloc_comp_eqs+0xb1/0x180 [mlx5_core]
[<ffffffffa091ea99>] mlx5_dev_init+0x5e9/0x6e0 [mlx5_core]
[<ffffffffa091ec29>] init_one+0x99/0x1c0 [mlx5_core]
[<ffffffff812e2afc>] local_pci_probe+0x4c/0xa0

Fixing it by changing of the irqn type from u8 to unsigned int to
support values > 255

Fixes: 61d0e73e0a ('net/mlx5_core: Use the the real irqn in eq->irqn')
Reported-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Doron Tsur <doront@mellanox.com>
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2016-01-31 11:29:01 -08:00
..
3com 3c59x: Add BQL support for 3c59x ethernet driver. 2015-08-24 12:20:58 -07:00
8390 net: mac8390: Allow modular build 2015-09-29 21:11:12 -07:00
adaptec drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
adi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
aeroflex drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
agere drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
allwinner net: sun4i-emac: Properly free resources on probe failure and remove 2015-10-21 19:47:45 -07:00
alteon drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
altera net: eth: altera: Fix the initial device operstate 2015-09-09 12:10:15 -07:00
amd amd-xgbe: fix a couple timeout loops 2015-12-15 12:43:01 -05:00
apm drivers: net: xgene: fix Tx flow control 2015-12-17 15:45:53 -05:00
apple net: macmace: Allow modular build 2015-09-29 21:11:13 -07:00
arc net: arc: Fix module autoload for OF platform driver 2015-09-21 16:08:20 -07:00
atheros atl1c: Improve driver not to do order 4 GFP_ATOMIC allocation 2015-12-04 17:01:00 -05:00
aurora ethernet: aurora: AURORA_NB8800 should depend on HAS_DMA 2015-12-07 13:54:35 -05:00
broadcom bnx2x: Prevent FW assertion when using Vxlan 2015-12-18 16:34:32 -05:00
brocade bna: fix error handling 2015-09-29 13:49:53 -07:00
cadence net: macb: Add support for sgmii phy interface 2015-11-18 15:09:09 -05:00
calxeda ethernet: codespell comment spelling fixes 2015-03-08 22:54:22 -04:00
cavium net: thunderx: Correctly distinguish between VF and LMAC count 2015-12-08 22:44:55 -05:00
chelsio cxgb4: correctly handling failed allocation 2016-01-04 17:18:42 -05:00
cirrus drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
cisco enic: assign affinity hint to interrupts 2015-11-02 15:08:00 -05:00
davicom dm9000: fix a typo 2015-09-08 22:44:42 -07:00
dec net: tulip: turn compile-time warning into dev_warn() 2015-11-20 11:02:48 -05:00
dlink dl2k: Add support for IP1000A-based cards 2015-11-16 17:11:31 -05:00
emulex Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-31 14:40:43 -08:00
ezchip net: ezchip: fix address space confusion in nps_enet.c 2015-12-08 22:58:01 -05:00
faraday drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
freescale 82xx: FCC: Fixing a bug causing to FCC port lock-up 2015-12-16 18:32:35 -05:00
fujitsu drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
hisilicon net:hns: print MAC with %pM 2015-12-13 23:36:55 -05:00
hp drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
i825xx drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
ibm drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
intel i40e/i40evf: avoid mutex re-init 2015-12-03 13:43:06 -08:00
marvell net: mvpp2: fix refilling BM pools in RX path 2015-12-04 15:01:13 -05:00
mellanox net/mlx5_core: Fix trimming down IRQ number 2016-01-31 11:29:01 -08:00
micrel Merge remote-tracking branches 'spi/topic/omap-100k', 'spi/topic/omap-uwire', 'spi/topic/owner', 'spi/topic/pxa' and 'spi/topic/pxa2xx' into spi-next 2015-11-04 11:02:12 +00:00
microchip spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
moxa net: moxa: Fix module autoload for OF platform driver 2015-09-21 16:09:02 -07:00
myricom Minor merge needed, due to function move. 2015-07-01 10:49:25 -07:00
natsemi natsemi: add checks for dma mapping errors 2015-12-19 12:58:46 -05:00
neterion drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
nuvoton drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
nvidia forcedeth: fix unilateral interrupt disabling in netpoll path 2015-10-27 19:45:23 -07:00
nxp net: lpc_eth: remove irq > NR_IRQS check from probe() 2015-12-03 15:02:24 -05:00
octeon drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
oki-semi drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
packetengines drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
pasemi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
qlogic qlcnic: correctly handle qlcnic_alloc_mbx_args 2016-01-04 17:14:30 -05:00
qualcomm net: qca_spi: fix transmit queue timeout handling 2015-12-06 12:02:24 -05:00
rdc drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
realtek r8169: fix kasan reported skb use-after-free. 2015-11-12 13:51:01 -05:00
renesas sh_eth: fix 16-bit descriptor field access endianness too 2015-12-22 15:23:47 -05:00
rocker asm-generic cleanups 2015-11-06 14:22:15 -08:00
samsung ethernet: codespell comment spelling fixes 2015-03-08 22:54:22 -04:00
seeq drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
sfc sfc: fix a timeout loop 2015-12-15 12:46:26 -05:00
sgi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
silan drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
sis sis900: Trivial: Fix typos in enums 2015-06-29 12:52:06 -07:00
smsc net: smsc911x: Reset PHY during initialization 2015-11-16 14:43:14 -05:00
stmicro stmmac: dwmac-sunxi: Call exit cleanup function in probe error path 2015-12-14 16:11:59 -05:00
sun drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
synopsys dwc_eth_qos: Fix dma address for multi-fragment skbs 2016-01-31 11:29:00 -08:00
tehuti drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
ti drivers: net: cpsw: fix error return code 2015-12-29 15:31:10 -05:00
tile nohz: Prevent tilegx network driver interrupts 2015-07-29 15:44:59 +02:00
toshiba drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
tundra drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
via via-velocity: unconditionally drop frames with bad l2 length 2015-11-17 14:37:16 -05:00
wiznet drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
xilinx drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
xircom drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
xscale drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
dnet.c net: dnet: fix dnet_poll() 2015-01-11 21:44:55 -05:00
dnet.h dnet: Move the Dave Ethernet driver 2011-08-12 23:46:51 -07:00
ec_bhf.c net: ec_bhf: Use module_pci_driver 2015-07-08 16:04:06 -07:00
ethoc.c net/ethoc: support big-endian register layout 2015-09-23 15:33:15 -07:00
fealnx.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
jme.c net: jme: use kzalloc() instead of kmalloc+memset 2015-09-09 17:06:00 -07:00
jme.h jme: Remove unused #define PFX 2013-11-07 02:14:32 -05:00
Kconfig net: ethernet: add driver for Aurora VLSI NB8800 Ethernet controller 2015-11-20 11:47:02 -05:00
korina.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
lantiq_etop.c net: ethernet: drop owner assignment from platform_drivers 2014-10-20 16:21:02 +02:00
Makefile net: ethernet: add driver for Aurora VLSI NB8800 Ethernet controller 2015-11-20 11:47:02 -05:00
netx-eth.c net: ethernet: drop owner assignment from platform_drivers 2014-10-20 16:21:02 +02:00