All of lore.kernel.org
 help / color / mirror / Atom feed
* relationship of the auto_translated_physmap feature and the shadow_mode_translate mode of domain
@ 2008-05-30 14:45 HuYanyan
  2008-06-02  8:38 ` Tim Deegan
  0 siblings, 1 reply; 3+ messages in thread
From: HuYanyan @ 2008-05-30 14:45 UTC (permalink / raw)
  To: xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 2179 bytes --]

Hi All,

    I'm studing the memory management of Xen, I noticed the Domain0
kernel(Linux) declared its features in the .section __xen_guest, just like
this:

 

/*linux-2.6-xen-sparse/arch/i386/kernel/head-xen.S*/

         .ascii  ",FEATURES=writable_page_tables"

         .ascii                  "|writable_descriptor_tables"

         .ascii                  "|auto_translated_physmap"

         .ascii                  "|pae_pgdir_above_4gb"

         .ascii                  "|supervisor_mode_kernel"

 

   All these features information will be parsed by xen before the domain0
kernel image was loaded, and I noticed when the hypervisor responded to the
HYPERVISOR_xen_version(XENVER_get_features, &fi) hypercall of domain0, it
will check the PG_translate and PG_SH_enable flags of d->arch.paging.mode of
the calling domain to determine how to fill the output parameter fi, just
like this:

 

/*xen/common/kernel.c*/

if ( shadow_mode_translate(current->domain) )

                fi.submap |= 

                    (1U << XENFEAT_writable_page_tables) |

                    (1U << XENFEAT_auto_translated_physmap);

 

    and domain0 kernel will use this information to determine how to set its
own feature flags, and whether to do the p2m and m2p translation between pfn
and mfn, the following is an example:

 

/*linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/maddr.h */

static inline unsigned long pfn_to_mfn(unsigned long pfn)

{

         if (xen_feature(XENFEAT_auto_translated_physmap))

                   return pfn;

         BUG_ON(max_mapnr && pfn >= max_mapnr);

         return phys_to_machine_mapping[pfn] & ~FOREIGN_FRAME_BIT;

} 

 

    What I want to know is whether there are some relationship between the
auto_translated_physmap feature and the shadow_mode_translate mode of
domain, do they have the same meaning? I think this feature will work(Guest
kernel do the p2m and m2p translation) only when the shadow mode of domain
is enabled, but this is not true for domain0 because it's a paravirtualized
domain, why did it still declare this feature? I am looking forward to your
response, thank you very much.

 

 

Regards,

HUYanyan

 


[-- Attachment #1.2: Type: text/html, Size: 9989 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-06-02 11:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-30 14:45 relationship of the auto_translated_physmap feature and the shadow_mode_translate mode of domain HuYanyan
2008-06-02  8:38 ` Tim Deegan
     [not found]   ` <1dca45610806020155x467f9571n214f1b1c38c41585@mail.gmail.com>
     [not found]     ` <4046dbfd0806020156r6ddc9ec4nc4f5fd73d3b6be67@mail.gmail.com>
     [not found]       ` <4046dbfd0806020432p3c1e02e5l2e13eda726e889b2@mail.gmail.com>
2008-06-02 11:49         ` Hu Yanyan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.