5.4: pci_link problem on 440BX

John Baldwin jhb at freebsd.org
Mon Dec 5 19:31:42 GMT 2005


On Monday 05 December 2005 01:18 pm, Eugene Grosbein wrote:
> On Fri, Dec 02, 2005 at 05:32:14PM -0500, John Baldwin wrote:
> > > > We shouldn't print that message unless pci_link is enabled.  When
> > > > pci_link is disabled we shouldn't even be looking at PRT entries. 
> > > > Can you try booting a 6.0-snapshot CD and seeing if it works ok?
> > >
> > > Now 6.0 boots to multiuser mode with ACPI fully enabled or fully
> > > disabled. make buildworld cannot be completed with ACPI - still silent
> > > hang of userland and no console switching (keyboard leds do switch and
> > > KDB works).
> > >
> > > 6.0's GENERIC does not boot to single user with
> > > debug.acpi.disabled="pci_link", fatal trap 12 occures: page fault while
> > > in kernel mode,
> > > fault virtual address 0x0, supervisor read, page not present
> > > in acpi_pci_link_lookup+0x26.
> >
> > I think I know what this is and this patch probably fixes the panic in
> > the case that you use 'debug.acpi.disabled="pci_link"'
> >
> > --- //depot/vendor/freebsd/src/sys/dev/acpica/acpi_pci_link.c  
> > 2005/11/23 16:40:40 +++
> > //depot/user/jhb/acpipci/dev/acpica/acpi_pci_link.c 2005/12/02 22:28:08
> > @@ -1011,6 +1011,9 @@
> >  {
> >         struct link *link;
> >
> > +       if (acpi_disabled("pci_link"))
> > +               return (PCI_INVALID_IRQ);
> > +
> >         ACPI_SERIAL_BEGIN(pci_link);
> >         link = acpi_pci_link_lookup(dev, index);
> >         if (link == NULL)
>
> I'll try this patch a bit later.
>
> > How does the 6.0 install CD do on your machine both with ACPI enabled and
> > disabled?
>
> I've just installed 6.0-RELEASE again.
> I booted it using [default] option (e.g. with ACPI enabled)
> and installation ran smoothly. However, I could not extract
> /usr/ports/distfiles/gettext-0.14.5.tar.gz, /usr/ports is mounted
> from 4.11 installation. All disk activity stopped and kernel
> repeatedly wrote something about "DANGER Will Robinson !!",
> I think it was from /usr/src/sys/dev/ata/ata-queue.c
>
> I rebooted with ACPI disabled and the problem disappeared.
> Now I'm going to test 'debug.acpi.disabled="pci_link"' case.

Well, ACPI is probably not going to be all that happy with pci_link disabled 
as your machine will no longer be able to route interrupts.  Are any IRQs 
different in the non-ACPI vs ACPI dmesgs?

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-acpi mailing list