panic on acpi_cpu_c1()
Hans Ottevanger
hansot at iae.nl
Sun Jun 28 17:31:50 UTC 2009
Norikatsu Shigemura wrote:
> Hi.
>
Hi,
I have almost the same issue, just the addresses are different and in my
case the trap occurs on cpu2.
My system is based on an Intel PB965LT main board with a Q6600 quad core
CPU and 8 Gbyte of RAM. I am also using the amd64 kernel, where kernel
configuration is almost identical to GENERIC, with devices removed that
I do not have and the following lines added
device drm
device radeondrm
device sound
device snd_hda
If I remove the drm and radeondrm devices from the config file and
recompile the kernel, the panic does not occur and the corresponding
modules can be loaded without a problem.
Some "binary searching" of Subversion releases shows that the problem
first occurs with r194985. If I update to r195137 and revert the
relevant files from the revision r194985 to r194984, no panic occurs.
Of course it could very well be that r194985 itself is not the issue,
but triggers a problem somewhere else in the kernel.
Kind regards,
Hans
> I got a panic after AP CPU launched on boot. So I couldn't get
> crash dump and information.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> FreeBSD nadesico.ninth-nine.com 8.0-CURRENT FreeBSD 8.0-CURRENT #49: Sun Jun 28 02:53:48 JST 2009 nork at nadesico.ninth-nine.com:/usr/obj/usr/src/sys/NADESICO amd64
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> SMP: AP CPU #3 Launched!
> SMP: AP CPU #1 Launched!
> SMP: AP CPU #2 Launched!
>
> Fatal trap 30: reserved (unknown) fault while in kernel mode
> cpuid = 3; apic id = 03
> instruction pointer = 0x20:0xffffffff804bce56
> stack pointer = 0x20:0xffffff8000039b60
> frame pointer = 0x20:0xffffff8000039b70
> code segment = base 0x0, limit 0xfffff, type 0x1b
> = DPL 0, pres 1, long 1, def32 0, gran 1
> processor eflags = interrupt enabled, IOPL = 0
> current process = 11 (idle: cpu3)
> [thread pid 11 tid 100003 ]
> Stopped at acpi_cpu_c1+0x6: leave
> db> bt
> Tracing pid 11 tid 100003 td 0xffffff8001863720
> acpi_cpu_c1() at acpi_cpu_c1+0x6
> acpi_cpu_idle() at acpi_cpu_idle+0x20c
> sched_idletd() at sched_idletd+0x123
> fork_exit() at fork_exit+0x117
> fork_trampoline() at fork_trampoline+0xe
> --- trap 0, rip = 0, rsp = 0xffffff8000039d40, rbp = 0 ---
> db>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
> I can boot with kern.smp.diabled=1, so I get address lines.
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> (kgdb) list *acpi_cpu_c1+0x6
> 0xffffffff804bce56 is in acpi_cpu_c1 (/usr/src/sys/amd64/acpica/acpi_machdep.c:100).
> 95
> 96 void
> 97 acpi_cpu_c1()
> 98 {
> 99 __asm __volatile("sti; hlt");
> 100 }
> (kgdb) list *acpi_cpu_idle+0x20c
> 0xffffffff801b443c is in acpi_cpu_idle (/usr/src/sys/dev/acpica/acpi_cpu.c:966).
> 961 ACPI_ENABLE_IRQS();
> 962
> 963 /* Find the actual time asleep in microseconds. */
> 964 end_time = acpi_TimerDelta(end_time, start_time);
> 965 sc->cpu_prev_sleep = (sc->cpu_prev_sleep * 3 + PM_USEC(end_time)) / 4;
> 966 }
> (kgdb) list *sched_idletd+0x123
> 0xffffffff8030b733 is in sched_idletd (/usr/src/sys/kern/sched_ule.c:2562).
> 2557 cpu_spinwait();
> 2558 }
> 2559 }
> 2560 switchcnt = tdq->tdq_switchcnt + tdq->tdq_oldswitchcnt;
> 2561 if (tdq->tdq_load == 0)
> 2562 cpu_idle(switchcnt > 1);
> 2563 if (tdq->tdq_load) {
> 2564 thread_lock(td);
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
More information about the freebsd-current
mailing list