This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] Resubmit process record and replay, 6/10


Hi,

I make a tmp patch to make this idea clear.  It test with testsuite is OK.

And I still didn't change "record_not_record_set" cause I didn't have
idea on it.

Thanks,
Hui




On Wed, Nov 26, 2008 at 10:33, teawater <teawater@gmail.com> wrote:
> Sorry I forget a big part that need it.
> When GDB work in replay mode, P record will set regs and memory in
> record_wait. All of them can't be record.
>
> So what about set not_record flag to record_wait in replay mode,
> record_insert_breakpoint and record_remove_breakpoint.
>
> And about the name of this flag, do you have some idea on it?
>
>
> Thanks,
> Hui
>
>
> On Wed, Nov 26, 2008 at 02:22, Michael Snyder <msnyder@vmware.com> wrote:
>> teawater wrote:
>>>
>>> On Tue, Nov 25, 2008 at 03:16, Michael Snyder <msnyder@vmware.com> wrote:
>>>>
>>>> teawater wrote:
>>>>>
>>>>> Hi Michael,
>>>>>
>>>>> About "record_not_record_set", It set record_not_record to let P
>>>>> record doesn't record the memory and registers control behaviors of
>>>>> GDB in function record_store_registers and record_xfer_partial.
>>>>>
>>>>> So I think the name "record_not_record_set" and
>>>>> "record_skip_recording" are not very clear.
>>>>> Could you please give me some advices on it?
>>>>
>>>> Yeah, that's pretty much the way I understood it.
>>>>
>>>> It sets a one-time flag that says "omit (skip) recording
>>>> registers and memory that would otherwise be recorded".
>>>>
>>>> And if I understand correctly, this is to avoid adding
>>>> changes to the record log that are made by gdb when it
>>>> resumes the target.  It's only called from "proceed()".
>>>>
>>>> I'm not completely clear on what those changes are.
>>>> Is gdb modifying the PC?  Or are you perhaps trying to
>>>> avoid recording breakpoints?
>>>
>>> I think avoid recording breakpoints is the main affect.
>>> Another function is help deal with displaced step. Of course, P record
>>> and displaced step will not work together now.
>>>
>>> I think I add "record_not_record" function is because I want
>>> record_store_registers and record_xfer_partial just record the user
>>> level change, not for others.
>>> What do you think about it?
>>
>> OK, so if we ignore displaced stepping for now, then can we
>> limit the issue to breakpoints?
>>
>> Breakpoint writes will all pass through functions called
>> memory_insert_breakpoint and memory_remove_breakpoint (mem-break.c).
>>
>> So what we want to do is get the information from there into
>> record.c.  I guess you could do pretty much what you are doing
>> now, only call the access function from mem-break.c instead of
>> from infrun.  It would help to localize it and make its meaning
>> clear.
>>
>> Maybe call it "dont_record_memory_breakpoint" or something like that.
>>
>>
>

Attachment: tmp-skip.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]