lkml.org 
[lkml]   [2000]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Oops on boot with both 2.2.17 and 2.4.0t8p6

Linus,

Could you apply his patch?

On Mon, 18 Sep 2000, Rasmus Andersen wrote:

> On Sun, Sep 17, 2000 at 10:53:55PM -0300, Marcelo Tosatti wrote:
> >
> > AFAIK most distros use CONFIG_PCI_GOANY, which causes the kernel to try to
> > detect the PCI devices directly, and in case this fails, it tries to
> > detect via BIOS.
>
> I thought so too from reading the help regarding this option, but the
> code seems to (in case of CONFIG_GOANY) to check through the bios,
> check directly and pick the direct mapping (if not NULL) and otherwise
> pick the BIOS mapping (if not NULL) (this is from arch/i386/kernel/
> pci-pc.c). This is not what I expected from reading the help text.
>
> Would it be more correct for the code to check directly first (if con-
> figured so and not excluded at boot time etc) and then only check through
> BIOS if the direct mapping failed?

Yes.

> Example patch (probably fubar'ed):
>
> --- pci-pc.c.org Mon Sep 18 09:14:48 2000
> +++ pci-pc.c Mon Sep 18 09:16:01 2000
> @@ -962,15 +962,15 @@
> struct pci_ops *bios = NULL;
> struct pci_ops *dir = NULL;
>
> +#ifdef CONFIG_PCI_DIRECT
> + if (pci_probe & (PCI_PROBE_CONF1 | PCI_PROBE_CONF2))
> + dir = pci_check_direct();
> +#endif
> #ifdef CONFIG_PCI_BIOS
> - if ((pci_probe & PCI_PROBE_BIOS) && ((bios = pci_find_bios()))) {
> + if ((pci_probe & PCI_PROBE_BIOS) && (!dir) && ((bios = pci_find_bios()))) {
> pci_probe |= PCI_BIOS_SORT;
> pci_bios_present = 1;
> }
> -#endif
> -#ifdef CONFIG_PCI_DIRECT
> - if (pci_probe & (PCI_PROBE_CONF1 | PCI_PROBE_CONF2))
> - dir = pci_check_direct();
> #endif
> if (dir)
> pci_root_ops = dir;


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:38    [W:0.075 / U:1.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site