Skip to content

Commit 1ba0c17

Browse files
committed
kdb: Add message about CONFIG_DEBUG_RODATA on failure to install breakpoint
On x86, if CONFIG_DEBUG_RODATA is set, one cannot set breakpoints via KDB. Apparently this is a well-known problem, as at least one distribution now ships with both KDB enabled and CONFIG_DEBUG_RODATA=y for security reasons. This patch adds an printk message to the breakpoint failure case, in order to provide suggestions about how to use the debugger. Reported-by: Tim Bird <tim.bird@am.sony.com> Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Acked-by: Tim Bird <tim.bird@am.sony.com>
1 parent b8adde8 commit 1ba0c17

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

kernel/debug/kdb/kdb_bp.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,13 @@ static int _kdb_bp_install(struct pt_regs *regs, kdb_bp_t *bp)
153153
} else {
154154
kdb_printf("%s: failed to set breakpoint at 0x%lx\n",
155155
__func__, bp->bp_addr);
156+
#ifdef CONFIG_DEBUG_RODATA
157+
if (!bp->bp_type) {
158+
kdb_printf("Software breakpoints are unavailable.\n"
159+
" Change the kernel CONFIG_DEBUG_RODATA=n\n"
160+
" OR use hw breaks: help bph\n");
161+
}
162+
#endif
156163
return 1;
157164
}
158165
return 0;

0 commit comments

Comments
 (0)