From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20292 invoked by alias); 25 Sep 2013 22:55:08 -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 20279 invoked by uid 89); 25 Sep 2013 22:55:08 -0000 Received: from mailrelay004.isp.belgacom.be (HELO mailrelay004.isp.belgacom.be) (195.238.6.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 25 Sep 2013 22:55:08 +0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: Yes, score=5.6 required=5.0 tests=AWL,BAYES_00,CK_HELO_DYNAMIC_SPLIT_IP,HELO_DYNAMIC_SPLIT_IP,SPAM_SUBJECT,SPF_SOFTFAIL,TVD_RCVD_IP autolearn=no version=3.3.2 X-HELO: mailrelay004.isp.belgacom.be X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApMBAJZpQ1JtgOus/2dsb2JhbAANTYc6vSuBMoMZAQEBBCNWEAsSBgICJgICSQ4GsSJ1kkeBKY4oB4JogTUDrRk Received: from 172.235-128-109.adsl-dyn.isp.belgacom.be (HELO [192.168.1.5]) ([109.128.235.172]) by relay.skynet.be with ESMTP; 26 Sep 2013 00:54:44 +0200 Subject: Re: RFA [PATCH v3] Implement 'catch syscall' for gdbserver From: Philippe Waroquiers To: Sergio Durigan Junior Cc: "Agovic, Sanimir" , "gdb-patches@sourceware.org" In-Reply-To: References: <1379796907.5980.20.camel@soleil> <0377C58828D86C4588AEEC42FC3B85A717680EC1@IRSMSX105.ger.corp.intel.com> <1379964754.2226.6.camel@soleil> <0377C58828D86C4588AEEC42FC3B85A7176814E1@IRSMSX105.ger.corp.intel.com> Content-Type: text/plain; charset="UTF-8" Date: Wed, 25 Sep 2013 22:55:00 -0000 Message-ID: <1380149686.2338.136.camel@soleil> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2013-09/txt/msg00909.txt.bz2 On Wed, 2013-09-25 at 13:55 -0300, Sergio Durigan Junior wrote: > On Tuesday, September 24 2013, Sanimir Agovic wrote: > > >> > Is it sufficient to assign sysno/sysret to 0 to indicate missing 'catch syscall' > >> > functionality? Both values seem legal to me. > >> The idea is that will be used in case the user forces the use of the > >> QCatchSyscalls packet. So, I think it is better to return "valid" (but > >> not used) values : I do not think there is a syscall nr 0. > >> > > gdb -batch -ex 'set architecture i386:x86-64' -ex 'catch syscall 0' > > The target architecture is assumed to be i386:x86-64 > > Catchpoint 1 (syscall 'read' [0]) > > > > I just wanted to make sure that we do not report any false syscalls. > > Thus I checked syscall 0 in gdb on amd64 which is mapped to 'read'. > > Thanks for catching that. I guess I had to solve the same problem for > the native "catch syscall". If you look at the UNKNOWN_SYSCALL define > (it's on gdbarch.h), you'll see that I have chosen the value of -1. I > guess you could use the same trick, Philippe. WDYT? I tested with the 0 value, and effectively that gives a "read" syscall on x86-64, which is not ideal, even if that would happen only when the user does something strange (forcing to activate a packet with a gdbserver which has not reported it can handle such packet). -1 looks a good "bad" value, assuming that the gdb+protocol+gdbserver will be able to "correctly" handle negative numbers. I will test this behaviour (probably this WE). Also, ping ... : if before this WE, a maintainer reviews the patch, I will be more than happy to handle the comments :) Philippe