Project

General

Profile

Actions

Bug #14425

closed

want probes for invvpid and invept

Added by Patrick Mooney 7 months ago. Updated 7 months ago.

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

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

The logic in bhyve which triggers invvpid and invept is rather difficult to probe with dtrace today, being largely inlined. Some explicit SDT probes would be nice to track those operations.

Actions #1

Updated by Electric Monk 7 months ago

  • Gerrit CR set to 1968
Actions #2

Updated by Patrick Mooney 7 months ago

To test, I ran the updated bits on an Intel machine and traced the new probes. Upon booting a bhyve guest, I saw probe firings in line with the expected behavior.

  4   3479               vmx_run:vmx-invept   vmx-invept
              vmm`vm_run+0x1a9
              vmm`vmmdev_do_ioctl+0xdd3
              vmm`vmm_ioctl+0xec
              genunix`cdev_ioctl+0x2b
              specfs`spec_ioctl+0x45
              genunix`fop_ioctl+0x5b
              genunix`ioctl+0x153
              unix`sys_syscall+0x283

 22   3480          vmx_invvpid:vmx-invvpid   vmx-invvpid
              vmm`vmx_set_pcpu_defaults+0x103
              vmm`vmx_run+0x127
              vmm`vm_run+0x1a9
              vmm`vmmdev_do_ioctl+0xdd3
              vmm`vmm_ioctl+0xec
              genunix`cdev_ioctl+0x2b
              specfs`spec_ioctl+0x45
              genunix`fop_ioctl+0x5b
              genunix`ioctl+0x153
              unix`sys_syscall+0x283
Actions #3

Updated by Patrick Mooney 7 months ago

I also traced the args to those probes to see that the values passed matched expectations. (And they did)

Actions #4

Updated by Electric Monk 7 months ago

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

git commit 70ae9a334a768113a660b21305bf7d2cff941499

commit  70ae9a334a768113a660b21305bf7d2cff941499
Author: Patrick Mooney <pmooney@pfmooney.com>
Date:   2022-01-25T22:22:35.000Z

    14425 want probes for invvpid and invept
    14426 expand seg_vmm tests
    Reviewed by: Andy Fiddaman <andy@omnios.org>
    Reviewed by: Toomas Soome <tsoome@me.com>
    Approved by: Robert Mustacchi <rm@fingolfin.org>

Actions

Also available in: Atom PDF