From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11772 invoked by alias); 20 Nov 2008 08:33:10 -0000 Received: (qmail 11726 invoked by uid 22791); 20 Nov 2008 08:33:08 -0000 X-Spam-Check-By: sourceware.org Received: from ti-out-0910.google.com (HELO ti-out-0910.google.com) (209.85.142.189) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 20 Nov 2008 08:32:30 +0000 Received: by ti-out-0910.google.com with SMTP id d10so178712tib.12 for ; Thu, 20 Nov 2008 00:32:27 -0800 (PST) Received: by 10.110.69.5 with SMTP id r5mr2547597tia.36.1227169947467; Thu, 20 Nov 2008 00:32:27 -0800 (PST) Received: by 10.110.103.3 with HTTP; Thu, 20 Nov 2008 00:32:27 -0800 (PST) Message-ID: Date: Thu, 20 Nov 2008 16:37:00 -0000 From: teawater To: "Pedro Alves" Subject: Re: [RFA] Resubmit process record and replay, 7/10 Cc: gdb-patches@sourceware.org In-Reply-To: <200811200250.22173.alves.ped@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <200811200240.47107.pedro@codesourcery.com> <200811200250.22173.alves.ped@gmail.com> 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: 2008-11/txt/msg00549.txt.bz2 Thanks Pedro, Agree with your idea in record_wait part. Actually, I plan to do it after P record check-in in the before. Now, I will do it at once. :) On the other hand, could you let me keep the code in linux-nat.c. Because I think it can make linux-nat record speed up. What about write a special function to check the breakpoint? Then both linux-nat and record_wait can call it. Hui On Thu, Nov 20, 2008 at 10:50, Pedro Alves wrote: > On Thursday 20 November 2008 02:40:46, Pedro Alves wrote: > >> Can you please try moving all this blob... > > [...] > >> ... to the record target? It seems to be interested in getting >> *all* events, instead of letting linux_nat_wait filter some. > > Sorry, reading back, I don't think I explained myself that well. I meant > something like: > > ptid_t > record_wait (ptid_t ptid, target_waitstatus *status) > { > while (1) > { > eptid = beneath->to_wait (ptid, &status); > > if (status.kind == TARGET_WAITKIND_TRAP) > { > if breakpoint_here (pc - pc_adjustement) > { > got breakpoint; > break; > } > record_message (); > beneath->resume (step); > } > else > break probably. > } > > if (got breakpoint) > adjust_pc; > return eptid; > } > > -- > Pedro Alves >