]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Advertise 64-bit physical-address capability.
authorPeter Grehan <grehan@FreeBSD.org>
Fri, 10 Jul 2020 07:26:50 +0000 (07:26 +0000)
committerPeter Grehan <grehan@FreeBSD.org>
Fri, 10 Jul 2020 07:26:50 +0000 (07:26 +0000)
commitfb5f5a17ef0a4c25c8f1110c8f4f3f417dfaba01
treeabdbd43cf3e423958dcdc27d95b7cfc71352f5c8
parent6c69e697249b4125ab89c3c4ec1315905dff3517
Advertise 64-bit physical-address capability.

This fixes a coredump with NetBSD guests when XHCI is configured.
On seeing the AC64 flag clear, the NetBSD XHCI driver was only writing
to the lower 32-bits of 64-bit physical address registers. The emulation
relies on a write to the hi 32-bits to calculate a host virtual address
for internal use, and has always supported 64-bit addressing.

All other guests were seen to write to both the lo- and hi- address
registers, regardless of the AC64 setting.

Discussed with:  Leon Dang (author)
Tested with:  Ubuntu 16/18/20, Windows10, OpenBSD UEFI guests.

MFC after: 2 weeks.
usr.sbin/bhyve/pci_xhci.c