This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Re: Oops when loading xen_platform_pci module in HVM dom

To: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] Re: Oops when loading xen_platform_pci module in HVM domain on CS 11429
From: Steven Smith <sos22-xen@xxxxxxxxxxxxx>
Date: Fri, 8 Sep 2006 18:03:10 +0100
Cc: Steve Dobbelstein <steved@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, sos22@xxxxxxxxxxxxx
Delivery-date: Fri, 08 Sep 2006 10:03:39 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C1264999.1069%Keir.Fraser@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <OF202C29D8.6ABB40EA-ON052571E2.0068A3F3-052571E2.006E4CD7@xxxxxxxxxx> <C1264999.1069%Keir.Fraser@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
> > I tried hacking some code to turn off the NX bit in the PTE for the
> > hypercall stubs page, but I still get the oops.  I'm thinking it's because
> > the NX bit is set in the PMD.
> > 
> > I'm quite new to the paging mechanism, so I'm not sure how to fix this at
> > the moment.   I'll keep poking around.  thought I'd share my findings so
> > far.
> Page directory entries use permissions _PAGE_TABLE, which does not include
> _PAGE_NX. So clearing _PAGE_NX from the PTEs, using
> change_page_attr(PAGE_KERNEL_EXEC), should suffice.
The oops message is fairly clear that _PAGE_NX is set on the PMD, and
I'd guess it probably got set from phys_pmd_init.

I think vmalloc_exec is probably the right answer here.  I'll have a
go at this over the weekend.


Attachment: signature.asc
Description: Digital signature

Xen-devel mailing list