From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fantu Subject: Re: Kernel 2.6.31.6 pv_ops freeze on start Date: Wed, 24 Feb 2010 00:39:28 -0800 (PST) Message-ID: <27714129.post@talk.nabble.com> References: <27059994.post@talk.nabble.com> <20100107133734.GW25902@reaktio.net> <27063167.post@talk.nabble.com> <20100107211424.GC25902@reaktio.net> <27076636.post@talk.nabble.com> <4B58CF63.9060807@goop.org> <27608625.post@talk.nabble.com> <20100216142735.GF2861@reaktio.net> <27612307.post@talk.nabble.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <27612307.post@talk.nabble.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org I have reupdate xen and kernel and redo debug with also dummy=3Ddummy and t= his is the sol log: http://old.nabble.com/file/p27714129/sol2.txt sol2.txt=20 Fantu wrote: >=20 > also with this not boot: > menuentry "Xen 4 hg-un DEBUG, linux 2.6.31.6" { > =09set root=3D(hd0,1) > =09multiboot /boot/xen-4.gz dummy=3Ddummy dom0_mem=3D1024M iommu=3Dpasst= hrough,pv > loglvl=3Dall guest_loglvl=3Dall sync_console console_to_ring com2=3D56700= ,8n1 > console=3Dcom2,vga > =09module /boot/vmlinuz-2.6.31.6-xen dummy=3Ddummy root=3DLABEL=3Droot-r= aid ro > console=3Dhvc0 initcall_debug debug loglevel=3D10 earlyprintk=3Dxen > =09module /boot/initrd.img-2.6.31.6-xen > } >=20 > Pasi K=C3=A4rkk=C3=A4inen wrote: >>=20 >> On Tue, Feb 16, 2010 at 05:56:35AM -0800, Fantu wrote: >>>=20 >>> I have download update xen from unstable, kernel from git and i try to >>> apply >>> patch but it seems already present >>> I have try to start and log with SOL, this is the full output:=20 >>> http://old.nabble.com/file/p27608625/logsol.txt logsol.txt=20 >>> The entry in grub for debug: >>> menuentry "Xen 4 hg-un DEBUG, linux 2.6.31.6" { >>> =09set root=3D(hd0,1) >>> =09multiboot /boot/xen-4.gz dom0_mem=3D1024M iommu=3Dpassthrough,pv log= lvl=3Dall >>> guest_loglvl=3Dall sync_console console_to_ring com2=3D56700,8n1 >>> console=3Dcom2,vga >>> =09module /boot/vmlinuz-2.6.31.6-xen root=3DLABEL=3Droot-raid ro consol= e=3Dhvc0 >>> initcall_debug debug loglevel=3D10 earlyprintk=3Dxen >>> =09module /boot/initrd.img-2.6.31.6-xen >>> } >>=20 >> So you're using GRUB2.. >>=20 >> Please check this wiki page: >> http://wiki.xensource.com/xenwiki/XenCommonProblems >>=20 >> There's a chapter called "Booting Xen with GRUB2 fails?". >>=20 >> -- Pasi >>=20 >>>=20 >>> Jeremy Fitzhardinge wrote: >>> >=20 >>> > On 01/08/2010 06:16 AM, Fantu wrote: >>> >> Thanks, i have do, this is all the i see with sol before black scree= n >>> >> freeze >>> >> on vga: >>> >> >>> >> __ __ _ _ ___ ___ _ >>> >> \ \/ /___ _ __ | || | / _ \ / _ \ _ __ ___/ | _ __ _ __ >>> ___ >>> >> \ // _ \ '_ \ | || |_| | | | | | |__| '__/ __| |__| '_ \| '__/ = _ >>> \ >>> >> / \ __/ | | | |__ _| |_| | |_| |__| | | (__| |__| |_) | | |= =20 >>> __/ >>> >> /_/\_\___|_| |_| |_|(_)___(_)___/ |_| \___|_| | .__/|_|=20 >>> \___| >>> >> |_| >>> >> (XEN) Xen version 4.0.0-rc1-pre (root@) (gcc version 4.3.2 (Debian >>> >> 4.3.2-1.1) )0 >>> >> (XEN) Latest ChangeSet: Tue Jan 05 08:40:18 2010 +0000 >>> 20756:4feec90815a0 >>> >> (XEN) Command line: dom0_mem=3D512M iommu=3Dpassthrough,pv com2=3D57= 600,8n1 >>> >> console=3Dca >>> >> (XEN) Video information: >>> >> (XEN) VGA is text mode 80x25, font 8x16 >>> >> (XEN) VBE/DDC methods: V2; EDID transfer time: 1 seconds >>> >> (XEN) Disc information: >>> >> (XEN) Found 2 MBR signatures >>> >> (XEN) Found 2 EDD information structures >>> >> (XEN) Xen-e820 RAM map: >>> >> (XEN) 0000000000000000 - 00000000000a0000 (usable) >>> >> (XEN) 0000000000100000 - 00000000cf699000 (usable) >>> >> (XEN) 00000000cf699000 - 00000000cf6af000 (reserved) >>> >> (XEN) 00000000cf6af000 - 00000000cf6ce000 (ACPI data) >>> >> (XEN) 00000000cf6ce000 - 00000000d0000000 (reserved) >>> >> (XEN) 00000000e0000000 - 00000000f0000000 (reserved) >>> >> (XEN) 00000000fe000000 - 0000000100000000 (reserved) >>> >> (XEN) 0000000100000000 - 0000000330000000 (usable) >>> >> (XEN) ACPI: RSDP 000F0EC0, 0024 (r2 DELL ) >>> >> (XEN) ACPI: XSDT 000F0FC4, 009C (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: FACP CF6C3F9C, 00F4 (r3 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: DSDT CF6AF000, 3CF2 (r1 DELL PE_SC3 1 INTL >>> >> 20050624) >>> >> (XEN) ACPI: FACS CF6C6000, 0040 >>> >> (XEN) ACPI: APIC CF6C3478, 015E (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: SPCR CF6C35D8, 0050 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: HPET CF6C362C, 0038 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: DMAR CF6C3668, 01D0 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: MCFG CF6C38C4, 003C (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: WD__ CF6C3904, 0134 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: SLIC CF6C3A3C, 0024 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: ERST CF6B2E74, 0270 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: HEST CF6B30E4, 03A8 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: BERT CF6B2CF4, 0030 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: EINJ CF6B2D24, 0150 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: SRAT CF6C3BC0, 0370 (r1 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: TCPA CF6C3F34, 0064 (r2 DELL PE_SC3 1 DELL = =20 >>> >> 1) >>> >> (XEN) ACPI: SSDT CF6C7000, 0F08 (r1 INTEL PPM RCM 80000001 INTL >>> >> 20061109) >>> >> (XEN) System RAM: 12053MB (12342340kB) >>> >> (XEN) SRAT: PXM 1 -> APIC 16 -> Node 0 >>> >> (XEN) SRAT: PXM 1 -> APIC 18 -> Node 0 >>> >> (XEN) SRAT: PXM 1 -> APIC 20 -> Node 0 >>> >> (XEN) SRAT: PXM 1 -> APIC 22 -> Node 0 >>> >> (XEN) SRAT: Node 0 PXM 1 0-d0000000 >>> >> (XEN) SRAT: Node 0 PXM 1 100000000-330000000 >>> >> (XEN) NUMA: Using 20 for the hash shift. >>> >> (XEN) Domain heap initialised >>> >> (XEN) found SMP MP-table at 000fe710 >>> >> (XEN) DMI 2.6 present. >>> >> (XEN) Using APIC driver default >>> >> (XEN) ACPI: PM-Timer IO Port: 0x808 >>> >> (XEN) ACPI: ACPI SLEEP INFO: pm1x_cnt[804,0], pm1x_evt[800,0] >>> >> (XEN) ACPI: wakeup_vec[cf6c600c], vec_size[20] >>> >> (XEN) ACPI: Local APIC address 0xfee00000 >>> >> (XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x10] enabled) >>> >> (XEN) Processor #16 7:10 APIC version 21 >>> >> (XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x12] enabled) >>> >> (XEN) Processor #18 7:10 APIC version 21 >>> >> (XEN) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x14] enabled) >>> >> (XEN) Processor #20 7:10 APIC version 21 >>> >> (XEN) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x16] enabled) >>> >> (XEN) Processor #22 7:10 APIC version 21 >>> >> (XEN) ACPI: LAPIC (acpi_id[0x05] lapic_id[0x24] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x06] lapic_id[0x25] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x07] lapic_id[0x26] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x08] lapic_id[0x27] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x09] lapic_id[0x28] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x29] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x2a] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x2b] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x2c] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x2d] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x2e] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x10] lapic_id[0x2f] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x11] lapic_id[0x30] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x12] lapic_id[0x31] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x13] lapic_id[0x32] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x14] lapic_id[0x33] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x15] lapic_id[0x34] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x16] lapic_id[0x35] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x17] lapic_id[0x36] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x18] lapic_id[0x37] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x19] lapic_id[0x38] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1a] lapic_id[0x39] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1b] lapic_id[0x3a] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1c] lapic_id[0x3b] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1d] lapic_id[0x3c] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1e] lapic_id[0x3d] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x1f] lapic_id[0x3e] disabled) >>> >> (XEN) ACPI: LAPIC (acpi_id[0x20] lapic_id[0x3f] disabled) >>> >> (XEN) ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1]) >>> >> (XEN) ACPI: IOAPIC (id[0x00] address[0xfec00000] gsi_base[0]) >>> >> (XEN) IOAPIC[0]: apic_id 0, version 32, address 0xfec00000, GSI 0-23 >>> >> (XEN) ACPI: IOAPIC (id[0x01] address[0xfec80000] gsi_base[32]) >>> >> (XEN) IOAPIC[1]: apic_id 1, version 32, address 0xfec80000, GSI 32-5= 5 >>> >> (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 2 I/O APICs >>> >> (XEN) ACPI: HPET id: 0x8086a301 base: 0xfed00000 >>> >> (XEN) [VT-D]dmar.c:548: Host address width 40 >>> >> (XEN) [VT-D]dmar.c:557: found ACPI_DMAR_DRHD: >>> >> (XEN) [VT-D]dmar.c:374: dmaru->address =3D fed90000 >>> >> (XEN) [VT-D]dmar.c:386: flags: INCLUDE_ALL >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7c8000 end_addres= s >>> >> cf7dffff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.7 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.7 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7b1000 end_addres= s >>> >> cf7bffff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.0 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.1 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.2 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.0 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.1 >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.2 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7a1000 end_addres= s >>> >> cf7a1fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.0 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7a3000 end_addres= s >>> >> cf7a3fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.1 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7a5000 end_addres= s >>> >> cf7a5fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.0 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7a7000 end_addres= s >>> >> cf7a7fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.1 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7a9000 end_addres= s >>> >> cf7a9fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.2 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7c0000 end_addres= s >>> >> cf7c0fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1a.7 >>> >> (XEN) [VT-D]dmar.c:561: found ACPI_DMAR_RMRR: >>> >> (XEN) [VT-D]dmar.c:446: RMRR region: base_addr cf7c2000 end_addres= s >>> >> cf7c2fff >>> >> (XEN) [VT-D]dmar.c:326: endpoint: 0:1d.7 >>> >> (XEN) [VT-D]dmar.c:565: found ACPI_DMAR_ATSR: >>> >> (XEN) [VT-D]dmar.c:476: atsru->all_ports: 0 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:1.0 start =3D 0 sec =3D 1 sub = =3D 1 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:3.0 start =3D 0 sec =3D 3 sub = =3D 3 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:4.0 start =3D 0 sec =3D 4 sub = =3D 4 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:5.0 start =3D 0 sec =3D 5 sub = =3D 5 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:7.0 start =3D 0 sec =3D 6 sub = =3D 6 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:9.0 start =3D 0 sec =3D 7 sub = =3D 7 >>> >> (XEN) [VT-D]dmar.c:314: bridge: 0:a.0 start =3D 0 sec =3D 2 sub = =3D 2 >>> >> (XEN) PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - >>> 255 >>> >> (XEN) PCI: MCFG area at e0000000 reserved in E820 >>> >> (XEN) Using ACPI (MADT) for SMP configuration information >>> >> (XEN) Using scheduler: SMP Credit Scheduler (credit) >>> >> (XEN) Initializing CPU#0 >>> >> (XEN) Detected 1995.045 MHz processor. >>> >> (XEN) Initing memory sharing. >>> >> (XEN) CPU: L1 I cache: 32K, L1 D cache: 32K >>> >> (XEN) CPU: L2 cache: 256K >>> >> (XEN) CPU: L3 cache: 4096K >>> >> (XEN) CPU: Physical Processor ID: 1 >>> >> (XEN) CPU: Processor Core ID: 0 >>> >> (XEN) VMX: Supported advanced features: >>> >> (XEN) - APIC MMIO access virtualisation >>> >> (XEN) - APIC TPR shadow >>> >> (XEN) - Extended Page Tables (EPT) >>> >> (XEN) - Virtual-Processor Identifiers (VPID) >>> >> (XEN) - Virtual NMI >>> >> (XEN) - MSR direct-access bitmap >>> >> (XEN) HVM: ASIDs enabled. >>> >> (XEN) HVM: VMX enabled >>> >> (XEN) HVM: Hardware Assisted Paging detected. >>> >> (XEN) Intel machine check reporting enabled on CPU#0. >>> >> (XEN) CPU0: Thermal monitoring enabled (TM1) >>> >> (XEN) [VT-D]iommu.c:1062: drhd->address =3D fed90000 >>> >> (XEN) [VT-D]iommu.c:1063: iommu->reg =3D ffff82c3fff57000 >>> >> (XEN) Intel VT-d Snoop Control supported. >>> >> (XEN) Intel VT-d DMA Passthrough supported. >>> >> (XEN) Intel VT-d Queued Invalidation supported. >>> >> (XEN) Intel VT-d Interrupt Remapping not supported. >>> >> (XEN) I/O virtualisation enabled >>> >> (XEN) I/O virtualisation for PV guests enabled >>> >> (XEN) CPU0: Intel(R) Xeon(R) CPU E5504 @ 2.00GHz stepping >>> 05 >>> >> (XEN) Booting processor 1/18 eip 8c000 >>> >> (XEN) Initializing CPU#1 >>> >> (XEN) CPU: L1 I cache: 32K, L1 D cache: 32K >>> >> (XEN) CPU: L2 cache: 256K >>> >> (XEN) CPU: L3 cache: 4096K >>> >> (XEN) CPU: Physical Processor ID: 1 >>> >> (XEN) CPU: Processor Core ID: 1 >>> >> (XEN) HVM: ASIDs enabled. >>> >> (XEN) Intel machine check reporting enabled on CPU#1. >>> >> (XEN) CPU1: Thermal monitoring enabled (TM1) >>> >> (XEN) CPU1: Intel(R) Xeon(R) CPU E5504 @ 2.00GHz stepping >>> 05 >>> >> (XEN) Booting processor 2/20 eip 8c000 >>> >> (XEN) Initializing CPU#2 >>> >> (XEN) CPU: L1 I cache: 32K, L1 D cache: 32K >>> >> (XEN) CPU: L2 cache: 256K >>> >> (XEN) CPU: L3 cache: 4096K >>> >> (XEN) CPU: Physical Processor ID: 1 >>> >> (XEN) CPU: Processor Core ID: 2 >>> >> (XEN) HVM: ASIDs enabled. >>> >> (XEN) Intel machine check reporting enabled on CPU#2. >>> >> (XEN) CPU2: Thermal monitoring enabled (TM1) >>> >> (XEN) CPU2: Intel(R) Xeon(R) CPU E5504 @ 2.00GHz stepping >>> 05 >>> >> (XEN) Booting processor 3/22 eip 8c000 >>> >> (XEN) Initializing CPU#3 >>> >> (XEN) CPU: L1 I cache: 32K, L1 D cache: 32K >>> >> (XEN) CPU: L2 cache: 256K >>> >> (XEN) CPU: L3 cache: 4096K >>> >> (XEN) CPU: Physical Processor ID: 1 >>> >> (XEN) CPU: Processor Core ID: 3 >>> >> (XEN) HVM: ASIDs enabled. >>> >> (XEN) Intel machine check reporting enabled on CPU#3. >>> >> (XEN) CPU3: Thermal monitoring enabled (TM1) >>> >> (XEN) CPU3: Intel(R) Xeon(R) CPU E5504 @ 2.00GHz stepping >>> 05 >>> >> (XEN) Total of 4 processors activated. >>> >> (XEN) ENABLING IO-APIC IRQs >>> >> (XEN) -> Using new ACK method >>> >> (XEN) ..TIMER: vector=3D0xF0 apic1=3D0 pin1=3D2 apic2=3D-1 pin2=3D-1 >>> >> (XEN) checking TSC synchronization across 4 CPUs: passed. >>> >> (XEN) Platform timer is 14.318MHz HPET >>> >> ( >>> >> =20 >>> >=20 >>> > Ah, I saw the same when using a IPMI SOL implementation; this is the= =20 >>> > point when the serial port becomes interrupt-driven, and there's=20 >>> > something wrong with interrupts. The fix is this patch from Konrad: >>> >=20 >>> > diff -r 8f304c003af4 -r 7863747c5061 xen/drivers/char/ns16550.c >>> > --- a/xen/drivers/char/ns16550.c=09Wed Dec 09 10:59:31 2009 +0000 >>> > +++ b/xen/drivers/char/ns16550.c=09Thu Dec 10 11:03:25 2009 -0800 >>> > @@ -39,6 +39,7 @@ >>> > /* UART with no IRQ line: periodically-polled I/O. */ >>> > struct timer timer; >>> > unsigned int timeout_ms; >>> > + int probing, intr_works; >>> > } ns16550_com[2] =3D { { 0 } }; >>> >=20 >>> > /* Register offsets */ >>> > @@ -127,6 +128,13 @@ >>> > struct serial_port *port =3D dev_id; >>> > struct ns16550 *uart =3D port->uart; >>> >=20 >>> > + if (uart->intr_works =3D=3D 0) >>> > + { >>> > + uart->probing =3D 0; >>> > + uart->intr_works =3D 1; >>> > + stop_timer(&uart->timer); >>> > + } >>> > + >>> > while ( !(ns_read_reg(uart, IIR)& IIR_NOINT) ) >>> > { >>> > char lsr =3D ns_read_reg(uart, LSR); >>> > @@ -143,6 +151,15 @@ >>> > struct ns16550 *uart =3D port->uart; >>> > struct cpu_user_regs *regs =3D guest_cpu_user_regs(); >>> >=20 >>> > + if ( uart->intr_works ) >>> > + return; /* Interrupts work - no more polling */ >>> > + >>> > + if ( uart->probing ) { >>> > + uart->probing =3D 0; >>> > + if ( (ns_read_reg(uart, LSR)& 0xff) =3D=3D 0xff ) >>> > + return; /* All bits set - probably no UART present *= / >>> > + } >>> > + >>> > while ( ns_read_reg(uart, LSR)& LSR_DR ) >>> > serial_rx_interrupt(port, regs); >>> >=20 >>> > @@ -230,15 +247,14 @@ >>> >=20 >>> > serial_async_transmit(port); >>> >=20 >>> > + init_timer(&uart->timer, ns16550_poll, port, 0); >>> > + /* Calculate time to fill RX FIFO and/or empty TX FIFO for >>> polling. >>> > */ >>> > + bits =3D uart->data_bits + uart->stop_bits + !!uart->parity; >>> > + uart->timeout_ms =3D max_t( >>> > + unsigned int, 1, (bits * port->tx_fifo_size * 1000) / >>> > uart->baud); >>> > + >>> > if ( uart->irq =3D=3D 0 ) >>> > - { >>> > - /* Polled mode. Calculate time to fill RX FIFO and/or empty >>> TX >>> > FIFO. */ >>> > - bits =3D uart->data_bits + uart->stop_bits + !!uart->parity; >>> > - uart->timeout_ms =3D max_t( >>> > - unsigned int, 1, (bits * port->tx_fifo_size * 1000) / >>> > uart->baud); >>> > - init_timer(&uart->timer, ns16550_poll, port, 0); >>> > set_timer(&uart->timer, NOW() + >>> MILLISECS(uart->timeout_ms)); >>> > - } >>> > else >>> > { >>> > uart->irqaction.handler =3D ns16550_interrupt; >>> > @@ -252,6 +268,12 @@ >>> >=20 >>> > /* Enable receive and transmit interrupts. */ >>> > ns_write_reg(uart, IER, IER_ERDAI | IER_ETHREI); >>> > + >>> > + /* Do a timed write to make sure we are getting interrupts. >>> */ >>> > + uart->probing =3D 1; >>> > + uart->intr_works =3D 0; >>> > + ns_write_reg(uart, THR, 0xff); >>> > + set_timer(&uart->timer, NOW() + MILLISECS(uart->timeout_ms))= ; >>> > } >>> > } >>> >=20 >>> >=20 >>> > =09J >>> >=20 >>> >=20 >>> > _______________________________________________ >>> > Xen-devel mailing list >>> > Xen-devel@lists.xensource.com >>> > http://lists.xensource.com/xen-devel >>> >=20 >>> >=20 >>>=20 >>> --=20 >>> View this message in context: >>> http://old.nabble.com/Kernel-2.6.31.6-pv_ops-freeze-on-start-tp27059994= p27608625.html >>> Sent from the Xen - Dev mailing list archive at Nabble.com. >>>=20 >>>=20 >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>=20 >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >>=20 >>=20 >=20 >=20 --=20 View this message in context: http://old.nabble.com/Kernel-2.6.31.6-pv_ops-= freeze-on-start-tp27059994p27714129.html Sent from the Xen - Dev mailing list archive at Nabble.com.