On 2013-06-28 20:26, Paolo Bonzini wrote: > This lets us get a consistent (phys_map, nodes, sections) using > RCU. After this patch, cur_map is not used anymore except for freeing > it at the end of the topology update. > > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> > --- > exec.c | 28 +++++++++++++++++----------- > 1 file changed, 17 insertions(+), 11 deletions(-) > > diff --git a/exec.c b/exec.c > index 0d852ee..581f0c4 100644 > --- a/exec.c > +++ b/exec.c > @@ -94,11 +94,15 @@ struct PhysPageEntry { > uint16_t ptr : 15; > }; > > +typedef PhysPageEntry Node[L2_SIZE]; > + > struct AddressSpaceDispatch { > /* This is a multi-level map on the physical address space. > * The bottom level has pointers to MemoryRegionSections. > */ > PhysPageEntry phys_map; > + Node *nodes; > + MemoryRegionSection *sections;
Why not sticking the whole current PhysPageMap into here? Wouldn't that also allow to overcome prev_map completely (next patch)? Jan -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux