From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19888 invoked by alias); 24 Oct 2019 10:38:53 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 19878 invoked by uid 89); 24 Oct 2019 10:38:53 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=dear, Dear, HContent-Transfer-Encoding:8bit X-HELO: mail-qk1-f193.google.com Received: from mail-qk1-f193.google.com (HELO mail-qk1-f193.google.com) (209.85.222.193) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 24 Oct 2019 10:38:52 +0000 Received: by mail-qk1-f193.google.com with SMTP id p10so22924453qkg.8 for ; Thu, 24 Oct 2019 03:38:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=xE3UdGjbcZDy1o0kaXYnxOaDEt80mMeQUAUh+6zwUes=; b=UcGUXwEaGHCytWvVyDsNubAwcmKrBd8ABVmZRNgq3npCrJ4LIahq8tdPbo1jp0xOCk c0g2B6ogNkvCebAZxuXdY+HDXOy24IyGn4B84ZNYSOm18cCw5gl1a2VYxPdtF9D1rHPS eJ8tVsoUmL/ibHM1oF0g8tg+z++t16so3HD2dP1kv3qoCNncea914cT7mw7Iw3mZa4Ty /zeLnDdLHYL477lpZE1UUS5T5wxVUWhEAuM3vmyyu7kJXR5Nik7mE8EZY3CGkSgIu2kv N0f+KwHkWh1sO7EQaH99vTsYKEMVljom45VbitSxvgmSZmbxtSr3KyQV1xZCP84jyysq FuQw== Return-Path: Received: from [192.168.15.21] (201-42-175-128.dsl.telesp.net.br. [201.42.175.128]) by smtp.gmail.com with ESMTPSA id h44sm5174717qtc.1.2019.10.24.03.38.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 24 Oct 2019 03:38:48 -0700 (PDT) Subject: Re: gdbserver for arm does not support multi-process debugging To: =?UTF-8?B?5YiY5bq3?= Cc: gdb@sourceware.org References: <6fea79cd.5d47.16dd85f053a.Coremail.lkang0305@163.com> <73071c36-cbe3-aacf-36fe-4097dc6a0817@linaro.org> <3cb2ee7c.59f4.16dfc404ae2.Coremail.lkang0305@163.com> From: Luis Machado Message-ID: <934889b6-c654-76ab-a4ca-48b515e24859@linaro.org> Date: Thu, 24 Oct 2019 10:38:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <3cb2ee7c.59f4.16dfc404ae2.Coremail.lkang0305@163.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2019-10/txt/msg00040.txt.bz2 Hi, I just ran a quick check (foll-fork.exp and follow-vfork.exp tests) on a arm machine and things worked as expected. What version of GDB/kernel are you using? On 10/24/19 2:32 AM, 刘康 wrote: > Hi Luis, > > Yes, I know that gdbserver willcatch PTRACE_EVENT_FORK in > gdb/gdbserver/linux-low.c:handle_extended_wait and get the child > process's pid via PTRACE_GETEVENTMSG. > > I found the way of X86 version gdb to deal with PTRACE_EVENT_FORKwill > set waitstatus toTARGET_WAITKIND_FORKED and add a new inferior .What's > more ,it can trace child/parent process automatically as long as I set > "follow-fork-mode" to "child" or "parent". > > But it seems like gdbserver will not tell PTRACE_EVENT_FORK to thehost > arm-XXX-gdb this event ,as a result , user cannot trace child process or > add a new inferior no matter what value of "detach-on-fork off" and > "follow-fork-mode" I have tried. > > At 2019-10-18 20:27:19, "Luis Machado" wrote: >>Hi, >> >>On 10/17/19 3:19 AM, 刘康 wrote: >>> Dear gdb@sourceware.org >>> >>> >>> I am researching the gdbserver's source code for ARM, what confused me is that it does not support multi-process to debug the target's child process, cause it dose not interesting in PTRACE_EVENT_FORK, I don't know whether it's a bug or it's just a feature by design. >> >>The handling of PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK and >>PTRACE_EVENT_CLONE is in generic linux code. See >>gdb/gdbserver/linux-low.c:handle_extended_wait. >> >>As long as the kernel supports reporting such events via ptrace and we >>are debugging using extended remote mode (not regular remote mode), it >>should work. If it doesn't, then we may have a problem that we should fix. >> >>Does that answer your question? >> >>Luis > > >