This is the mail archive of the
gdb-prs@sourceware.org
mailing list for the GDB project.
[Bug python/17837] New: python-injected silent breakpoints broken since 1a853c52
- From: "jan.kiszka at siemens dot com" <sourceware-bugzilla at sourceware dot org>
- To: gdb-prs at sourceware dot org
- Date: Tue, 13 Jan 2015 14:43:03 +0000
- Subject: [Bug python/17837] New: python-injected silent breakpoints broken since 1a853c52
- Auto-submitted: auto-generated
https://sourceware.org/bugzilla/show_bug.cgi?id=17837
Bug ID: 17837
Summary: python-injected silent breakpoints broken since
1a853c52
Product: gdb
Version: HEAD
Status: NEW
Severity: critical
Priority: P2
Component: python
Assignee: unassigned at sourceware dot org
Reporter: jan.kiszka at siemens dot com
I've stumbled over a regression of gdb since commit 1a853c52 (make "permanent
breakpoints" per location and disableable). My gdb python scripts [1] that load
Linux kernel module symbols as the target loads the modules now fail.
The involved command is lx-symbols [2]. It installs a silent breakpoint on a
kernel function that is called when a module is loaded. Before 1a853c52, the
python callback was normally invoked and the target continued to run. Since
af48d08f (1a853c52 is not testable), the int3 instruction (I'm testing with
x86) is left in the target, and garbage instructions are executed, causing a
kernel oops. The breakpoint is apparently not properly skipped (remove,
single-step, re-insert) when resuming the target on return from
LoadModuleBreakpoint.stop().
I can provide more details on how to set up a reproduction case but I
would only gather them when desired as that is not straightforward.
[1] https://lkml.org/lkml/2014/11/20/531
[2]
http://git.kiszka.org/?p=linux.git;a=blob;f=scripts/gdb/linux/symbols.py;h=bf05e451c58666add299061046bf1ceb9e82f4ef;hb=d92098e7cf60d31ccd025e56d20c23917ccd0819
--
You are receiving this mail because:
You are on the CC list for the bug.