From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 103029 invoked by alias); 19 Feb 2016 14:36:43 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 101771 invoked by uid 89); 19 Feb 2016 14:36:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=Step, spawned, Hx-languages-length:1959, reformat X-HELO: mail-pa0-f54.google.com Received: from mail-pa0-f54.google.com (HELO mail-pa0-f54.google.com) (209.85.220.54) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Fri, 19 Feb 2016 14:36:41 +0000 Received: by mail-pa0-f54.google.com with SMTP id fy10so51277830pac.1 for ; Fri, 19 Feb 2016 06:36:40 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id; bh=CU7A4Q9tvkbLi5MLdt+1gbsrslSr2zo499YX4+dqe5Q=; b=le3YeuQgKEFjDJqwmo+CJ6wTbRmzLwA6laglHWxFPRBhXBBjkOICKP+2hbQ8kT4aTz UuYshK/+Fh5WkaD/RnXA5EBFtx09b3RgeCYoptSauMrEZAHNb08eFSf0pqxE1uTAvWDJ xy899pNuGTvsTiJwdg+q9uyELRGpoiuaouCMcRLAvnHu3lfXDbWivxJFDmQgfT+SkTp4 4gZKPq/vQbYk0OXPaOkRLjgjZi8y8s19lOQZQXmHuOJIjjruliQe+2JVnpzrNjJCP3xB TNtTLmsFmm0N6khLFJ/TXmGfwz1NRE5CyJ1BAiuLWs4npJAGvAFlIA3OoyhQQ96Tqunf rjjg== X-Gm-Message-State: AG10YOSLZKII3zwh4+RA62d6g2pBSyKB3gepdPfNNoysyXtFxlgBzKYvQrt7Mhk5wKd5Xw== X-Received: by 10.66.218.196 with SMTP id pi4mr18546944pac.147.1455892599355; Fri, 19 Feb 2016 06:36:39 -0800 (PST) Received: from E107787-LIN.cambridge.arm.com (gcc1-power7.osuosl.org. [140.211.15.137]) by smtp.gmail.com with ESMTPSA id kq3sm18452546pab.24.2016.02.19.06.36.37 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 19 Feb 2016 06:36:38 -0800 (PST) From: Yao Qi X-Google-Original-From: Yao Qi To: gdb-patches@sourceware.org Subject: [PATCH 0/8] Leave child suspended when step over parent Date: Fri, 19 Feb 2016 14:36:00 -0000 Message-Id: <1455892594-2294-1-git-send-email-yao.qi@linaro.org> X-IsSubscribed: yes X-SW-Source: 2016-02/txt/msg00591.txt.bz2 When I teach GDBserver on arm-linux handling single step requested by GDB (via vCont;s), I see a GDBserver internal error. I can also reproduce this internal error on mainline GDBserver as well. In short, the internal error is triggered by the child's incorrect suspend count, because it is spawned by the parent and GDBserver is stepping the parent over a breakpoint. See more in patch #1. Patches #2 to #8 are about refactoring and extending test case to reproduce the internal error I've see. Regression tested on x86_64-linux. *** BLURB HERE *** Yao Qi (8): [GDBserver] Leave child suspended when step over parent Refactor gdb.base/disp-step-syscall.exp for general step over test Use loop in disp-step-fork.c and disp-step-vfork.c Step over syscalll insn with disp-step on and off Step over fork/vfork syscall insn in gdbserver Reformat disp-step-syscall.exp Rename disp-step-syscall.exp to step-over-syscall.exp New test about step over clone syscall gdb/gdbserver/linux-low.c | 14 +- gdb/testsuite/gdb.base/disp-step-fork.c | 58 ------- gdb/testsuite/gdb.base/disp-step-syscall.exp | 154 ------------------ gdb/testsuite/gdb.base/disp-step-vfork.c | 70 --------- gdb/testsuite/gdb.base/step-over-clone.c | 53 +++++++ gdb/testsuite/gdb.base/step-over-fork.c | 43 +++++ gdb/testsuite/gdb.base/step-over-syscall.exp | 225 +++++++++++++++++++++++++++ gdb/testsuite/gdb.base/step-over-vfork.c | 47 ++++++ 8 files changed, 377 insertions(+), 287 deletions(-) delete mode 100644 gdb/testsuite/gdb.base/disp-step-fork.c delete mode 100644 gdb/testsuite/gdb.base/disp-step-syscall.exp delete mode 100644 gdb/testsuite/gdb.base/disp-step-vfork.c create mode 100644 gdb/testsuite/gdb.base/step-over-clone.c create mode 100644 gdb/testsuite/gdb.base/step-over-fork.c create mode 100644 gdb/testsuite/gdb.base/step-over-syscall.exp create mode 100644 gdb/testsuite/gdb.base/step-over-vfork.c -- 1.9.1