1
0
Fork 0
alistair23-linux/drivers/net
Michael Chan e8c8d2319b bnxt_en: Improve stats context resource accounting with RDMA driver loaded.
commit 869c4d5eb1 upstream.

The function bnxt_get_ulp_stat_ctxs() does not count the stats contexts
used by the RDMA driver correctly when the RDMA driver is freeing the
MSIX vectors.  It assumes that if the RDMA driver is registered, the
additional stats contexts will be needed.  This is not true when the
RDMA driver is about to unregister and frees the MSIX vectors.

This slight error leads to over accouting of the stats contexts needed
after the RDMA driver has unloaded.  This will cause some firmware
warning and error messages in dmesg during subsequent config. changes
or ifdown/ifup.

Fix it by properly accouting for extra stats contexts only if the
RDMA driver is registered and MSIX vectors have been successfully
requested.

Fixes: c027c6b4e9 ("bnxt_en: get rid of num_stat_ctxs variable")
Reviewed-by: Yongping Zhang <yongping.zhang@broadcom.com>
Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-01-19 18:26:18 +01:00
..
appletalk
arcnet
bonding bonding: wait for sysfs kobject destruction before freeing struct slave 2020-12-08 10:40:24 +01:00
caif
can can: kvaser_pciefd: select CONFIG_CRC32 2021-01-17 14:05:35 +01:00
dsa net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE 2021-01-17 14:05:32 +01:00
ethernet bnxt_en: Improve stats context resource accounting with RDMA driver loaded. 2021-01-19 18:26:18 +01:00
fddi
fjes fjes: fix missed check in fjes_acpi_add 2019-12-31 16:41:14 +01:00
hamradio yam: fix possible memory leak in yam_init_driver 2020-06-24 17:50:18 +02:00
hippi hippi: Fix a size used in a 'pci_free_consistent()' in an error handling path 2020-07-29 10:18:31 +02:00
hyperv hv_netvsc: Remove "unlikely" from netvsc_select_queue 2020-09-23 12:40:34 +02:00
ieee802154 ieee802154/adf7242: check status of adf7242_read_reg 2020-10-01 13:18:16 +02:00
ipvlan ipvlan: fix device features 2020-09-03 11:26:41 +02:00
netdevsim netdevsim: fix unbalaced locking in nsim_create() 2020-07-29 10:18:33 +02:00
phy sfp: Fix error handing in sfp_probe() 2020-11-10 12:37:26 +01:00
plip
ppp pppoe: only process PADT targeted at local interfaces 2020-05-20 08:20:09 +02:00
slip slip: not call free_netdev before rtnl_unlock in slip_open 2020-03-21 08:11:53 +01:00
team net: team: fix memory leak in __team_options_register 2020-10-14 10:33:02 +02:00
usb r8152: Add Lenovo Powered USB-C Travel Hub 2021-01-19 18:26:13 +01:00
vmxnet3 vmxnet3: use correct tcp hdr length when packet is encapsulated 2020-08-19 08:16:23 +02:00
wan wan: ds26522: select CONFIG_BITREVERSE 2021-01-17 14:05:37 +01:00
wimax wimax/i2400m: Fix potential urb refcnt leak 2020-05-10 10:31:26 +02:00
wireless wil6210: select CONFIG_CRC32 2021-01-17 14:05:36 +01:00
xen-netback xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path() 2020-12-30 11:51:46 +01:00
Kconfig net: Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build 2020-04-01 11:02:18 +02:00
LICENSE.SRC
Makefile
Space.c
dummy.c
eql.c
geneve.c Revert "geneve: pull IP header before ECN decapsulation" 2020-12-11 13:23:33 +01:00
gtp.c gtp: fix an use-before-init in gtp_newlink() 2020-11-01 12:01:03 +01:00
ifb.c net: Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build 2020-04-01 11:02:18 +02:00
loopback.c
macsec.c macsec: avoid use-after-free in macsec_handle_frame() 2020-10-14 10:33:00 +02:00
macvlan.c macvlan: validate setting of multiple remote source MAC addresses 2020-09-03 11:27:00 +02:00
macvtap.c
mdio.c
mii.c
net_failover.c net_failover: fixed rollback in net_failover_open() 2020-06-17 16:40:19 +02:00
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
sungem_phy.c
tap.c
thunderbolt.c
tun.c tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS 2021-01-12 20:16:14 +01:00
veth.c veth: Adjust hard_start offset on redirect XDP frames 2020-06-22 09:31:06 +02:00
virtio_net.c virtio_net: Fix recursive call to cpus_read_lock() 2021-01-12 20:16:12 +01:00
vrf.c vrf: packets with lladdr src needs dst at input with orig_iif when needs strict 2020-12-21 13:27:03 +01:00
vsockmon.c
vxlan.c vxlan: Copy needed_tailroom from lowerdev 2020-12-30 11:50:57 +01:00
xen-netfront.c xen-netfront: fix potential deadlock in xennet_remove() 2020-08-05 09:59:51 +02:00