OpenCloudOS-Kernel/include/linux/mlx5
Doron Tsur 0b6e26ce89 net/mlx5_core: Fix trimming down IRQ number
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>
2016-01-17 12:08:04 -05:00
..
cmd.h net/mlx5_core: Fix Mellanox copyright note 2015-04-02 16:33:42 -04:00
cq.h net/mlx5_core: Fix trimming down IRQ number 2016-01-17 12:08:04 -05:00
device.h net/mlx5_core: Enable flow steering support for the IB driver 2016-01-11 17:48:53 -05:00
doorbell.h net/mlx5_core: Fix Mellanox copyright note 2015-04-02 16:33:42 -04:00
driver.h net/mlx5_core: Fix trimming down IRQ number 2016-01-17 12:08:04 -05:00
fs.h IB/mlx5: Add flow steering support 2016-01-11 17:48:53 -05:00
mlx5_ifc.h net/mlx5_core: Make ipv4/ipv6 location more clear 2016-01-11 17:48:53 -05:00
qp.h net/mlx5_core: HW data structs/types definitions cleanup 2015-05-30 18:23:11 -07:00
srq.h net/mlx5_core: Fix Mellanox copyright note 2015-04-02 16:33:42 -04:00
vport.h net/mlx5: Introduce access functions to modify/query vport vlans 2015-12-03 12:08:45 -05:00