[ros-bugs] [Bug 6283] New: KGDB: support for hardware breakpoints not fully compliant with specification

ReactOS.Bugzilla at reactos.org ReactOS.Bugzilla at reactos.org
Tue May 31 10:48:06 UTC 2011


http://www.reactos.org/bugzilla/show_bug.cgi?id=6283

           Summary: KGDB: support for hardware breakpoints not fully
                    compliant with specification
           Product: ReactOS
           Version: TRUNK
          Platform: x86 Hardware
        OS/Version: ReactOS
            Status: UNCONFIRMED
          Severity: minor
          Priority: P3
         Component: Kernel
        AssignedTo: ros-bugs at reactos.org
        ReportedBy: w.a.hajenius at gmail.com
         QAContact: ros-bugs at reactos.org


KGDB's support of hardware breakpoints does not seem to fully match the
hardware definition.

According to Wikipedia's info on the debug registers
(http://en.wikipedia.org/wiki/X86_debug_register):
"Bits 16-17 (DR0), 20-21 (DR1), 24-25 (DR2), 28-29 (DR3), define when
breakpoints trigger. Each breakpoint has a two-bit entry that specifies whether
they break on
execution (00b), data write (01b), data read or write (11b). 10b is defined to
mean break on IO read or write but no hardware supports it."

==> KDBG has a fourth option "read" which is not in the above list. It maps to
11b just like "read-write". Since it's redundant, it should be removed. The
other option (10b) which is not supported in hardware of course won't need to
be supported by KGDB either.

Continuing with Wikipedia:
"Bits 18-19 (DR0), 22-23 (DR1), 26-27 (DR2), 30-31 (DR3), define how large area
of memory is watched by breakpoints. Again each breakpoint has a two-bit entry
that specifies whether they watch one (00b), two (01b), eight (10b) or four
(11b) bytes."

==> KGDB currently supports byte, word and dword, but qword should also be
supported (10b).


-- 
Configure bugmail: http://www.reactos.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.



More information about the Ros-bugs mailing list