FreeBSD The Power to Serve

bhyve debug server enhancements

Links:
link: Wiki project page
link: Differential
Contact: Bojan Novković <bojan.novkovic@kset.org>

The goal of this project was to enhance the functionality of bhyve’s debug server. Several existing features related to single-stepping are tied to Intel-specific VM mechanisms, which severely impairs bhyve’s debugging functionality on other x86 platforms. The first goal dealt with extending single-stepping support to AMD hosts. The second goal was to add support for hardware watchpoints using the guest OS’s hardware debugging registers.

The project was carried out under Google’s Summer of Code program and was finished around the end of July. The project’s wiki also contains detailed documentation regarding several implemented mechanisms.

The changes can be summarized as follows:

  • Support for placing software breakpoints inside virtual machines on AMD platforms,

  • Support for single-stepping virtual machines on AMD platforms,

  • Support for placing hardware watchpoints inside virtual machines on Intel and AMD platforms.

Any feedback, comments and discussions are welcome and would be greatly appreciated.

Sponsor: Google Summer of Code


Last modified on: October 18, 2022 by Lorenzo Salvadore