This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug testsuite/14071] Unstable GDB test results due to change indl_debug_state()


http://sourceware.org/bugzilla/show_bug.cgi?id=14071

--- Comment #1 from Vinitha Vijayan <jiji.vinitha at gmail dot com> 2012-05-17 06:15:53 UTC ---
Hi,

Some more findings regarding the above failed testcase scenario.

In FAIL cases it is observed that the single step breakpoint inserted after
hitting breakpoint at dl_debug_state (  @bx lr ), is not being hit and the
binary completes execution without stopping at any breakpoints.

Verified the kernel code (arch/arm/kernel/ptrace.c and
arch/arm/kernel/traps.c).

After debugging the kernel found that in FAIL case , kernel does not enter the
undefined instruction handler(do_undefinstr() in traps.c), in case of the
single step breakpoint inserted at dl_main after first dl_debug_state call.
GDB is writing breakpoint instruction 0xa000f7f0 to the location.

When the testcase is passing, kernel enters this function.
It seems there is some timing issue in SMP kernel environment.

When the breakpoint at dl_debug_state and single_step breakpoint inserted after
hitting that, are in same function , this testcases shows stable results.

(I have tested by putting a single nop before the bx lr instruction in
dl_debug_state.It works fine ).

Any comments?

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]