From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 569 invoked by alias); 17 Sep 2014 11:23:39 -0000 Mailing-List: contact gdb-prs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-prs-owner@sourceware.org Received: (qmail 541 invoked by uid 48); 17 Sep 2014 11:23:39 -0000 From: "martin at minimum dot se" To: gdb-prs@sourceware.org Subject: [Bug gdb/17384] android arm gdb "Cannot access memory at address" when I "stepi" over "blx" Date: Wed, 17 Sep 2014 11:23:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gdb X-Bugzilla-Component: gdb X-Bugzilla-Version: unknown X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: martin at minimum dot se X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-q3/txt/msg00679.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=17384 --- Comment #10 from molsson --- I put a breakpoint just below the comment "We have no symbol information" that I mentioned earlier, and then I ran the code on an AOSP device. And indeed that block runs even on AOSP. So presence of debuginfo doesn't seem to be what makes the behavioral difference in AOSP vs non-AOSP; making what you said about optimization levels an even more likely explanation. >>From a high-level perspective it feels wrong to force the user to recompile/reinstall his OS just to be able to debug his application; so it would be really nice if some ARM expert tagged along and asked me the right questions to allow us to tweak the heuristics sufficiently. --- Also, regarding safe_read_memory_integer() printing errors I should say that there is more to that part of the bug than just the fact that the error is printed. This is because after I type "next" and get the error, I cannot just run "next" again; at that point gdb just constantly prints "Cannot find bounds of current function" and refuses to move forward; like this: Breakpoint 1, blink::RenderFullScreen::createPlaceholder (this=0x34038100, style=..., frameRect=...) at ../../third_party/WebKit/Source/core/rendering/RenderFullScreen.cpp:188 188 if (style->width().isAuto()) (gdb) n Cannot access memory at address 0x1 0x4e128838 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) n Cannot find bounds of current function (gdb) ...however, if I run "stepi" three times consecutively I can get out of this weird state and make gdb get "unstuck" (until the next function call where it typically gets "stuck" again, needing more "stepi" to continue). Like this: Breakpoint 1, blink::RenderFullScreen::createPlaceholder (this=0x80238100, style=..., frameRect=...) at ../../third_party/WebKit/Source/core/rendering/RenderFullScreen.cpp:188 188 if (style->width().isAuto()) (gdb) n 0x7a6c5838 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) n Cannot find bounds of current function (gdb) n Cannot find bounds of current function (gdb) stepi 0x7a6c583c in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) stepi 0x7a6c5840 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) stepi WTF::RefPtr::get (this=0x0) at ../../third_party/WebKit/Source/wtf/OwnPtr.h:71 71 PtrType get() const { return m_ptr; } (gdb) n 0x7a6bff00 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) stepi 0x7a6bff04 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) stepi 0x7a6bff08 in ?? () from /media/ssd/src/opera/opera/chromium/src/out_generic_armv7/Debug/lib/libblink_web.cr.so (gdb) stepi blink::Length::isAuto (this=0x37a90ca8) at ../../third_party/WebKit/Source/platform/Length.h:274 274 bool isAuto() const { return type() == Auto; } (gdb) n blink::RenderFullScreen::createPlaceholder (this=0x80238100, style=..., frameRect=...) at ../../third_party/WebKit/Source/core/rendering/RenderFullScreen.cpp:189 189 style->setWidth(Length(frameRect.width(), Fixed)); (gdb) n -- You are receiving this mail because: You are on the CC list for the bug.