[Bug 246321] Key press timing/repeat issue on UEFI VNC console for OpenBSD => 6.6 guest

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun May 17 11:14:11 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=246321

--- Comment #6 from commit-hook at freebsd.org ---
A commit references this bug:

Author: grehan
Date: Sun May 17 11:13:13 UTC 2020
New revision: 361132
URL: https://svnweb.freebsd.org/changeset/base/361132

Log:
    MFC r361064
        Hide host CPUID 0x15 TSC/Crystal ratio/freq info from guest

        In recent Linux (5.3+) and OpenBSD (6.6+) kernels, and with hosts that
        support CPUID 0x15, the local APIC frequency is determined directly
        from the reported crystal clock to avoid calibration against the 8254
        timer.

        However, the local APIC frequency implemented by bhyve is 128MHz, where
        most h/w systems report frequencies around 25MHz. This shows up on
        OpenBSD guests as repeated keystrokes on the emulated PS2 keyboard
        when using VNC, since the kernel's timers are now much shorter.

        Fix by reporting all-zeroes for CPUID 0x15. This allows guests to fall
        back to using the 8254 to calibrate the local APIC frequency.

        Future work could be to compute values returned for 0x15 that would
        match the host TSC and bhyve local APIC frequency, though all
dependencies
        on this would need to be examined (for example, Linux will start using
        0x16 for some hosts).

        PR:             246321
        Reported by:    Jason Tubnor (and tested)

  Approved by:  bz (mentor)

Changes:
_U  stable/11/
  stable/11/sys/amd64/vmm/x86.c
  stable/11/sys/amd64/vmm/x86.h

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


More information about the freebsd-virtualization mailing list