svn commit: r366965 - stable/12/usr.sbin/bhyve
Konstantin Belousov
kostikbel at gmail.com
Fri Oct 23 12:27:34 UTC 2020
On Fri, Oct 23, 2020 at 10:48:14AM +0000, Ryan Moeller wrote:
> Author: freqlabs
> Date: Fri Oct 23 10:48:14 2020
> New Revision: 366965
> URL: https://svnweb.freebsd.org/changeset/base/366965
>
> Log:
> MFC r366771:
>
> bhyve: Update TX descriptor base address and host mapping on change
>
> bhyve sometimes segfaults when using an e1000 NIC with a Windows guest.
>
> We are only updating our tdba and cached host mapping when the low address
> register is written and when tx is set enabled, but not when the high address
> or length registers are written. It is observed that Windows 10 is occasionally
> enabling tx first then writing the registers in the order low, high, len. This
> leaves us with a bogus base address and mapping, which causes a segfault later
> when we try to copy from a descriptor that has unpredictable garbage in a
> pointer.
>
> Updating the address and mapping when any of those registers change seems to fix
> that particular issue.
Does this description mean that if guest writes garbage into base, it can
crash monitor ?
More information about the svn-src-stable-12
mailing list