Hi! Rob run into crashes when using XDP on bnxt. Upon investigation it turns out that during driver reconfig irq core produces a warning message when IRQs are requested. This triggers netpoll, which in turn accesses uninitialized driver state. Same crash can also be triggered on this platform by changing the number of rings.
Looks like we have two missing pieces here, netif_napi_add() has to make sure we start out with netpoll blocked. The driver also has to be more careful about when napi gets enabled. Tested XDP and channel count changes, the warning message no longer causes a crash. Not sure if the memory barriers added in patch 1 are necessary, but it seems we should have them. Jakub Kicinski (2): net: disable netpoll on fresh napis bnxt: don't enable NAPI until rings are ready drivers/net/ethernet/broadcom/bnxt/bnxt.c | 12 ++++-------- net/core/dev.c | 3 ++- net/core/netpoll.c | 2 +- 3 files changed, 7 insertions(+), 10 deletions(-) -- 2.26.2