Re: [patch 05/21] Xen-paravirt: paravirt_ops: allocate a fixmap slot

Dan Hecht
2007-02-14T02:35:06Z

On 02/13/2007 05:36 PM, Jeremy Fitzhardinge wrote:
> Dan Hecht wrote:
>> Why doesn't Xen allocate the shared_info page from the pseudo-physical
>> space? Doesn't it already have to steal pages from the
>> pseudo-physical space for e.g. initial page tables, console, etc? Why
>> not do the same for shared_info, and then you don't need a reserve the
>> fixmap slot.
>
> Unlike the pagetable pages or the console page, the shared info page
> doesn't have a pseudo-physical address, so in order to map it we need to
> directly construct a pte containing the mfn for that page.

Right. But that is only because Xen decides to allocate the page from
the (machine) physical space, rather than from the pseudo-physical
space. My question is: why doesn't Xen allocate shared_info from the
pseudo-physical space? If it had, then this page wouldn't need to be
treated specially. I'm not sure, but I seem to remember on 64-bit
Xen/XenLinux allocated shared_info from pseudo-physical space already...

Inserting
> this mapping into the fixmap space seems like the easiest way to do
> this. It's not like a fixmap slot costs anything.
>
>

I don't really have an objection to stealing a fixmap slot, just seems
cleaner if you didn't have to special case the shared_info.

Dan