[lkml]   [2007]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH]PCI:disable resource decode in PCI BAR detection
    On Thu, 2007-09-13 at 15:16 +0400, Ivan Kokshaysky wrote:
    > On Thu, Sep 13, 2007 at 02:53:13AM -0700, Greg KH wrote:
    > > On Thu, Sep 13, 2007 at 01:55:36AM -0600, Matthew Wilcox wrote:
    > > > Unfortunately if this patch does cause any machine to break, these will
    > > > be machines that worked fine up until this point, so that would be a
    > > > regression, which is worse. Life sucks.
    > >
    > > If, after a while, you think the change should go into the -stable tree,
    > > I have no objection.
    > I think it shouldn't - this change will almost certainly cause a regression.
    > There is a lot of system devices besides the host bridges that shouldn't be
    > disabled during BAR probe, like interrupt controllers, power management
    > controllers and so on.
    > We need a more sophisticated fix - I'm thinking of introducing "probe" field
    > in struct pci_dev which can be set by "early" quirk routines.

    Agreed. I have a similar problem on ppc where it's common to have things
    like the main PIC on a PCI device. Note that another problem is (or at
    least was, i haven't checked recently) the P2P bridge scanning code
    that, in a similar way, can block the path to all devices below it. I
    -do- have a case for example with Apple Xserve G4's where the main Apple
    IO ASIC, which is a PCI device containing the PIC, the power management
    controller, and various low level system control IOs is behind a pair of
    P2P bridges.

    One solution for us (PPC) is to enforce those devices and bridges to be
    described in the OF tree, and generalize a bit the code we have for some
    64 bits machines, that synthetizes the pci_dev's from the OF nodes
    rather than probing. But that's not going to help other archs.

    In fact, that's a problem we also have with
    pci_assign_unassigned_resources() which will happily move things around
    that must not be moved, especially when sitting behind P2P bridges.

    So the root of the issue is much deeper than just a quirk here I


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2007-09-16 22:05    [W:0.021 / U:12.012 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site