From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19294 invoked by alias); 14 Nov 2014 23:18:27 -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 19284 invoked by uid 89); 14 Nov 2014 23:18:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.1 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 14 Nov 2014 23:18:26 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id sAENIMoF015257 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 14 Nov 2014 18:18:23 -0500 Received: from localhost (dhcp-10-15-16-169.yyz.redhat.com [10.15.16.169]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id sAENIMOq026042 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NO); Fri, 14 Nov 2014 18:18:22 -0500 From: Sergio Durigan Junior To: Pedro Alves Cc: GDB Patches , Gabriel Krisman Bertazi Subject: Re: [PATCH 2/3] Adjust calls for setting "catch syscall" information References: <1415837887-28888-1-git-send-email-sergiodj@redhat.com> <1415837887-28888-3-git-send-email-sergiodj@redhat.com> <54662585.5070205@redhat.com> X-URL: http://blog.sergiodj.net Date: Fri, 14 Nov 2014 23:18:00 -0000 In-Reply-To: <54662585.5070205@redhat.com> (Pedro Alves's message of "Fri, 14 Nov 2014 15:53:41 +0000") Message-ID: <87a93t74n5.fsf@redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-IsSubscribed: yes X-SW-Source: 2014-11/txt/msg00346.txt.bz2 On Friday, November 14 2014, Pedro Alves wrote: > On 11/13/2014 12:18 AM, Sergio Durigan Junior wrote: >> --- a/gdb/breakpoint.c >> +++ b/gdb/breakpoint.c >> @@ -8607,10 +8607,11 @@ print_it_catch_syscall (bpstat bs) >> ptid_t ptid; >> struct target_waitstatus last; >> struct syscall s; >> + struct gdbarch *gdbarch = target_gdbarch (); > > I think this would better be bs->bp_location_at->gdbarch . > >> @@ -8653,6 +8654,7 @@ print_one_catch_syscall (struct breakpoint *b, >> struct syscall_catchpoint *c = (struct syscall_catchpoint *) b; >> struct value_print_options opts; >> struct ui_out *uiout = current_uiout; >> + struct gdbarch *gdbarch = target_gdbarch (); > > Here, we can use b->loc->gdbarch. > > Later, to handle the case "catch syscall open" with multiple > inferiors of different archs, I think we'll end up with a > location for each inferior, or for each arch, and we'll iterate > over locations here. For now, I think we can assume there's only > one location. Hm, thanks for this insight. I was already wondering the best way to deal with this problem. I will give it a try later. > Similarly for other places. > >> @@ -15343,7 +15348,7 @@ static VEC (char_ptr) * >> catch_syscall_completer (struct cmd_list_element *cmd, >> const char *text, const char *word) >> { >> - const char **list = get_syscall_names (); >> + const char **list = get_syscall_names (target_gdbarch ()); >> VEC (char_ptr) *retlist >> = (list == NULL) ? NULL : complete_on_enum (list, word, word); > > This one is handling user input, so should be "get_current_arch ()": > > /* Return "current" architecture. If the target is running, this is > the architecture of the selected frame. Otherwise, the "current" > architecture defaults to the target architecture. > > This function should normally be called solely by the command > interpreter routines to determine the architecture to execute a > command in. */ > struct gdbarch * > get_current_arch (void) Thanks for the review. I fixed all the issues. I will concentrate on the testcase now in order to get this patch in. -- Sergio GPG key ID: 0x65FC5E36 Please send encrypted e-mail if possible http://sergiodj.net/