Re: [net PATCH 0/4] eth: fbnic: a collection of fixes
From: Paolo Abeni <pabeni@redhat.com>
Date: 2026-09-08 09:41:05
On 9/3/26 12:31 AM, Alexander Duyck wrote:
This series collects a handful of independent fbnic fixes for issues on released kernels, plus one core ethtool fix needed by the fbnic offline self test. The first patch fixes a NULL pointer dereference on unbind after a failed PCIe error recovery: fbnic_pm_suspend() frees the napi vectors via a direct ndo_stop() while leaving netif_running() true, and when slot_reset -> resume fails the data path is never re-allocated. To prevent the panic we reset num_napi to 0 before we free the IRQs which prevents walking the unallocated napi vectors when we unbind the interface later. The next two patches address the FW mailbox. One sets AW_FLUSH_MODE alongside AW_FLUSH when tearing down the Rx ring, so the write pipeline actually drains the staged requests instead of hanging on the BME halt. The other handles completions flagged with FW_ERR on both mailboxes, which the driver previously ignored. This resulted in us parsing a stale Rx page, and spinning the capabilities poll to a timeout on a healthy ring. The last patch keeps rtnl_lock held on the ethtool ioctl path for the self test. Since the ioctl path became rtnl-optional for ops-locked drivers, fbnic's offline self test (which brings the interface down and up via netif_close()/netif_open()) runs holding only the instance lock, tripping a lockdep splat / ASSERT_RTNL and reconfiguring the device without the lock it requires. An opt-in flag restores rtnl_lock for drivers that need it.
I think some of the comments from sashiko (the high ones on patch 2 and 3) should be addressed in the same series. Alex, please note that the current expectation is for the submitter to treat sashiko comments alike to human reviewer's one, see commit c82ff94592fb68f529afe63ca7f5ddb7dae4ba83. /P