diff options
author | Doron Tsur <doront@mellanox.com> | 2016-01-17 11:25:47 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-17 12:08:04 -0500 |
commit | 0b6e26ce89391327d955a756a7823272238eb867 (patch) | |
tree | d1f06474ae9397bd652e8ff75014620c3713aaa4 /net/sctp | |
parent | cdb00777ffadb15b06627dd6c3f716a02f6b36e8 (diff) | |
download | op-kernel-dev-0b6e26ce89391327d955a756a7823272238eb867.zip op-kernel-dev-0b6e26ce89391327d955a756a7823272238eb867.tar.gz |
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: 61d0e73e0a5a ('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>
Diffstat (limited to 'net/sctp')
0 files changed, 0 insertions, 0 deletions