[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Fri, 22 Feb 2013 17:39:11 -0800
From: Yinghai Lu <yinghai@...nel.org>
To: Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
Cc: "H. Peter Anvin" <hpa@...or.com>,
"H. Peter Anvin" <hpa@...ux.intel.com>,
Stefano Stabellini <stefano.stabellini@...citrix.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [GIT PULL] x86/mm changes for v3.9-rc1
[ trim cc list]
On Fri, Feb 22, 2013 at 5:27 PM, Konrad Rzeszutek Wilk
<konrad.wilk@...cle.com> wrote:
>> > static int xen_pgd_alloc(struct mm_struct *mm)
>> > {
>> > pgd_t *pgd = mm->pgd;
>> > @@ -2105,7 +2143,7 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
>> > #ifdef CONFIG_X86_32
>> > .write_cr3 = xen_write_cr3_init,
>> > #else
>> > - .write_cr3 = xen_write_cr3,
>> > + .write_cr3 = xen_write_cr3_init,
>> > #endif
>>
>> ah, why do you still keep the #ifdef here?
>>
>> how about if we call load_cr3 early several times?
>> assume you should make xen_write_cr3 more robust,
>> like bailing out early when cr3 writing same value.
>
> I would welcome such patch - but at this point I just want a
> patch for Linus so that I am not blocking him - and this
> one works.
come on, you produce
#ifdef CONFIG_X86_32
.write_cr3 = xen_write_cr3_init,
#else
.write_cr3 = xen_write_cr3_init,
#endif
for the fix, Linus should just apply attached patch instead.
>>
>> Also you should check condition about calling xen_get_user_pgd().
>
> Could you elaborate please?
only call xen_get_user_pgd() when it should be called.
Yinghai
Download attachment "fix_xen_cr3.patch" of type "application/octet-stream" (537 bytes)
Powered by blists - more mailing lists