Bug 432963 - [Memory] Cache associated to memory spaces context are not being reset
Summary: [Memory] Cache associated to memory spaces context are not being reset
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-debug-dsf-gdb (show other bugs)
Version: 8.3.0   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Marc Khouzam CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-16 15:42 EDT by Alvaro Sanchez-Leon CLA
Modified: 2015-09-30 13:14 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alvaro Sanchez-Leon CLA 2014-04-16 15:42:49 EDT
Currently the memory cache is built from block requests associated to a IMemoryDMContext. 

So when stop / resume events arrive the IMemoryContext is read and the corresponding entry in the cache is reset.

However, there can be child memory contexts in the form of IMemorySpaceDMContext, representing a memory space within a parent IMemoryDMContext. 
These memory space cache contexts will never be reset as only the parent IMemoryDMContext can be present in a suspend/resume event.

See e.g. eventDispatched(IResumedDMEvent e)

A proposed solution is to loop through all available context and reset its cache  if the IMemoryContext received in the event is an ancestor(parent) context.
Comment 1 Alvaro Sanchez-Leon CLA 2014-05-08 08:07:42 EDT
This is now available from the master branch 

Thanks for the thorough review Marc !
Comment 2 Alvaro Sanchez-Leon CLA 2015-09-30 13:14:47 EDT
Adding a missing Reference to Gerrit:
https://git.eclipse.org/r/#/c/25206/