[Bug 241808] bhyve e1000 broken after r354288
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Nov 26 18:12:36 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241808
--- Comment #4 from commit-hook at freebsd.org ---
A commit references this bug:
Author: vmaffione
Date: Tue Nov 26 18:12:13 UTC 2019
New revision: 355117
URL: https://svnweb.freebsd.org/changeset/base/355117
Log:
MFC r354659
bhyve: rework mevent processing to fix a race condition
At the end of both mevent_add() and mevent_update(), mevent_notify()
is called to wakeup the I/O thread, that will call kevent(changelist)
to update the kernel.
A race condition is possible where the client calls mevent_add() and
mevent_update(EV_ENABLE) before the I/O thread has the chance to wake
up and call mevent_build()+kevent(changelist) in response to mevent_add().
The mevent_add() is therefore ignored by the I/O thread, and
kevent(fd, EV_ENABLE) is called before kevent(fd, EV_ADD), resuliting
in a failure of the kevent(fd, EV_ENABLE) call.
PR: 241808
Reviewed by: jhb, markj
Differential Revision: https://reviews.freebsd.org/D22286
Changes:
_U stable/12/
stable/12/usr.sbin/bhyve/mevent.c
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-virtualization
mailing list