VirtualBox

Ticket #10377 (new defect)

Opened 2 years ago

Last modified 2 years ago

x86 debug registers don't work reliably in a guest OS

Reported by: Eugene153 Owned by:
Priority: major Component: other
Version: VirtualBox 4.1.10 Keywords: x86 debug registers
Cc: Guest type: other
Host type: other

Description

Some of x86 debug register events appears lost and not delivered to a guest OS.

To reproduce: Use gdb on a Linux guest to run a simple program like this:

#include <stdio.h>
int main(int argc, char ** argv) {
   char ch = 0;
   for (;;) {
      ch = ch + 1;
      printf("%d\n", ch);
   }
   return 0;
}

set a hardware breakpoint:

(gdb) watch ch
Hardware watchpoint 2: ch
(gdb)

do cont until the breakpoint fails to trigger, e.g.:

(gdb) cont
Continuing.
111
112
Hardware watchpoint 2: ch

Old value = 111 'o'
New value = 113 'q'
main (argc=1, argv=0x7fffffffe638) at t.c:8
8             printf("%d\n", ch);
(gdb)

in this case writing 112 to ch did not trigger the breakpoint.

The problem appears reproducible with any host, guest or debugger.

Change History

comment:1 Changed 2 years ago by frank

Duplicate of #477? Is VT-x / AMD-V enabled for your VM? Please attach a VBox.log file.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use