From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gerd Knorr Subject: Re: [patch] pae: tlbflush linear page table updates Date: Tue, 9 Aug 2005 15:52:23 +0200 Message-ID: <20050809135223.GA17751@bytesex> References: <20050808145153.GA31526@bytesex> <20050809075414.GA13745@bytesex> <416c694c7150940849398dfc41457960@cl.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Keir Fraser Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Hi, > Actually, I spotted that create_pae_xen_mappings() was being called=20 > from completely the wrong paths in mod_l3_entry(). I've now fixed that=20 > -- it's possible that will fix your problems with no need for extra=20 > flushes. :-) Machine crashes, below is the log with "printk-via-hypercall-consoleio" hack. It's not the first make_page_readonly() call though, so it's some other bug. It is hg95d2bbf6a273d053e8876944a803b80c086e0b3e. Gerd __ __ _____ ___ _ _=20 \ \/ /___ _ __ |___ / / _ \ __| | _____ _____| | \ // _ \ '_ \ |_ \| | | |__ / _` |/ _ \ \ / / _ \ | / \ __/ | | | ___) | |_| |__| (_| | __/\ V / __/ | /_/\_\___|_| |_| |____(_)___/ \__,_|\___| \_/ \___|_| =20 http://www.cl.cam.ac.uk/netos/xen University of Cambridge Computer Laboratory Xen version 3.0-devel (kraxel@ber.suse.de) (gcc version 3.3.5 20050117 (= prerelease) (SUSE Linux)) Tue Aug 9 15:36:24 CEST 2005 Latest ChangeSet: Tue Aug 9 15:08:25 2005 95d2bbf6a273d053e8876944a803b= 80c086e0b3e (XEN) Truncating memory map to 1007616kB (XEN) Physical RAM map: (XEN) 0000000000000000 - 000000000009fc00 (usable) (XEN) 000000000009fc00 - 00000000000a0000 (reserved) (XEN) 00000000000e6000 - 0000000000100000 (reserved) (XEN) 0000000000100000 - 000000003d800000 (usable) (XEN) System RAM: 983MB (1007228kB) (XEN) Xen heap: 10MB (10452kB) (XEN) PAE enabled, limit: 16 GB (XEN) found SMP MP-table at 000ff780 (XEN) DMI 2.3 present. (XEN) Using APIC driver default (XEN) ACPI: RSDP (v000 ACPIAM ) @ 0x000f55= c0 (XEN) ACPI: RSDT (v001 INTEL @=C3S=B8=A8=81=9A (XEN) 0x20050420 MSFT 0x00000097) @ 0x3f630000 (XEN) ACPI: FADT (v002 INTEL @=C3S=B8=A8=81=9A (XEN) 0x20050420 MSFT 0x00000097) @ 0x3f630200 (XEN) ACPI: MADT (v001 INTEL @=C3S=B8=A8=81=9A (XEN) 0x20050420 MSFT 0x00000097) @ 0x3f630390 (XEN) ACPI: MCFG (v001 INTEL @=C3S=B8=A8=81=9A (XEN) 0x20050420 MSFT 0x00000097) @ 0x3f630400 (XEN) ACPI: MSEG (v001 INTEL @=C3S=B8=A8=81=9A (XEN) 0x20050420 MSFT 0x00000097) @ 0x3f630440 (XEN) ACPI: WDDT (v001 INTEL OEMWDDT 0x00000001 INTL 0x02002026) @ 0x3f= 6363c0 (XEN) ACPI: DSDT (v001 INTEL @=C3S=B8=A8=81=9A (XEN) 0x00000001 INTL 0x02002026) @ 0x00000000 (XEN) ACPI: Local APIC address 0xfee00000 (XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) (XEN) Processor #0 15:4 APIC version 20 (XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) (XEN) Processor #1 15:4 APIC version 20 (XEN) ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1]) (XEN) ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1]) (XEN) ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) (XEN) IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23 (XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) (XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) (XEN) ACPI: IRQ0 used by override. (XEN) ACPI: IRQ2 used by override. (XEN) ACPI: IRQ9 used by override. (XEN) Enabling APIC mode: Flat. Using 1 I/O APICs (XEN) Using ACPI (MADT) for SMP configuration information (XEN) Initializing CPU#0 (XEN) Detected 3793.084 MHz processor. (XEN) Using scheduler: Simple EDF Scheduler (sedf) (XEN) CPU: Trace cache: 12K uops, L1 D cache: 16K (XEN) CPU: L2 cache: 2048K (XEN) CPU: Physical Processor ID: 0 (XEN) VMXON is done (XEN) CPU0: Intel Genuine Intel(R) CPU 3.80GHz stepping 06 (XEN) Booting processor 1/1 eip 90000 (XEN) Initializing CPU#1 (XEN) CPU: Trace cache: 12K uops, L1 D cache: 16K (XEN) CPU: L2 cache: 2048K (XEN) CPU: Physical Processor ID: 0 (XEN) VMXON is done (XEN) CPU1: Intel Genuine Intel(R) CPU 3.80GHz stepping 06 (XEN) Total of 2 processors activated. (XEN) ENABLING IO-APIC IRQs (XEN) ..TIMER: vector=3D0x31 pin1=3D2 pin2=3D-1 (XEN) checking TSC synchronization across 2 CPUs: passed. (XEN) Platform timer is 1.193MHz PIT (XEN) Brought up 2 CPUs (XEN) mtrr: v2.0 (20020519) (XEN) *** LOADING DOMAIN 0 *** (XEN) Xen-ELF header found: 'GUEST_OS=3Dlinux,GUEST_VER=3D2.6,XEN_VER=3D3= .0,VIRT_BASE=3D0xC0000000,PAE=3Dyes,LOADER=3Dgeneric' (XEN) PHYSICAL MEMORY ARRANGEMENT: (XEN) Dom0 alloc.: 10000000->20000000 (131072 pages to be allocated) (XEN) VIRTUAL MEMORY ARRANGEMENT: (XEN) Loaded kernel: c0100000->c051d144 (XEN) Init. ramdisk: c051e000->c051e000 (XEN) Phys-Mach map: c051e000->c05de000 (XEN) Page tables: c05de000->c05e7000 (XEN) Start info: c05e7000->c05e8000 (XEN) Boot stack: c05e8000->c05e9000 (XEN) TOTAL: c0000000->c0800000 (XEN) ENTRY ADDRESS: c0100000 (XEN) Scrubbing Free RAM: ...........done. (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input= to Xen). <5>Linux version 2.6.12.3-xen0-hg95d2bbf6a273d053e8876944a803b80c086e0b3e= (kraxel@eskarina) (gcc version 3.3.5 20050117 (prerelease) (SUSE Linux))= #2 Tue Aug 9 15:38:52 CEST 2005 <6>BIOS-provided physical RAM map: Xen: 0000000000100000 - 0000000030000000 (usable) <5>40MB HIGHMEM available. <5>728MB LOWMEM available. NX (Execute Disable) protection: active <7>On node 0 totalpages: 196608 <7> DMA zone: 186368 pages, LIFO batch:31 <7> Normal zone: 0 pages, LIFO batch:1 <7> HighMem zone: 10240 pages, LIFO batch:3 <6>found SMP MP-table at 000ff780 <6>DMI 2.3 present. <7>ACPI: RSDP (v000 ACPIAM ) @ 0x000f55c0 <7>ACPI: RSDT (v001 INTEL @=C3S=B8=A8=81=9A 0x20050420 MSFT 0x00000097) @ 0x3f630000 <7>ACPI: FADT (v002 INTEL @=C3S=B8=A8=81=9A 0x20050420 MSFT 0x00000097) @ 0x3f630200 <7>ACPI: MADT (v001 INTEL @=C3S=B8=A8=81=9A 0x20050420 MSFT 0x00000097) @ 0x3f630390 <7>ACPI: MCFG (v001 INTEL @=C3S=B8=A8=81=9A 0x20050420 MSFT 0x00000097) @ 0x3f630400 <7>ACPI: MSEG (v001 INTEL @=C3S=B8=A8=81=9A 0x20050420 MSFT 0x00000097) @ 0x3f630440 <7>ACPI: WDDT (v001 INTEL OEMWDDT 0x00000001 INTL 0x02002026) @ 0x3f636= 3c0 <7>ACPI: DSDT (v001 INTEL @=C3S=B8=A8=81=9A 0x00000001 INTL 0x02002026) @ 0x00000000 <7>ACPI: Local APIC address 0xfee00000 <6>ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) <6>ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) <6>ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1]) <6>ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1]) <6>ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23 <6>ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) <6>ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) <7>ACPI: IRQ0 used by override. <7>ACPI: IRQ2 used by override. <7>ACPI: IRQ9 used by override. Enabling APIC mode: Flat. Using 1 I/O APICs <6>Using ACPI (MADT) for SMP configuration information <6>IRQ lockup detection disabled Allocating PCI resources starting at 30000000 (gap: 30000000:d0000000) Built 1 zonelists <5>Kernel command line: console=3Dtty0 console=3DttyS0 root=3D/dev/sda2 r= o selinux=3D0 sysrq=3Dyes <6>Initializing CPU#0 (XEN) DOM0: (file=3Dmm.c, line=3D1444) Bad type (saw f0000001!=3D exp a00= 00000) for pfn 10103 kernel BUG at arch/xen/i386/kernel/cpu/common.c:576 (cpu_gdt_init)! [] cpu_gdt_init+0xa7/0xc0 [] sort+0x11f/0x1f0 [] cpu_init+0xbf/0x250 [] cmp_ex+0x0/0x20 [] start_kernel+0x9c/0x1e0 [] unknown_bootoption+0x0/0x210 <0>Kernel panic - not syncing: BUG! (XEN) Domain 0 shutdown: rebooting machine.