[Bug 239118] in ESXi: Panic in ether_output_frame

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Thu Jul 18 22:41:28 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=239118

--- Comment #4 from Patrick Kelsey <pkelsey at freebsd.org> ---
(In reply to Mark Johnston from comment #3)
> Created attachment 205876 [details]
> proposed patch
> 
> Based on the line numbers, vmxnet3_isc_txd_credits_update() is being
> reentered.  I think there is a window where vxcr_next is an invalid queue
> index; if we take an interrupt during that window, we may reference invalid
> memory.
> 
> Please try the attached patch, which attempts to bandage the problem.

The problem isn't that vmxnet3_isc_txd_credits_update() needs to be
re-enterable, the problem is that r347221 (merged to stable/12 in r349112)
changed iflib_legacy_setup() in a way that assumes that all iflib drivers
operate their interrupts in combined RXTX mode.  The vmx driver is one such
driver that does not.  For vmx, this change results in access to the tx state
from multiple contexts (interrupt and group task context) whereas the tx state
management is designed to only be accessed from a single context (group task
context).

iflib_legacy_setup() needs to be fixed.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-virtualization mailing list