From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29636 invoked by alias); 25 Feb 2012 19:40:44 -0000 Received: (qmail 29621 invoked by uid 22791); 25 Feb 2012 19:40:42 -0000 X-SWARE-Spam-Status: No, hits=-6.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 25 Feb 2012 19:40:30 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q1PJeQ7l014877 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 25 Feb 2012 14:40:27 -0500 Received: from host2.jankratochvil.net (ovpn-116-19.ams2.redhat.com [10.36.116.19]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id q1PJeMhi019093 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Sat, 25 Feb 2012 14:40:25 -0500 Date: Sat, 25 Feb 2012 19:41:00 -0000 From: Jan Kratochvil To: Luis Gustavo Cc: gdb-patches@sourceware.org Subject: Re: General regressions in gdbserver mode [Re: [rfc target-side break conditions 0/5 v2] General info] Message-ID: <20120225194022.GA16174@host2.jankratochvil.net> References: <4F2309F1.1020703@mentor.com> <4F47ABCF.9020305@mentor.com> <20120225142037.GA26330@host2.jankratochvil.net> <4F4900CB.8010606@mentor.com> <20120225170610.GA31657@host2.jankratochvil.net> <4F49277A.70400@mentor.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F49277A.70400@mentor.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes 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 X-SW-Source: 2012-02/txt/msg00616.txt.bz2 On Sat, 25 Feb 2012 19:24:58 +0100, Luis Gustavo wrote: > Could please try the following on your side? Yes, it works for me. Please check it in, it fixes the regression. > --- a/gdb/gdbserver/mem-break.c > +++ b/gdb/gdbserver/mem-break.c > @@ -726,20 +726,19 @@ void > clear_gdb_breakpoint_conditions (CORE_ADDR addr) > { > struct breakpoint *bp = find_gdb_breakpoint_at (addr); > - struct point_cond_list *cond, **cond_p; > + struct point_cond_list *cond, *cond_next; > > if (bp == NULL || bp->cond_list == NULL) > return; > > cond = bp->cond_list; > - cond_p = &bp->cond_list->next; > > while (cond != NULL) > { cond_next could be decllared inside in this block. > + cond_next = cond->next; Isn't missing here also? free (cond->cond->bytes); > free (cond->cond); > free (cond); > - cond = *cond_p; > - cond_p = &cond->next; > + cond = cond_next; > } > > bp->cond_list = NULL; Thanks, Jan