lkml.org 
[lkml]   [2010]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] x86: use pgd accessors when cloning a pgd range.
From
Date
On Wed, 2010-10-27 at 18:42 +0100, H. Peter Anvin wrote:
> On 10/27/2010 10:31 AM, Jeremy Fitzhardinge wrote:
> > On 10/27/2010 10:18 AM, H. Peter Anvin wrote:
> >> On 10/27/2010 9:50 AM, Jeremy Fitzhardinge wrote:
> >>>
> >>> This never used to be a problem. Perhaps we can change how
> >>> clone_pgd_range is used at boot time to avoid it in the Xen case (since
> >>> we don't care about the secondary pagetable)?
> >>>
> >>
> >> Xen shouldn't have any users of this, since it's used for low-level
> >> operations like SMP bootstrap, suspend to RAM, reboot and low-level
> >> BIOS functionality.
> >>
> >
> > Right, but it is being called smack in the middle of setup_arch(). It
> > looks like they could be hidden away in
> > native_pagetable_setup_start/done though.
> >
>
> This is what makes me absolutely hate paravirt with a passion... "let's
> hid things away in <obscure place> and make it absolutely impossible to
> either follow the code flow or figure out what the intended semantics
> are supposed to be." (Let not even get me started on how ill-defined
> the semantics of some of the paravirt operations are.) In this case, at
> the most you need a single flag of state... or you could even just
> ignore this low-level data structure that you will never use in the
> first place. Ian's message just mentioned "a failure" and never
> described in any way what kind of "failure" it was.

That was vague of me, sorry about that. The failure was Xen shooting the
guest due to an attempt to write to swapper_pg_dir directly, which isn't
allowed for active pagetables under Xen.

Ian.




\
 
 \ /
  Last update: 2010-10-27 19:53    [W:0.325 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site