This is the mail archive of the gdb@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: PRecord sets memory even when it says it did not


Marc Khouzam wrote:


-----Original Message-----
From: Pedro Alves [mailto:pedro@codesourcery.com] Sent: Monday, September 14, 2009 1:50 PM
To: gdb@sourceware.org
Cc: Greg Law; Hui Zhu; Marc Khouzam; Michael Snyder; gdb-patches ml
Subject: Re: PRecord sets memory even when it says it did not


Could this be related to the caching changes that have happened
recently? i.e. does the cache get updated even though the
underlying
poke operation failed? If so, this issue would seem to be
wider than
just prec (and wider than reverse, too).
If so, then there's an easy way to find out: try again with
"set stack-cache off".


Yes, that seems to fix everything.

That's the change, and here's the problem I think: target.c::memory_xfer_partial calls dcache_xfer_memory and dcache_update before calling ops->to_xfer_partial.

In this case, record_xfer_partial errors out, (because of
a query, but for this or other targets it could error out
for other reasons).  But there is no cleanup in place to
back out the change that has already been made in the
dcache.

Michael



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