bhyve framebuffer and vncviewer

aragats

Daemon

Reaction score: 540
Messages: 1,296

The issues described below probably have discussed, however I couldn't find actual solutions or good workarounds. Are there anything new on them?

When bhyve runs Windows 7 as a guest with framebuffer enabled:
1. X mouse cursor does not coincides with Windows cursor. Abruptly moving it beyond edges helps "fix" it by shifting it in a different direction.
2. In certain setups the keyboard is not working with message: atkbd data buffer full. However, in the same setup when booted from Windows 7 installer CD, the keyboard works.

Thanks for ideas!
 

grehan@

Member
Developer

Reaction score: 83
Messages: 84

The cursor issue is because the PS2 mouse only supports relative coordinate reporting. Windows, and most guests, implement mouse acceleration, so the location of the cursor starts to rapidly drift away from the VNC cursor. Note that this is a general problem with VNC and hypervisors - KVM/Xen have the same issue.

The fix is to use a cursor input device that reports absolute coordinates. In bhyve, this is the XHCI tablet device. However, Win7 doesn't support XHCI in the base install. It is possible to post-install XHCI drivers, but there is a chicken-and-egg in that an XHCI device has to be present to install, but doing that in bhyve takes over the cursor from the PS2 mouse, rendering the system not particularly useful. That is a bug - bhyve should allow an XHCI controller to be present without a device attached.

(as a side note, bhyve implements an XHCI controller since that imposes a lot less load on the host than a usb2 EHCI controller, which has to software-poll descriptors. However, if anyone wants to go to the effort of implementing an EHCI controller emulation, by all means go for it :)

Not sure about the keyboard issue. Does this happen immediately, or after some time ?
 
OP
OP
aragats

aragats

Daemon

Reaction score: 540
Messages: 1,296

Not sure about the keyboard issue. Does this happen immediately, or after some time ?
Yes, it doesn't work from the very begining, but does work when booted from the Win7 installer.
It's not very critical since then I use rdesktop to connect with any geometry I want, but still annoying especially when you just set up a system.
 
OP
OP
aragats

aragats

Daemon

Reaction score: 540
Messages: 1,296

In bhyve, this is the XHCI tablet device. However, Win7 doesn't support XHCI in the base install. It is possible to post-install XHCI drivers
I've downloaded a driver from Intel web site.
The device IDs correspond to ones in the .inf file, however, I have the following in the Win7 Device Manager:
Code:
Intel USB 3.0 eXtensible Host Controller
Intel USB 3.0 eXtensible Root Hub
Unknown Device
The unknown device's IDs field contains only USB\UNKNOWN.
Am I missing something? I've enabled XHCI in bhyve(8) with
Code:
bhyve ... -s 6,xhci,tablet ...
 
OP
OP
aragats

aragats

Daemon

Reaction score: 540
Messages: 1,296

Yes, it's 1.0.10.255, it supports (as per .inf):
Code:
[Intel.NTAMD64.6.1]
%IUsb3XhcDeviceDesc01% = IUsb3XhcModel, PCI\VEN_8086&DEV_1E31&REV_00
%IUsb3XhcDeviceDesc01% = IUsb3XhcModel, PCI\VEN_8086&DEV_1E31&REV_01
%IUsb3XhcDeviceDesc01% = IUsb3XhcModel, PCI\VEN_8086&DEV_1E31&REV_02
%IUsb3XhcDeviceDesc01% = IUsb3XhcModel, PCI\VEN_8086&DEV_1E31&REV_03
%IUsb3XhcDeviceDesc01% = IUsb3XhcModel, PCI\VEN_8086&DEV_1E31&REV_04
The Device Manager reports PCI\VEN_8086&DEV_1E31&REV_00.
The second driver has different VEN/DEV ids.
 

abishai

Aspiring Daemon

Reaction score: 174
Messages: 743

Thanks for trying out the XHCI install. Was the driver one of these - https://downloadcenter.intel.com/product/65855/Intel-USB-3-0-eXtensible-Host-Controller-Driver ?

Hmmm, hard to say if the controller driver is working or not (would guess a better report would be given for the deivce). I'll give this a try and see how it goes.
I tried different drivers before, however the best result achieved was nothing (the worst was BSoD). With a lot of cursing I enabled RDP and forgot about mouse issues :)
 
OP
OP
aragats

aragats

Daemon

Reaction score: 540
Messages: 1,296

BSOD happens when I try a driver from Intel with
Code:
DriverVer=05/30/2014,3.0.0.34
Also if I use slot 30:
Code:
bhyve ... -s 30,xhci,tablet ...
the Device Manager shows only
Code:
Universal Serial Bus (USB) controller
and nothing else. The hardware IDs are the same.
 

EsTaF

New Member


Messages: 7

had test to add the C220/C610 usb 3.0 driver as oem one (\Intel(R)_USB_3.0_eXtensible_Host_Controller_Driver_5.0.4.43\Drivers\Win7\x64 - will it be driver as oem?) with that howto https://community.spiceworks.com/how_to/125921-how-to-add-drivers-manually-to-a-usb-drive-to-install-windows-7-using-a-usb-3-0-port.

1. dism /mount-wim /wimfile:boot.wim /index:2 /mountdir:mount
2. copy ...Intel(R)_USB_3.0_eXtensible_Host_Controller_Driver_5.0.4.43\Drivers\Win7\x64\* to driver dir
3. add driver to wim: dism /image:mount /add-driver:"driver" /recurse
4. dism /unmount-wim /mountdir:mount /commit

copy wim back to iso etc.

Maybe, if I'll install that drivers in normal mode (after windows install), so all're ok. In oem mode (boot.wim env.), had 0 result.
 
Top