On Mon, 24 Nov 2003, John Polstra wrote: > On 24-Nov-2003 Nate Lawson wrote: > > > > Please also send the output of acpidump -t -d > jdp-P2.asl > > When I try to run that command, I get: > > acpidump: sysctl machdep.acpi_root does not point to RSDP > > The sysctl command shows that machdep.acpi_root is 0. > Remember, though, in order to boot it I had to disable ACPI in > /boot/loader.conf. Yes, I see. You could use an older kernel like the 5.1R cd. > > If you can break to the debugger after it has hung, a tr would be nice. > > The fact that it didn't occur to me to try that says a lot about how > long I've been away from -current. :-( I've attached traces from > two different boots. They seem to vary somewhat. I can supply line > numbers on request. Trace 1: wakeup(c2944100,0,c06a7546,140,6c) at wakeup+0x4 AcpiOsSignalSemaphore(c2944100,1) at AcpiOsSignalSemaphore+0xa8 AcpiUtReleaseMutex(9,30,c295e8c0,c295e760,cdb64acc) at AcpiUtReleaseMutex+0x8c AcpiUtReleaseToCache(3,c295e760,cdb64ad8,c045ac17,c295e760) at AcpiUtReleaseToCache+0x8c Trace 2: _mtx_unlock_flags(c2944100,0,c06a7546,150,6c) at _mtx_unlock_flags+0x96 AcpiOsSignalSemaphore(c2944100,1) at AcpiOsSignalSemaphore+0xc8 AcpiUtReleaseMutex(9,8,c045f9cc,c2965940,c12a0c00) at AcpiUtReleaseMutex+0x8c AcpiUtAcquireFromCache(2,cdb64bf4,c0462229,c12a0c00,cdb64c34) at AcpiUtAcquireFromCache+0x53 Both of these show that acpi_task_thread is calling a task and then AcpiOsSignalSemaphore is hanging. I'm wondering if your system can't handle the acpi interrupt being moved to irq 20. Please try this (untested) patch that should disable moving the SCI to irq 20. jhb can probably address this better than I. -Nate Index: /sys/i386/acpica/madt.c =================================================================== RCS file: /home/ncvs/src/sys/i386/acpica/madt.c,v retrieving revision 1.7 diff -u -r1.7 madt.c --- /sys/i386/acpica/madt.c 14 Nov 2003 22:26:29 -0000 1.7 +++ /sys/i386/acpica/madt.c 24 Nov 2003 21:51:02 -0000 _at__at_ -538,11 +538,13 _at__at_ } if (intr->Source != intr->GlobalSystemInterrupt) { +#if 0 /* XXX: This assumes that the SCI uses IRQ 9. */ if (intr->GlobalSystemInterrupt > 15 && intr->Source == 9) acpi_OverrideInterruptLevel( intr->GlobalSystemInterrupt); else +#endif ioapic_remap_vector(new_ioapic, new_pin, intr->Source); if (madt_find_interrupt(intr->Source, &old_ioapic, &old_pin) != 0)Received on Mon Nov 24 2003 - 13:02:03 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:30 UTC