Re: [net PATCH 00/13] fbnic: Fix BMC filter, FW crash restore, teardown and Tx flush bugs
flat view
From: Alexander Duyck <hidden>
Date: 2026-10-29 15:33:41
On Wed, Oct 28, 2026 at 2:42 PM [off-list ref] wrote:
Hi! This is an automated message. This series looks like a fix, but its commit messages seem to be missing some information: - Whether the issue was actually triggered, or is only theoretical (e.g. found by code inspection). If it was triggered please include the symptoms, like the stack trace or error messages. - What hardware the change was tested on. For driver fixes please mention the device (and if relevant firmware version) used for testing, or say that the change was not tested on real hardware. Please do not repost the series just to address the above. Instead, reply to this email with the missing information, so that reviewers can take it into account. If the series needs another revision for other reasons, please include the information in the commit messages then.
Patches 1-10 were found by code inspection while reviewing
d261a371e3b7 ("fbnic: Rework the BMC state pulled from the
capabilities message") and db99b6fae21c ("fbnic: Remove BMC routing
rules when the BMC channel is disabled"). They were not triggered in
practice.
Patches 11 and 12 come from a hang we hit on hardware. A test loop
injects a PCIe error, which triggers DPC containment and driver
recovery, while timestamped Tx traffic is running. Over many
iterations the device's PTP in-flight counter climbed until the PTP
request FIFO filled. After that, Tx timestamp requests never completed.
There was no kernel splat; the symptom is the stuck counter and Tx
timestamping stopping. With both patches applied the hang has not
reproduced in over 10,000 iterations of the same loop.
Patch 13 was found by inspection. It targets the "Tx timestamp without
matching packet" message from fbnic_clean_tsq(). We do see that
message on hardware after the recovery cycles above, but we have not
seen the Tx force-flush path it changes actually run, and the message
still shows up with the patch applied. So this fixes a real gap in the
flush, but it is not the whole story for that message.
Testing: the full series was run on an fbnic NIC with a BMC attached
(firmware 26.09.14-017_h7ab84d2ef68f), using the recovery loop above.
It was also tested in QEMU, using an emulated fbnic paired with a
second QEMU instance running the device firmware. That covered link
bring-up, BMC NC-SI channel enable, disable and re-enable, and a
reproducer for the multicast table exhaustion case handled in patch 8.