What''s the intent to recreate monitor page table when shadow levels changes in sh_update_paging_modes? -Xin _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
At 10:13 +0800 on 18 Apr (1176891228), Li, Xin B wrote:> What''s the intent to recreate monitor page table when shadow levels > changes in sh_update_paging_modes?The monitor tables have to have a different layout in different shadow paging modes so that linear maps of the shadows can work properly. Cheers, Tim. -- Tim Deegan <Tim.Deegan@xensource.com>, XenSource UK Limited Registered office c/o EC2Y 5EB, UK; company number 05334508 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 18/4/07 03:13, "Li, Xin B" <xin.b.li@intel.com> wrote:> What''s the intent to recreate monitor page table when shadow levels > changes in sh_update_paging_modes? > -XinThe format of the monitor table depends on the guest and/or shadow paging levels, doesn''t it? So presumably the easiest way to tackle that is to regenerate the monitor table from scratch. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
>At 10:13 +0800 on 18 Apr (1176891228), Li, Xin B wrote: >> What''s the intent to recreate monitor page table when shadow levels >> changes in sh_update_paging_modes? > >The monitor tables have to have a different layout in different shadow >paging modes so that linear maps of the shadows can work properly. >On x86_64, monitor page table should always be 4 level, and we can uninstall the old shadow linear entry and install new shadow paging mode entry, why even recreate the monitor top level page? -Xin _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 18/4/07 16:46, "Li, Xin B" <xin.b.li@intel.com> wrote:>> At 10:13 +0800 on 18 Apr (1176891228), Li, Xin B wrote: >>> What''s the intent to recreate monitor page table when shadow levels >>> changes in sh_update_paging_modes? >> >> The monitor tables have to have a different layout in different shadow >> paging modes so that linear maps of the shadows can work properly. >> > > On x86_64, monitor page table should always be 4 level, and we can > uninstall the old shadow linear entry and install new shadow paging mode > entry, why even recreate the monitor top level page?It could probably be optimised, but is it worth it? -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hi :) At 23:46 +0800 on 18 Apr (1176940011), Li, Xin B wrote:> On x86_64, monitor page table should always be 4 level, and we can > uninstall the old shadow linear entry and install new shadow paging mode > entry, why even recreate the monitor top level page?We could have made a routine to adjust the layout of the monitor table given the old and new modes, but it would have to understand two modes at once, which nothing else in multi.c does. It would also reproduce code that''s already in sh_make_monitor_table and sh_destroy_monitor_table. Since we don''t expect it to be worth optimizing this path, we just used the existing routines. Cheers, Tim. -- Tim Deegan <Tim.Deegan@xensource.com>, XenSource UK Limited Registered office c/o EC2Y 5EB, UK; company number 05334508 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
>At 23:46 +0800 on 18 Apr (1176940011), Li, Xin B wrote: >> On x86_64, monitor page table should always be 4 level, and we can >> uninstall the old shadow linear entry and install new shadow >paging mode >> entry, why even recreate the monitor top level page? > >We could have made a routine to adjust the layout of the monitor table >given the old and new modes, but it would have to understand two modes >at once, which nothing else in multi.c does. It would also reproduce >code that''s already in sh_make_monitor_table andsh_destroy_monitor_table.>Since we don''t expect it to be worth optimizing this path, we just used >the existing routines.Thanks Quite clear to me now :-) -Xin _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel