From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 68672 invoked by alias); 15 Mar 2016 17:24:40 -0000 Mailing-List: contact gdb-testers-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-testers-owner@sourceware.org Received: (qmail 68641 invoked by uid 89); 15 Mar 2016 17:24:39 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.4 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:1519 X-HELO: kwanyin.sergiodj.net Received: from kwanyin.sergiodj.net (HELO kwanyin.sergiodj.net) (176.31.208.32) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 15 Mar 2016 17:24:38 +0000 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [binutils-gdb/gdb-7.11-branch] Fix PR gdb/19676: Disable displaced stepping if /proc not mounted From: sergiodj+buildbot@sergiodj.net To: gdb-testers@sourceware.org Message-Id: <4e57eb7028442f0e771c815d755b64daf7394e68@gdb-build> Date: Tue, 15 Mar 2016 17:24:00 -0000 X-SW-Source: 2016-q1/txt/msg09046.txt.bz2 *** TEST RESULTS FOR COMMIT 4e57eb7028442f0e771c815d755b64daf7394e68 *** Author: Pedro Alves Branch: gdb-7.11-branch Commit: 4e57eb7028442f0e771c815d755b64daf7394e68 Fix PR gdb/19676: Disable displaced stepping if /proc not mounted On GNU/Linux archs that support displaced stepping, if /proc is not mounted, GDB gets stuck not able to step past breakpoints: (gdb) c Continuing. dl_main (phdr=, phnum=, user_entry=, auxv=) at rtld.c:2163 2163 LIBC_PROBE (init_complete, 2, LM_ID_BASE, r); Cannot find AT_ENTRY auxiliary vector entry. (gdb) c Continuing. dl_main (phdr=, phnum=, user_entry=, auxv=) at rtld.c:2163 2163 LIBC_PROBE (init_complete, 2, LM_ID_BASE, r); Cannot find AT_ENTRY auxiliary vector entry. (gdb) That's because GDB can't figure out where the scratch pad is. This is a regression introduced by the earlier changes to make the Linux native target always work in non-stop mode. This commit makes GDB detect the case and fallback to stepping over breakpoints in-line. gdb/ChangeLog: 2016-03-15 Pedro Alves PR gdb/19676 * infrun.c (displaced_step_prepare): Also disable displaced stepping on NOT_SUPPORTED_ERROR. * linux-tdep.c (linux_displaced_step_location): If reading auxv fails, throw NOT_SUPPORTED_ERROR instead of generic error.