Project

General

Profile

Actions

Bug #13072

closed

clarify VMCB interface in bhyve

Added by Patrick Mooney about 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Category:
bhyve
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
bhyve
Gerrit CR:

Description

Similar to #13063, the in-kernel interface used by bhyve to access the VMCB on AMD hardware could be cleaned up. Failed register identification checks should be fatal when the consumer is in-kernel (and therefore expected to operate on valid registers). Making this consistent will simplify later work to expose more of the VM state to userspace.

Actions #1

Updated by Electric Monk about 1 year ago

  • Gerrit CR set to 866
Actions #2

Updated by Patrick Mooney about 1 year ago

As part of this change, the segment attribute/access conversion code was shuffled around a bit. That conversion code uses "magic" numbers in the source for masks and shifts, so #13089 was written up to address the header definition shortcomings.

Actions #3

Updated by Patrick Mooney about 1 year ago

With this change in place, all of the usual suspects were booted up:
- FreeBSD
- Linux
- OpenBSD
- Windows
- OmniOS

All started up and ran fine. I dtraced the new vmcb_* functions to verify that the BE was correctly updated and the updated code paths were being utilized.

Actions #4

Updated by Electric Monk about 1 year ago

  • Status changed from In Progress to Closed
  • % Done changed from 0 to 100

git commit 096bb5cb663d8fa04eda9a4aceb4d82a9cbae42c

commit  096bb5cb663d8fa04eda9a4aceb4d82a9cbae42c
Author: Patrick Mooney <pmooney@pfmooney.com>
Date:   2020-09-02T20:24:18.000Z

    13072 clarify VMCB interface in bhyve
    Reviewed by: Robert Mustacchi <rm@fingolfin.org>
    Reviewed by: Mike Zeller <mike.zeller@joyent.com>
    Approved by: Dan McDonald <danmcd@joyent.com>

Actions

Also available in: Atom PDF