[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] "Unknown interrupt" on 3.0.2-2 x86_64
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. -Todd * 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) 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 ENTRY(idle_pg_table_l2) - .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 Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |