Skip to content
  • David Johnson's avatar
    Add emulated breakpoint/singlestep code in Linux personality. · 71753d5e
    David Johnson authored
    This means that the personality can emulate breakpoints and
    singlesteps in userspace threads, on behalf of the generic
    OS Process overlay driver.  Thus, the OS Process driver can
    now be stacked atop the KVM/QEMU driver with real breakpoints.
    Previously, it could be stacked atop KVM/QEMU, but without
    userspace breakpoints... so it wasn't especially useful for
    active debugging.
    
    The OS Process driver was previously only able to stack atop
    the Xen driver, because the Xen driver supported hacked
    hypervisors that would divert userspace debug exceptions to
    the driver (as well as kernel debug exceptions).  Hacking
    QEMU's GDB stub to do this was undesireable, and infeasible.
    (The QEMU/KVM support was built through the GDB driver, because
    QEMU provides a GDB server stub --- but supporting userspace
    breakpoints in an overlay driver atop our GDB driver was
    infeasible due to the "shared page" breakpoint issue.  The
    shared page issue occurs when we place a ...
    71753d5e