• Jason Wessel's avatar
    kgdb: fix kgdb_validate_break_address to perform a mem write · a9b60bf4
    Jason Wessel authored
    A regression to the kgdb core was found in the case of using the
    CONFIG_DEBUG_RODATA kernel option.  When this option is on, a breakpoint
    cannot be written into any readonly memory page.  When an external
    debugger requests a breakpoint to get set, the
    kgdb_validate_break_address() was only checking to see if the address
    to place the breakpoint was readable and lacked a write check.
    
    This patch changes the validate routine to try reading (via the
    breakpoint set request) and also to try immediately writing the break
    point.  If either fails, an error is correctly returned and the
    debugger behaves correctly.  Then an end user can make the
    descision to use hardware breakpoints.
    
    Also update the documentation to reflect that using
    CONFIG_DEBUG_RODATA will inhibit the use of software breakpoints.
    Signed-off-by: default avatarJason Wessel <jason.wessel@windriver.com>
    a9b60bf4
kgdb.tmpl 18.7 KB