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


[Xen-devel] "Unknown interrupt" on 3.0.2-2 x86_64

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] "Unknown interrupt" on 3.0.2-2 x86_64
From: Todd Clayton <tclayton@xxxxxxx>
Date: Wed, 19 Apr 2006 14:02:42 -0700
Delivery-date: Wed, 19 Apr 2006 14:03:06 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <E1FUg5V-0000ih-00@xxxxxxxxxxxxxxxxx>
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>
Organization: Operating Platforms Group; Sun Microsystems, Inc.
References: <20060415040249.GD539066@xxxxxxx> <E1FUg5V-0000ih-00@xxxxxxxxxxxxxxxxx>
Reply-to: Todd Clayton <todd.clayton@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/
Currently dom0 images larger than a few tens of megabytes fail to
boot and wedge xen early with "Unknown interrupt" on the xen console.
Below is the e-mail exchange I had with Keir along with a patch.


* Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> [2006-04-15 01:25]:
> > * Todd Clayton <tclayton@xxxxxxx> [2006-04-14 21:02]:
> >
> > So i tracked it down. In arch/x86/x86_64.S for the intial PDE
> > (idle_pg_table_l2) xen only identity maps the the first 64M of ram.
> > Around line 283 in setup.c xen copies DOM0 modules just beyond
> > the heap and quickly faults off the end of this 64M region.
> > Solaris uses fairly large boot archives (86M on my current system).
> > So for now I just changed x86_64.S to identity map the first 1G
> > of ram and solaris dom0 came all the way up.
> > 
> > Other than setup.c knowing the size of this region and failing more
> > gracefully I don't know how you want to fix this? Either bump
> > it up like I did or perhaps something a little more sophisticated?
> Making the area 1GB sounds reasonable. I was worried about
> accidentally providing mappings for areas that aren't RAM and
> shouldn't be mapped cacheable. But those are unlikely to exist below
> 1GB and if they do we can remove those mappings later. It's more
> important to boot with large images.
> So please send a patch.
>  -- Keir
Todd Clayton    todd.clayton@xxxxxxx

# HG changeset patch
# User tclayton@xxxxxxxxxxxxxxxxxxxxx
# Node ID 6494bd0bd79591f836cbf09cbef87495ff08a025
# Parent  c4eead8a925bd047834bf784f02edae33426b913

Increase size of level-2 initial PDE identity map from first 64MB of
physical RAM to first 1GB of physical RAM. This allows x86_64 xen to boot
larger dom0 images. Without this changes large dom0 images fail to
boot with "Unknown interrupt" on xen console and wedge.

Signed-off-by: Todd Clayton <todd.clayton@xxxxxxx>

diff -r c4eead8a925b -r 6494bd0bd795 xen/arch/x86/boot/x86_64.S
--- a/xen/arch/x86/boot/x86_64.S        Sun Apr 16 15:41:31 2006 +0100
+++ b/xen/arch/x86/boot/x86_64.S        Mon Apr 17 15:35:34 2006 -0700
@@ -252,10 +252,10 @@ ENTRY(idle_pg_table_l3)
         .quad idle_pg_table_l2 - __PAGE_OFFSET + 7
-/* Initial PDE -- level-2 page table. Maps first 64MB physical memory. */
+/* Initial PDE -- level-2 page table. Maps first 1GB physical memory. */
         .org 0x4000
-        .macro identmap from=0, count=32
+        .macro identmap from=0, count=512
         .if \count-1
         identmap "(\from+0)","(\count/2)"
         identmap "(\from+(0x200000*(\count/2)))","(\count/2)"

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] "Unknown interrupt" on 3.0.2-2 x86_64, Todd Clayton <=