[git pull] PCI pull request #2 for 2.6.28 - Kernel

This is a discussion on [git pull] PCI pull request #2 for 2.6.28 - Kernel ; Please pull my linux-next branch: git pull git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6.git linux-next A few more bits for 2.6.28, mainly hotplug related stuff so the risk should be pretty low. There are a few good fixes in here though too: a build fix for ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: [git pull] PCI pull request #2 for 2.6.28

  1. [git pull] PCI pull request #2 for 2.6.28

    Please pull my linux-next branch:
    git pull git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6.git linux-next

    A few more bits for 2.6.28, mainly hotplug related stuff so the risk should be
    pretty low. There are a few good fixes in here though too: a build fix for
    some architectures due to the new ioremap_nocache usage in pci.h and a fix for
    a refcounting bug.

    Thanks,
    Jesse

    Alex Chiang (16):
    PCI Hotplug core: add 'name' param pci_hp_register interface
    PCI: rename pci_update_slot_number to pci_renumber_slot
    PCI: update pci_create_slot() to take a 'hotplug' param
    PCI: prevent duplicate slot names
    PCI: acpiphp: remove 'name' parameter
    PCI: cpci_hotplug: stop managing hotplug_slot->name
    PCI: cpqphp: stop managing hotplug_slot->name
    PCI, PCI Hotplug: introduce slot_name helpers
    PCI: fakephp: remove 'name' parameter
    PCI: ibmphp: stop managing hotplug_slot->name
    PCI: pciehp: remove 'name' parameter
    PCI: rpaphp: kmalloc/kfree slot->name directly
    PCI: SGI Hotplug: stop managing bss_hotplug_slot->name
    PCI: shcphp: remove 'name' parameter
    PCI: Hotplug core: remove 'name'
    PCI Hotplug: fakephp: add duplicate slot name debugging

    Benjamin Herrenschmidt (1):
    PCI: Workaround invalid P2P bridge bus numbers

    Geert Uytterhoeven (1):
    PCI: PCI_QUIRKS depends on PCI

    Jesse Barnes (2):
    PCI: include io.h in pci.h so that ioremap_nocache is defined
    Remove PCI hotplug core MAINTAINERS entry

    Julia Lawall (1):
    PCI hotplug: fix logic in Compaq hotplug controller bus speed setup

    Kenji Kaneshige (3):
    PCI Hotplug: serialize pci_hp_register and pci_hp_deregister
    PCI hotplug: pciehp: fix possible memory leak in pcie_init
    PCI hotplug: pciehp: poll data link layer link active

    Matthew Wilcox (1):
    PCI: Fix reference counting bug

    Sheng Yang (1):
    PCI: add support for function level reset

    Stephen Rothwell (1):
    PCI: don't export linux/io.h from pci.h

    Taku Izumi (5):
    ACPI/PCI: Fix possible race condition on _OSC evaluation
    ACPI/PCI: Change pci_osc_control_set() to query control bits first
    ACPI/PCI: Always query _OSC control field in pci_osc_control_set()
    ACPI/PCI: Fix return value of acpi_cuery_osc()
    ACPI/PCI: Set support bit for MSI in support field of _OSC

    MAINTAINERS | 5 -
    drivers/acpi/pci_slot.c | 2 +-
    drivers/pci/hotplug/acpiphp.h | 9 +-
    drivers/pci/hotplug/acpiphp_core.c | 32 ++++---
    drivers/pci/hotplug/cpci_hotplug.h | 6 +
    drivers/pci/hotplug/cpci_hotplug_core.c | 75 ++++++---------
    drivers/pci/hotplug/cpci_hotplug_pci.c | 4 +-
    drivers/pci/hotplug/cpqphp.h | 13 +--
    drivers/pci/hotplug/cpqphp_core.c | 43 ++++-----
    drivers/pci/hotplug/cpqphp_ctrl.c | 2 +-
    drivers/pci/hotplug/fakephp.c | 26 ++++--
    drivers/pci/hotplug/ibmphp.h | 5 +-
    drivers/pci/hotplug/ibmphp_ebda.c | 19 ++---
    drivers/pci/hotplug/pci_hotplug_core.c | 64 +++++--------
    drivers/pci/hotplug/pciehp.h | 10 ++-
    drivers/pci/hotplug/pciehp_core.c | 49 ++++------
    drivers/pci/hotplug/pciehp_ctrl.c | 56 ++++++-----
    drivers/pci/hotplug/pciehp_hpc.c | 60 +++++++++++-
    drivers/pci/hotplug/rpaphp_slot.c | 10 +-
    drivers/pci/hotplug/sgi_hotplug.c | 18 +---
    drivers/pci/hotplug/shpchp.h | 9 +-
    drivers/pci/hotplug/shpchp_core.c | 52 ++++-------
    drivers/pci/hotplug/shpchp_ctrl.c | 48 +++++-----
    drivers/pci/msi.c | 21 ++++
    drivers/pci/pci-acpi.c | 85 ++++++++++------
    drivers/pci/pci.c | 101 +++++++++++++++++++
    drivers/pci/pci.h | 2 +
    drivers/pci/probe.c | 12 ++-
    drivers/pci/search.c | 9 +-
    drivers/pci/slot.c | 160 +++++++++++++++++++++++--------
    include/linux/pci.h | 13 ++-
    include/linux/pci_hotplug.h | 11 ++-
    include/linux/pci_regs.h | 2 +
    init/Kconfig | 3 +-
    34 files changed, 637 insertions(+), 399 deletions(-)

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

  2. Re: [git pull] PCI pull request #2 for 2.6.28



    On Wed, 22 Oct 2008, Jesse Barnes wrote:
    >
    > A few more bits for 2.6.28, mainly hotplug related stuff so the risk should be
    > pretty low. There are a few good fixes in here though too: a build fix for
    > some architectures due to the new ioremap_nocache usage in pci.h and a fix for
    > a refcounting bug.


    Pulled.

    Ingo tells me that the ARI code is broken on his Nehalem, and that there's
    already a confirmed fix for it by Yu Zhao ("[PATCH] pci: fix ARI") but
    it's not in this series.

    Hmm? Status?

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

  3. Re: [git pull] PCI pull request #2 for 2.6.28

    On Thursday, October 23, 2008 10:46 am Linus Torvalds wrote:
    > On Wed, 22 Oct 2008, Jesse Barnes wrote:
    > > A few more bits for 2.6.28, mainly hotplug related stuff so the risk
    > > should be pretty low. There are a few good fixes in here though too: a
    > > build fix for some architectures due to the new ioremap_nocache usage in
    > > pci.h and a fix for a refcounting bug.

    >
    > Pulled.
    >
    > Ingo tells me that the ARI code is broken on his Nehalem, and that there's
    > already a confirmed fix for it by Yu Zhao ("[PATCH] pci: fix ARI") but
    > it's not in this series.
    >
    > Hmm? Status?


    Yeah came in after I set up my pull request; I'll queue it up today.

    --
    Jesse Barnes, Intel Open Source Technology Center

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

  4. Re: [git pull] PCI pull request #2 for 2.6.28


    * Jesse Barnes wrote:

    > On Thursday, October 23, 2008 10:46 am Linus Torvalds wrote:
    > > On Wed, 22 Oct 2008, Jesse Barnes wrote:
    > > > A few more bits for 2.6.28, mainly hotplug related stuff so the risk
    > > > should be pretty low. There are a few good fixes in here though too: a
    > > > build fix for some architectures due to the new ioremap_nocache usage in
    > > > pci.h and a fix for a refcounting bug.

    > >
    > > Pulled.
    > >
    > > Ingo tells me that the ARI code is broken on his Nehalem, and that
    > > there's already a confirmed fix for it by Yu Zhao ("[PATCH] pci: fix
    > > ARI") but it's not in this series.
    > >
    > > Hmm? Status?

    >
    > Yeah came in after I set up my pull request; I'll queue it up today.


    it's also rather lowprio fix IMO as ARI is a rare new feature. The
    commit below did the trick here and i havent had problems with the
    Nehalem testbox since then.

    Ingo

    ------------->
    From 8113587c2d14d3be2414190845b2e2617c0aa33b Mon Sep 17 00:00:00 2001
    From: Zhao, Yu
    Date: Thu, 23 Oct 2008 13:15:39 +0800
    Subject: [PATCH] PCI: fix ARI code to be compatible with mixed ARI/non-ARI systems

    The original ARI support code has a compatibility problem with non-ARI
    devices. If a device doesn't support ARI, turning on ARI forwarding on
    its upper level bridge will cause undefined behavior.

    This fix turns on ARI forwarding only when the subordinate devices
    support it.

    Tested-by: Suresh Siddha
    Signed-off-by: Yu Zhao
    Signed-off-by: Jesse Barnes
    ---
    drivers/pci/pci.c | 21 +++++++++++++--------
    1 files changed, 13 insertions(+), 8 deletions(-)

    diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
    index 533aeb5..21f2ac6 100644
    --- a/drivers/pci/pci.c
    +++ b/drivers/pci/pci.c
    @@ -1309,27 +1309,32 @@ void pci_enable_ari(struct pci_dev *dev)
    int pos;
    u32 cap;
    u16 ctrl;
    + struct pci_dev *bridge;

    - if (!dev->is_pcie)
    + if (!dev->is_pcie || dev->devfn)
    return;

    - if (dev->pcie_type != PCI_EXP_TYPE_ROOT_PORT &&
    - dev->pcie_type != PCI_EXP_TYPE_DOWNSTREAM)
    + pos = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_ARI);
    + if (!pos)
    return;

    - pos = pci_find_capability(dev, PCI_CAP_ID_EXP);
    + bridge = dev->bus->self;
    + if (!bridge || !bridge->is_pcie)
    + return;
    +
    + pos = pci_find_capability(bridge, PCI_CAP_ID_EXP);
    if (!pos)
    return;

    - pci_read_config_dword(dev, pos + PCI_EXP_DEVCAP2, &cap);
    + pci_read_config_dword(bridge, pos + PCI_EXP_DEVCAP2, &cap);
    if (!(cap & PCI_EXP_DEVCAP2_ARI))
    return;

    - pci_read_config_word(dev, pos + PCI_EXP_DEVCTL2, &ctrl);
    + pci_read_config_word(bridge, pos + PCI_EXP_DEVCTL2, &ctrl);
    ctrl |= PCI_EXP_DEVCTL2_ARI;
    - pci_write_config_word(dev, pos + PCI_EXP_DEVCTL2, ctrl);
    + pci_write_config_word(bridge, pos + PCI_EXP_DEVCTL2, ctrl);

    - dev->ari_enabled = 1;
    + bridge->ari_enabled = 1;
    }

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

+ Reply to Thread