net: alx: handle pci_alloc_irq_vectors return correctly
It was introduced while switching to pci_alloc_irq_vectors recently
and fixes:
[ 60.527052] alx 0000:03:00.0 enp3s0: Enabling MSI-X interrupts failed!
[ 60.529323] BUG: unable to handle kernel NULL pointer dereference at
00000000000000b8
[ 60.531589] IP: alx_alloc_napis+0xe6/0x1e0 [alx]
[ 60.533831] PGD 0
[ 60.533833] P4D 0
[ 60.540559] Oops: 0002 [#1] SMP
[ 60.542759] Modules linked in: ebtables ip6table_filter ip6_tables.....
[ 60.549990] drm_kms_helper drm crc32c_intel alx serio_raw mdio wmi video i2c_hid uas usb_storage
[ 60.551404] CPU: 0 PID: 999 Comm: NetworkManager Not tainted 4.11.0+ #1
[ 60.552813] Hardware name: Acer Predator G9-591/Mustang_SLS, BIOS V1.10 03/03/2016
[ 60.554219] task:
ffff8804ae833c00 task.stack:
ffffc90003eec000
[ 60.555383] RIP: 0010:alx_alloc_napis+0xe6/0x1e0 [alx]
[ 60.556615] RSP: 0018:
ffffc90003eef660 EFLAGS:
00010286
[ 60.557787] RAX:
ffff8804962835a0 RBX:
ffff8804aee8a8c0 RCX:
0000000000000000
[ 60.558987] RDX:
0000000000000060 RSI:
0000000000000000 RDI:
ffff880496283600
[ 60.559979] RBP:
ffffc90003eef688 R08:
ffff8804c1c1e7e0 R09:
ffff8804962835a0
[ 60.560978] R10:
ffff8804962835a0 R11:
0000000000000102 R12:
0000000000000000
[ 60.561974] R13:
0000000000000000 R14:
ffff8804aee8aaf0 R15:
ffffffffa0052ea0
[ 60.562974] FS:
00007f1cecbc9940(0000) GS:
ffff8804c1c00000(0000) knlGS:
0000000000000000
[ 60.564003] CS: 0010 DS: 0000 ES: 0000 CR0:
0000000080050033
[ 60.564884] CR2:
00000000000000b8 CR3:
0000000496025000 CR4:
00000000003406f0
[ 60.565782] DR0:
0000000000000000 DR1:
0000000000000000 DR2:
0000000000000000
[ 60.566676] DR3:
0000000000000000 DR6:
00000000fffe0ff0 DR7:
0000000000000400
[ 60.567560] Call Trace:
[ 60.568500] __alx_open+0xa2/0x570 [alx]
[ 60.569355] ? notifier_call_chain+0x4a/0x70
[ 60.570144] alx_open+0x17/0x20 [alx]
[ 60.570909] __dev_open+0xc6/0x140
[ 60.571682] ? _raw_spin_unlock_bh+0x1a/0x20
[ 60.572469] __dev_change_flags+0x9d/0x160
[ 60.573252] dev_change_flags+0x29/0x60
[ 60.574070] do_setlink+0x32e/0xc90
[ 60.574815] ? ttwu_do_activate+0x77/0x80
[ 60.575544] ? drm_fb_helper_dirty.isra.17+0xc7/0xe0 [drm_kms_helper]
[ 60.576273] ? drm_fb_helper_cfb_imageblit+0x30/0x40 [drm_kms_helper]
[ 60.577004] ? bit_putcs+0x2f7/0x560
[ 60.577729] ? nla_parse+0x35/0x140
[ 60.578518] rtnl_newlink+0x7d3/0x900
[ 60.579280] ? security_capset+0x30/0x80
[ 60.580029] ? ns_capable_common+0x68/0x80
[ 60.580747] ? ns_capable+0x13/0x20
[ 60.581453] rtnetlink_rcv_msg+0xee/0x220
[ 60.582198] ? rtnl_newlink+0x900/0x900
[ 60.582909] netlink_rcv_skb+0xe7/0x120
[ 60.583601] rtnetlink_rcv+0x28/0x30
[ 60.584303] netlink_unicast+0x18c/0x220
[ 60.585002] netlink_sendmsg+0x2ba/0x3b0
[ 60.585703] sock_sendmsg+0x38/0x50
[ 60.586436] ___sys_sendmsg+0x2b6/0x2d0
[ 60.587123] ? lockref_put_or_lock+0x5e/0x80
[ 60.587822] ? dput+0x155/0x1d0
[ 60.588518] ? mntput+0x24/0x40
[ 60.589215] __sys_sendmsg+0x54/0x90
[ 60.589907] ? __sys_sendmsg+0x54/0x90
[ 60.590627] SyS_sendmsg+0x12/0x20
[ 60.591333] entry_SYSCALL_64_fastpath+0x1a/0xa5
[ 60.592021] RIP: 0033:0x7f1ceb44e3b0
[ 60.592697] RSP: 002b:
00007fffd7f0a2d0 EFLAGS:
00000293 ORIG_RAX:
000000000000002e
[ 60.593385] RAX:
ffffffffffffffda RBX:
0000000000000002 RCX:
00007f1ceb44e3b0
[ 60.594107] RDX:
0000000000000000 RSI:
00007fffd7f0a380 RDI:
000000000000000c
[ 60.594798] RBP:
00007fffd7f0a800 R08:
0000000000000000 R09:
0000000000000000
[ 60.595502] R10:
0000564ffbae6e20 R11:
0000000000000293 R12:
0000000000000001
[ 60.596200] R13:
0000000000000002 R14:
0000000000000010 R15:
00007fffd7f0a4d0
[ 60.596899] Code: ed 85 c9 0f 8f ec 00 00 00 48 8b 3d 9d 97 1a e2 ba 50 00 00 00 be c0 80 40 01 4c 8b a3 30 02 00 00 e8 ff e5 1d e1 48 85 c0 74 a3 <49> 89 84 24 b8 00 00 00 48 8b 93 30 02 00 00 48 8b 4b 08 48 89
[ 60.597642] RIP: alx_alloc_napis+0xe6/0x1e0 [alx] RSP:
ffffc90003eef660
[ 60.598427] CR2:
00000000000000b8
Fixes: f3297f68 ("net: alx: switch to pci_alloc_irq_vectors")
Signed-off-by: Rakesh Pandit <rakesh@tuxera.com>
Signed-off-by: David S. Miller <davem@davemloft.net>