Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Jul 2019 22:41:28 +0000
From:      bugzilla-noreply@freebsd.org
To:        virtualization@FreeBSD.org
Subject:   [Bug 239118] in ESXi: Panic in ether_output_frame
Message-ID:  <bug-239118-27103-idxJQmByeN@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-239118-27103@https.bugs.freebsd.org/bugzilla/>
References:  <bug-239118-27103@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D239118

--- Comment #4 from Patrick Kelsey <pkelsey@freebsd.org> ---
(In reply to Mark Johnston from comment #3)
> Created attachment 205876 [details]
> proposed patch
>=20
> 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 inval=
id
> memory.
>=20
> 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 sta=
te
from multiple contexts (interrupt and group task context) whereas the tx st=
ate
management is designed to only be accessed from a single context (group task
context).

iflib_legacy_setup() needs to be fixed.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-239118-27103-idxJQmByeN>