lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 18 Apr 2009 10:33:14 +0200
From:	Jan Kiszka <jan.kiszka@....de>
To:	Jeff Mahoney <jeffm@...e.com>
CC:	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Andreas Herrmann <andreas.herrmann3@....com>,
	Ingo Molnar <mingo@...e.hu>
Subject: Re: [BUG] IO-APIC + timer doesn't work!

Jeff Mahoney wrote:
> Hi all -
> 
> I saw this while booting 2.6.30-rc1, -rc2, and today's git, on one of
> my development nodes. This output is with apic=debug. With noapic,
> it still hung. Both outputs follow.
> 
> git bisect leads to commit 8d6f0c8214928f7c5083dd54ecb69c5d615b516e,
> but I'm not seeing anything obvious there. Backing just that change
> out doesn't fix it.
> 
> -Jeff
> 
> apic=debug:
> 
> [    0.000000] Initializing cgroup subsys cpuset
> [    0.000000] Initializing cgroup subsys cpu
> [    0.000000] Linux version 2.6.30-rc2-vanilla (jeffm@...d2) (gcc version 4.3.2 [gcc-4_3-branch revision 141291] (SUSE Linux) ) #22 SMP Thu Apr 16 17:25:38 EDT 2009
> [    0.000000] Command line: root=/dev/disk/by-id/ata-ST3120813AS_3LS0FAGL-part10 eth0=dhcp console=tty0 console=ttyS0,115200 resume=/dev/disk/by-id/ata-ST3120813AS_3LS0FAGL-part6 splash=silent showopts vga=0x314 apic=debug
> [    0.000000] KERNEL supported cpus:
> [    0.000000]   Intel GenuineIntel
> [    0.000000]   AMD AuthenticAMD
> [    0.000000]   Centaur CentaurHauls
> [    0.000000] BIOS-provided physical RAM map:
> [    0.000000]  BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
> [    0.000000]  BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
> [    0.000000]  BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
> [    0.000000]  BIOS-e820: 0000000000100000 - 00000000f7ff0000 (usable)
> [    0.000000]  BIOS-e820: 00000000f7ff0000 - 00000000f7fff000 (ACPI data)
> [    0.000000]  BIOS-e820: 00000000f7fff000 - 00000000f8000000 (ACPI NVS)
> [    0.000000]  BIOS-e820: 00000000ff780000 - 0000000100000000 (reserved)
> [    0.000000]  BIOS-e820: 0000000100000000 - 0000000200000000 (usable)
> [    0.000000] DMI 2.3 present.
> [    0.000000] AMI BIOS detected: BIOS may corrupt low RAM, working around it.
> [    0.000000] last_pfn = 0x200000 max_arch_pfn = 0x100000000
> [    0.000000] x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
> [    0.000000] last_pfn = 0xf7ff0 max_arch_pfn = 0x100000000
> [    0.000000] Scanning 0 areas for low memory corruption
> [    0.000000] modified physical RAM map:
> [    0.000000]  modified: 0000000000000000 - 0000000000010000 (reserved)
> [    0.000000]  modified: 0000000000010000 - 000000000009fc00 (usable)
> [    0.000000]  modified: 000000000009fc00 - 00000000000a0000 (reserved)
> [    0.000000]  modified: 00000000000e0000 - 0000000000100000 (reserved)
> [    0.000000]  modified: 0000000000100000 - 00000000f7ff0000 (usable)
> [    0.000000]  modified: 00000000f7ff0000 - 00000000f7fff000 (ACPI data)
> [    0.000000]  modified: 00000000f7fff000 - 00000000f8000000 (ACPI NVS)
> [    0.000000]  modified: 00000000ff780000 - 0000000100000000 (reserved)
> [    0.000000]  modified: 0000000100000000 - 0000000200000000 (usable)
> [    0.000000] init_memory_mapping: 0000000000000000-00000000f7ff0000
> [    0.000000] init_memory_mapping: 0000000100000000-0000000200000000
> [    0.000000] RAMDISK: 37a0b000 - 37fefed3
> [    0.000000] ACPI: RSDP 00000000000f6d40 00024 (v02 ACPIAM)
> [    0.000000] ACPI: XSDT 00000000f7ff0100 00054 (v01 A M I  OEMXSDT  06000514 MSFT 00000097)
> [    0.000000] ACPI: FACP 00000000f7ff0281 000F4 (v01 A M I  OEMFACP  06000514 MSFT 00000097)
> [    0.000000] ACPI: DSDT 00000000f7ff0410 03591 (v01  0AAAA 0AAAA001 00000001 INTL 02002026)
> [    0.000000] ACPI: FACS 00000000f7fff000 00040
> [    0.000000] ACPI: APIC 00000000f7ff0380 00084 (v01 A M I  OEMAPIC  06000514 MSFT 00000097)
> [    0.000000] ACPI: OEMB 00000000f7fff040 00041 (v01 A M I  OEMBIOS  06000514 MSFT 00000097)
> [    0.000000] ACPI: SRAT 00000000f7ff39b0 00110 (v01 A M I  OEMSRAT  06000514 MSFT 00000097)
> [    0.000000] ACPI: HPET 00000000f7ff3ac0 00038 (v01 A M I  OEMHPET  06000514 MSFT 00000097)
> [    0.000000] ACPI: ASF! 00000000f7ff3b00 00086 (v01 AMIASF AMDSTRET 00000001 INTL 02002026)
> [    0.000000] SRAT: PXM 0 -> APIC 0 -> Node 0
> [    0.000000] SRAT: PXM 0 -> APIC 1 -> Node 0
> [    0.000000] SRAT: PXM 1 -> APIC 2 -> Node 1
> [    0.000000] SRAT: PXM 1 -> APIC 3 -> Node 1
> [    0.000000] SRAT: Node 0 PXM 0 100000-f8000000
> [    0.000000] SRAT: Node 1 PXM 1 100000000-200000000
> [    0.000000] SRAT: Node 0 PXM 0 100000000-100000000
> [    0.000000] SRAT: Node 0 PXM 0 0-9fc00
> [    0.000000] Bootmem setup node 0 0000000000000000-0000000100000000
> [    0.000000]   NODE_DATA [000000000001c040 - 000000000003403f]
> [    0.000000]   bootmap [0000000000035000 -  0000000000054fff] pages 20
> [    0.000000] (9 early reservations) ==> bootmem [0000000000 - 0100000000]
> [    0.000000]   #0 [0000000000 - 0000001000]   BIOS data page ==> [0000000000 - 0000001000]
> [    0.000000]   #1 [0000006000 - 0000008000]       TRAMPOLINE ==> [0000006000 - 0000008000]
> [    0.000000]   #2 [0000200000 - 00009e0d9c]    TEXT DATA BSS ==> [0000200000 - 00009e0d9c]
> [    0.000000]   #3 [0037a0b000 - 0037fefed3]          RAMDISK ==> [0037a0b000 - 0037fefed3]
> [    0.000000]   #4 [000009d000 - 0000100000]    BIOS reserved ==> [000009d000 - 0000100000]
> [    0.000000]   #5 [00009e1000 - 00009e11ad]              BRK ==> [00009e1000 - 00009e11ad]
> [    0.000000]   #6 [0000010000 - 0000014000]          PGTABLE ==> [0000010000 - 0000014000]
> [    0.000000]   #7 [0000014000 - 0000018000]          PGTABLE ==> [0000014000 - 0000018000]
> [    0.000000]   #8 [0000018000 - 000001c040]       MEMNODEMAP ==> [0000018000 - 000001c040]
> [    0.000000] Bootmem setup node 1 0000000100000000-0000000200000000
> [    0.000000]   NODE_DATA [0000000100000000 - 0000000100017fff]
> [    0.000000]   bootmap [0000000100018000 -  0000000100037fff] pages 20
> [    0.000000] (9 early reservations) ==> bootmem [0100000000 - 0200000000]
> [    0.000000]   #0 [0000000000 - 0000001000]   BIOS data page
> [    0.000000]   #1 [0000006000 - 0000008000]       TRAMPOLINE
> [    0.000000]   #2 [0000200000 - 00009e0d9c]    TEXT DATA BSS
> [    0.000000]   #3 [0037a0b000 - 0037fefed3]          RAMDISK
> [    0.000000]   #4 [000009d000 - 0000100000]    BIOS reserved
> [    0.000000]   #5 [00009e1000 - 00009e11ad]              BRK
> [    0.000000]   #6 [0000010000 - 0000014000]          PGTABLE
> [    0.000000]   #7 [0000014000 - 0000018000]          PGTABLE
> [    0.000000]   #8 [0000018000 - 000001c040]       MEMNODEMAP
> [    0.000000] Scan SMP from ffff880000000000 for 1024 bytes.
> [    0.000000] Scan SMP from ffff88000009fc00 for 1024 bytes.
> [    0.000000] Scan SMP from ffff8800000f0000 for 65536 bytes.
> [    0.000000] found SMP MP-table at [ffff8800000ff780] ff780
> [    0.000000]   mpc: fa3b0-fa50c
> [    0.000000] Zone PFN ranges:
> [    0.000000]   DMA      0x00000010 -> 0x00001000
> [    0.000000]   DMA32    0x00001000 -> 0x00100000
> [    0.000000]   Normal   0x00100000 -> 0x00200000
> [    0.000000] Movable zone start PFN for each node
> [    0.000000] early_node_map[3] active PFN ranges
> [    0.000000]     0: 0x00000010 -> 0x0000009f
> [    0.000000]     0: 0x00000100 -> 0x000f7ff0
> [    0.000000]     1: 0x00100000 -> 0x00200000
> [    0.000000] Detected use of extended apic ids on hypertransport bus
> [    0.000000] Detected use of extended apic ids on hypertransport bus
> [    0.000000] ACPI: PM-Timer IO Port: 0x1008
> [    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled)
> [    0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0])
> [    0.000000] IOAPIC[0]: apic_id 4, version 0, address 0xfec00000, GSI 0-23
> [    0.000000] ACPI: IOAPIC (id[0x05] address[0xfebff000] gsi_base[24])
> [    0.000000] IOAPIC[1]: apic_id 5, version 0, address 0xfebff000, GSI 24-27
> [    0.000000] ACPI: IOAPIC (id[0x06] address[0xfebfe000] gsi_base[28])
> [    0.000000] IOAPIC[2]: apic_id 6, version 0, address 0xfebfe000, GSI 28-31
> [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> [    0.000000] Using ACPI (MADT) for SMP configuration information
> [    0.000000] ACPI: HPET id: 0x102282a0 base: 0xfec01000
> [    0.000000] SMP: Allowing 4 CPUs, 0 hotplug CPUs
> [    0.000000] mapped APIC to ffffffffff5fc000 (fee00000)
> [    0.000000] mapped IOAPIC to ffffffffff5fb000 (fec00000)
> [    0.000000] mapped IOAPIC to ffffffffff5fa000 (febff000)
> [    0.000000] mapped IOAPIC to ffffffffff5f9000 (febfe000)
> [    0.000000] PM: Registered nosave memory: 000000000009f000 - 00000000000a0000
> [    0.000000] PM: Registered nosave memory: 00000000000a0000 - 00000000000e0000
> [    0.000000] PM: Registered nosave memory: 00000000000e0000 - 0000000000100000
> [    0.000000] PM: Registered nosave memory: 00000000f7ff0000 - 00000000f7fff000
> [    0.000000] PM: Registered nosave memory: 00000000f7fff000 - 00000000f8000000
> [    0.000000] PM: Registered nosave memory: 00000000f8000000 - 00000000ff780000
> [    0.000000] PM: Registered nosave memory: 00000000ff780000 - 0000000100000000
> [    0.000000] Allocating PCI resources starting at f8800000 (gap: f8000000:7780000)
> [    0.000000] NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:4 nr_node_ids:2
> [    0.000000] PERCPU: Remapped at ffffc20000000000 with large pages, static data 71776 bytes
> [    0.000000] Built 2 zonelists in Node order, mobility grouping on.  Total pages: 2033901
> [    0.000000] Policy zone: Normal
> [    0.000000] Kernel command line: root=/dev/disk/by-id/ata-ST3120813AS_3LS0FAGL-part10 eth0=dhcp console=tty0 console=ttyS0,115200 resume=/dev/disk/by-id/ata-ST3120813AS_3LS0FAGL-part6 splash=silent showopts vga=0x314 apic=debug
> [    0.000000] Initializing CPU#0
> [    0.000000] Experimental hierarchical RCU implementation.
> [    0.000000] Experimental hierarchical RCU init done.
> [    0.000000] NR_IRQS:4352 nr_irqs:576
> [    0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)
> [    0.000000] Fast TSC calibration using PIT
> [    0.000000] Detected 2192.534 MHz processor.
> [    0.004000] Console: colour dummy device 80x25
> [    0.004000] console [tty0] enabled
> [    0.004000] console [ttyS0] enabled
> [    0.004000] allocated 82575360 bytes of page_cgroup
> [    0.004000] please try cgroup_disable=memory option if you don't want
> [    0.004000] Checking aperture...
> [    0.004000] No AGP bridge found
> [    0.004000] Node 0: aperture @ 0 size 32 MB
> [    0.004000] Your BIOS doesn't leave a aperture memory hole
> [    0.004000] Please enable the IOMMU option in the BIOS setup
> [    0.004000] This costs you 64 MB of RAM
> [    0.004000] Mapping aperture over 65536 KB of RAM @ 20000000
> [    0.004000] PM: Registered nosave memory: 0000000020000000 - 0000000024000000
> [    0.004000] Memory: 7981076k/8388608k available (3350k kernel code, 131588k absent, 275944k reserved, 1936k data, 1544k init)
> [    0.004000] HPET: 3 timers in total, 0 timers will be used for per-cpu timer
> [    0.004010] Calibrating delay loop (skipped), value calculated using timer frequency.. 4385.06 BogoMIPS (lpj=8770136)
> [    0.008000] Security Framework initialized
> [    0.008000] SELinux:  Disabled at boot.
> [    0.008000] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
> [    0.008000] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)
> [    0.008000] Mount-cache hash table entries: 256
> [    0.008000] Initializing cgroup subsys ns
> [    0.008000] Initializing cgroup subsys cpuacct
> [    0.008000] Initializing cgroup subsys memory
> [    0.008000] Initializing cgroup subsys devices
> [    0.008000] Initializing cgroup subsys freezer
> [    0.008000] Initializing cgroup subsys net_cls
> [    0.008000] CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
> [    0.008000] CPU: L2 Cache: 1024K (64 bytes/line)
> [    0.008000] CPU 0/0x0 -> Node 0
> [    0.008000] CPU: Physical Processor ID: 0
> [    0.008000] CPU: Processor Core ID: 0
> [    0.008000] ACPI: Core revision 20090320
> [    0.008000] Setting APIC routing to flat
> [    0.008000] Getting VERSION: 40010
> [    0.008000] Getting VERSION: 40010
> [    0.008000] Getting ID: 0
> [    0.008000] Getting ID: ff000000
> [    0.008000] Getting LVT0: 700
> [    0.008000] Getting LVT1: 400
> [    0.008000] enabled ExtINT on CPU#0
> [    0.008000] ESR value before enabling vector: 0x00000004  after: 0x00000000
> [    0.008000] ENABLING IO-APIC IRQs
> [    0.008000] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=0 pin2=0
> [    0.008000] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
> [    0.008000] ...trying to set up timer (IRQ0) through the 8259A ...
> [    0.008000] ..... (found apic 0 pin 0) ...
> [    0.008000] ....... failed.
> [    0.008000] ...trying to set up timer as Virtual Wire IRQ...
> [    0.008000] ..... failed.
> [    0.008000] ...trying to set up timer as ExtINT IRQ...
> [    0.008000] ..... failed :(.
> [    0.008000] Kernel panic - not syncing: IO-APIC + timer doesn't work!  Boot with apic=debug and send a report.  Then try booting with the 'noapic' option.

Hmmmmm. That somehow reminds me of what I thought I had to fix in the
HPET emulation of QEMU just recently [1] - because of 2.6.30-rc's behavior.

Could you try if writing 'delta' a second time makes any difference on
that box?

diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index 648b3a2..523d72b 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -324,6 +324,7 @@ static void hpet_set_mode(enum clock_event_mode mode,
 		       HPET_TN_SETVAL | HPET_TN_32BIT;
 		hpet_writel(cfg, HPET_Tn_CFG(timer));
 		hpet_writel((unsigned long) delta, HPET_Tn_CMP(timer));
+		hpet_writel((unsigned long) delta, HPET_Tn_CMP(timer));
 		hpet_start_counter();
 		hpet_print_config();
 		break;

Thanks,
Jan

[1] http://permalink.gmane.org/gmane.comp.emulators.qemu/41570


Download attachment "signature.asc" of type "application/pgp-signature" (258 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ