06 Oct, 2012

1 commit

  • Pull powerpc updates from Benjamin Herrenschmidt:
    "Some highlights in addition to the usual batch of fixes:

    - 64TB address space support for 64-bit processes by Aneesh Kumar

    - Gavin Shan did a major cleanup & re-organization of our EEH support
    code (IBM fancy PCI error handling & recovery infrastructure) which
    paves the way for supporting different platform backends, along
    with some rework of the PCIe code for the PowerNV platform in order
    to remove home made resource allocations and instead use the
    generic code (which is possible after some small improvements to it
    done by Gavin).

    - Uprobes support by Ananth N Mavinakayanahalli

    - A pile of embedded updates from Freescale folks, including new SoC
    and board supports, more KVM stuff including preparing for 64-bit
    BookE KVM support, ePAPR 1.1 updates, etc..."

    Fixup trivial conflicts in drivers/scsi/ipr.c

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (146 commits)
    powerpc/iommu: Fix multiple issues with IOMMU pools code
    powerpc: Fix VMX fix for memcpy case
    driver/mtd:IFC NAND:Initialise internal SRAM before any write
    powerpc/fsl-pci: use 'Header Type' to identify PCIE mode
    powerpc/eeh: Don't release eeh_mutex in eeh_phb_pe_get
    powerpc: Remove tlb batching hack for nighthawk
    powerpc: Set paca->data_offset = 0 for boot cpu
    powerpc/perf: Sample only if SIAR-Valid bit is set in P7+
    powerpc/fsl-pci: fix warning when CONFIG_SWIOTLB is disabled
    powerpc/mpc85xx: Update interrupt handling for IFC controller
    powerpc/85xx: Enable USB support in p1023rds_defconfig
    powerpc/smp: Do not disable IPI interrupts during suspend
    powerpc/eeh: Fix crash on converting OF node to edev
    powerpc/eeh: Lock module while handling EEH event
    powerpc/kprobe: Don't emulate store when kprobe stwu r1
    powerpc/kprobe: Complete kprobe and migrate exception frame
    powerpc/kprobe: Introduce a new thread flag
    powerpc: Remove unused __get_user64() and __put_user64()
    powerpc/eeh: Global mutex to protect PE tree
    powerpc/eeh: Remove EEH PE for normal PCI hotplug
    ...

    Linus Torvalds
     

03 Oct, 2012

2 commits

  • Pull Xen update from Konrad Rzeszutek Wilk:
    "Features:
    - When hotplugging PCI devices in a PV guest we can allocate
    Xen-SWIOTLB later.
    - Cleanup Xen SWIOTLB.
    - Support pages out grants from HVM domains in the backends.
    - Support wild cards in xen-pciback.hide=(BDF) arguments.
    - Update grant status updates with upstream hypervisor.
    - Boot PV guests with more than 128GB.
    - Cleanup Xen MMU code/add comments.
    - Obtain XENVERS using a preferred method.
    - Lay out generic changes to support Xen ARM.
    - Allow privcmd ioctl for HVM (used to do only PV).
    - Do v2 of mmap_batch for privcmd ioctls.
    - If hypervisor saves the LED keyboard light - we will now instruct
    the kernel about its state.
    Fixes:
    - More fixes to Xen PCI backend for various calls/FLR/etc.
    - With more than 4GB in a 64-bit PV guest disable native SWIOTLB.
    - Fix up smatch warnings.
    - Fix up various return values in privmcmd and mm."

    * tag 'stable/for-linus-3.7-x86-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: (48 commits)
    xen/pciback: Restore the PCI config space after an FLR.
    xen-pciback: properly clean up after calling pcistub_device_find()
    xen/vga: add the xen EFI video mode support
    xen/x86: retrieve keyboard shift status flags from hypervisor.
    xen/gndev: Xen backend support for paged out grant targets V4.
    xen-pciback: support wild cards in slot specifications
    xen/swiotlb: Fix compile warnings when using plain integer instead of NULL pointer.
    xen/swiotlb: Remove functions not needed anymore.
    xen/pcifront: Use Xen-SWIOTLB when initting if required.
    xen/swiotlb: For early initialization, return zero on success.
    xen/swiotlb: Use the swiotlb_late_init_with_tbl to init Xen-SWIOTLB late when PV PCI is used.
    xen/swiotlb: Move the error strings to its own function.
    xen/swiotlb: Move the nr_tbl determination in its own function.
    xen/arm: compile and run xenbus
    xen: resynchronise grant table status codes with upstream
    xen/privcmd: return -EFAULT on error
    xen/privcmd: Fix mmap batch ioctl error status copy back.
    xen/privcmd: add PRIVCMD_MMAPBATCH_V2 ioctl
    xen/mm: return more precise error from xen_remap_domain_range()
    xen/mmu: If the revector fails, don't attempt to revector anything else.
    ...

    Linus Torvalds
     
  • Pull power management updates from Rafael J Wysocki:

    - Improved system suspend/resume and runtime PM handling for the SH
    TMU, CMT and MTU2 clock event devices (also used by ARM/shmobile).

    - Generic PM domains framework extensions related to cpuidle support
    and domain objects lookup using names.

    - ARM/shmobile power management updates including improved support for
    the SH7372's A4S power domain containing the CPU core.

    - cpufreq changes related to AMD CPUs support from Matthew Garrett,
    Andre Przywara and Borislav Petkov.

    - cpu0 cpufreq driver from Shawn Guo.

    - cpufreq governor fixes related to the relaxing of limit from Michal
    Pecio.

    - OMAP cpufreq updates from Axel Lin and Richard Zhao.

    - cpuidle ladder governor fixes related to the disabling of states from
    Carsten Emde and me.

    - Runtime PM core updates related to the interactions with the system
    suspend core from Alan Stern and Kevin Hilman.

    - Wakeup sources modification allowing more helper functions to be
    called from interrupt context from John Stultz and additional
    diagnostic code from Todd Poynor.

    - System suspend error code path fix from Feng Hong.

    Fixed up conflicts in cpufreq/powernow-k8 that stemmed from the
    workqueue fixes conflicting fairly badly with the removal of support for
    hardware P-state chips. The changes were independent but somewhat
    intertwined.

    * tag 'pm-for-3.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (76 commits)
    Revert "PM QoS: Use spinlock in the per-device PM QoS constraints code"
    PM / Runtime: let rpm_resume() succeed if RPM_ACTIVE, even when disabled, v2
    cpuidle: rename function name "__cpuidle_register_driver", v2
    cpufreq: OMAP: Check IS_ERR() instead of NULL for omap_device_get_by_hwmod_name
    cpuidle: remove some empty lines
    PM: Prevent runtime suspend during system resume
    PM QoS: Use spinlock in the per-device PM QoS constraints code
    PM / Sleep: use resume event when call dpm_resume_early
    cpuidle / ACPI : move cpuidle_device field out of the acpi_processor_power structure
    ACPI / processor: remove pointless variable initialization
    ACPI / processor: remove unused function parameter
    cpufreq: OMAP: remove loops_per_jiffy recalculate for smp
    sections: fix section conflicts in drivers/cpufreq
    cpufreq: conservative: update frequency when limits are relaxed
    cpufreq / ondemand: update frequency when limits are relaxed
    properly __init-annotate pm_sysrq_init()
    cpufreq: Add a generic cpufreq-cpu0 driver
    PM / OPP: Initialize OPP table from device tree
    ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp
    cpufreq: Remove support for hardware P-state chips from powernow-k8
    ...

    Linus Torvalds
     

02 Oct, 2012

2 commits

  • Pull PCI changes from Bjorn Helgaas:
    "Host bridge hotplug
    - Protect acpi_pci_drivers and acpi_pci_roots (Taku Izumi)
    - Clear host bridge resource info to avoid issue when releasing
    (Yinghai Lu)
    - Notify acpi_pci_drivers when hot-plugging host bridges (Jiang Liu)
    - Use standard list ops for acpi_pci_drivers (Jiang Liu)

    Device hotplug
    - Use pci_get_domain_bus_and_slot() to close hotplug races (Jiang
    Liu)
    - Remove fakephp driver (Bjorn Helgaas)
    - Fix VGA ref count in hotplug remove path (Yinghai Lu)
    - Allow acpiphp to handle PCIe ports without native hotplug (Jiang
    Liu)
    - Implement resume regardless of pciehp_force param (Oliver Neukum)
    - Make pci_fixup_irqs() work after init (Thierry Reding)

    Miscellaneous
    - Add pci_pcie_type(dev) and remove pci_dev.pcie_type (Yijing Wang)
    - Factor out PCI Express Capability accessors (Jiang Liu)
    - Add pcibios_window_alignment() so powerpc EEH can use generic
    resource assignment (Gavin Shan)
    - Make pci_error_handlers const (Stephen Hemminger)
    - Cleanup drivers/pci/remove.c (Bjorn Helgaas)
    - Improve Vendor-Specific Extended Capability support (Bjorn
    Helgaas)
    - Use standard list ops for bus->devices (Bjorn Helgaas)
    - Avoid kmalloc in pci_get_subsys() and pci_get_class() (Feng Tang)
    - Reassign invalid bus number ranges (Intel DP43BF workaround)
    (Yinghai Lu)"

    * tag 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (102 commits)
    PCI: acpiphp: Handle PCIe ports without native hotplug capability
    PCI/ACPI: Use acpi_driver_data() rather than searching acpi_pci_roots
    PCI/ACPI: Protect acpi_pci_roots list with mutex
    PCI/ACPI: Use acpi_pci_root info rather than looking it up again
    PCI/ACPI: Pass acpi_pci_root to acpi_pci_drivers' add/remove interface
    PCI/ACPI: Protect acpi_pci_drivers list with mutex
    PCI/ACPI: Notify acpi_pci_drivers when hot-plugging PCI root bridges
    PCI/ACPI: Use normal list for struct acpi_pci_driver
    PCI/ACPI: Use DEVICE_ACPI_HANDLE rather than searching acpi_pci_roots
    PCI: Fix default vga ref_count
    ia64/PCI: Clear host bridge aperture struct resource
    x86/PCI: Clear host bridge aperture struct resource
    PCI: Stop all children first, before removing all children
    Revert "PCI: Use hotplug-safe pci_get_domain_bus_and_slot()"
    PCI: Provide a default pcibios_update_irq()
    PCI: Discard __init annotations for pci_fixup_irqs() and related functions
    PCI: Use correct type when freeing bus resource list
    PCI: Check P2P bridge for invalid secondary/subordinate range
    PCI: Convert "new_id"/"remove_id" into generic pci_bus driver attributes
    xen-pcifront: Use hotplug-safe pci_get_domain_bus_and_slot()
    ...

    Linus Torvalds
     
  • Pull the trivial tree from Jiri Kosina:
    "Tiny usual fixes all over the place"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)
    doc: fix old config name of kprobetrace
    fs/fs-writeback.c: cleanup riteback_sb_inodes kerneldoc
    btrfs: fix the commment for the action flags in delayed-ref.h
    btrfs: fix trivial typo for the comment of BTRFS_FREE_INO_OBJECTID
    vfs: fix kerneldoc for generic_fh_to_parent()
    treewide: fix comment/printk/variable typos
    ipr: fix small coding style issues
    doc: fix broken utf8 encoding
    nfs: comment fix
    platform/x86: fix asus_laptop.wled_type module parameter
    mfd: printk/comment fixes
    doc: getdelays.c: remember to close() socket on error in create_nl_socket()
    doc: aliasing-test: close fd on write error
    mmc: fix comment typos
    dma: fix comments
    spi: fix comment/printk typos in spi
    Coccinelle: fix typo in memdup_user.cocci
    tmiofb: missing NULL pointer checks
    tools: perf: Fix typo in tools/perf
    tools/testing: fix comment / output typos
    ...

    Linus Torvalds
     

25 Sep, 2012

5 commits

  • Bjorn Helgaas
     
  • Bjorn Helgaas
     
  • Bjorn Helgaas
     
  • Commit 0d52f54e2ef64c189dedc332e680b2eb4a34590a (PCI / ACPI: Make acpiphp
    ignore root bridges using PCIe native hotplug) added code that made the
    acpiphp driver completely ignore PCIe root complexes for which the kernel
    had been granted control of the native PCIe hotplug feature by the BIOS
    through _OSC. Later commit 619a5182d1f38a3d629ee48e04fa182ef9170052
    "PCI hotplug: Always allow acpiphp to handle non-PCIe bridges" relaxed
    the constraints to allow acpiphp driver handle non-PCIe bridges under
    such a complex. The constraint needs to be relaxed further to allow
    acpiphp driver to handle PCIe ports without native PCIe hotplug capability.

    Some MR-IOV switch chipsets, such PLX8696, support multiple virtual PCIe
    switches and may migrate downstream ports among virtual switches. To
    migrate a downstream port from the source virtual switch to the target, the
    port needs to be hot-removed from the source and hot-added into the target.
    The pciehp driver can't be used here because there are no slots within the
    virtual PCIe switch. So acpiphp driver is used to support downstream port
    migration. A typical configuration is as below:

    [Root without native PCIe HP]
    [Upstream port of vswitch without native PCIe HP]
    [Downstream port of vswitch with native PCIe HP]
    [PCIe endpoint]

    Here acpiphp driver will be used to handle root ports and upstream port
    in the virtual switch, and pciehp driver will be used to handle downstream
    ports in the virtual switch.

    Signed-off-by: Jiang Liu
    Signed-off-by: Bjorn Helgaas
    Acked-by: Rafael J. Wysocki

    Jiang Liu
     
  • This patch changes .add/.remove interfaces of acpi_pci_driver.
    In the current implementation acpi_handle is passed as a parameter
    of .add/.remove interface. However, the acpi_pci_root structure
    contains more useful information than just the acpi_handle. This
    enables us to avoid some useless lookups in each acpi_pci_driver.

    Note: This changes interfaces used by acpi_pci_register_driver(), an
    exported symbol. This patch updates all the in-kernel users, but any
    out-of-kernel acpi_pci_register_driver() users will need updates.

    [bhelgaas: changelog]
    Signed-off-by: Taku Izumi
    Signed-off-by: Bjorn Helgaas

    Taku Izumi
     

24 Sep, 2012

1 commit


23 Sep, 2012

1 commit

  • * stable/late-swiotlb.v3.3:
    xen/swiotlb: Fix compile warnings when using plain integer instead of NULL pointer.
    xen/swiotlb: Remove functions not needed anymore.
    xen/pcifront: Use Xen-SWIOTLB when initting if required.
    xen/swiotlb: For early initialization, return zero on success.
    xen/swiotlb: Use the swiotlb_late_init_with_tbl to init Xen-SWIOTLB late when PV PCI is used.
    xen/swiotlb: Move the error strings to its own function.
    xen/swiotlb: Move the nr_tbl determination in its own function.
    swiotlb: add the late swiotlb initialization function with iotlb memory
    xen/swiotlb: With more than 4GB on 64-bit, disable the native SWIOTLB.
    xen/swiotlb: Simplify the logic.

    Conflicts:
    arch/x86/xen/pci-swiotlb-xen.c

    Signed-off-by: Konrad Rzeszutek Wilk

    Konrad Rzeszutek Wilk
     

21 Sep, 2012

2 commits

  • This restores the previous behavior of stopping all child devices before
    removing any of them. The current SR-IOV design, where removing the PF
    also drops references on all the VFs, depends on having the VFs continue
    to exist after having been stopped.

    [bhelgaas: changelog]
    Signed-off-by: Yinghai Lu
    Signed-off-by: Bjorn Helgaas

    Yinghai Lu
     
  • This reverts commit 433efd2247b0cbf5e7e86275e1f21281d3b99047.

    When we remove an SR-IOV device, we have this call chain:

    driver .remove() method
    pci_disable_sriov()
    sriov_disable()
    virtfn_remove()
    pci_get_domain_bus_and_slot()

    sriov_disable() is only called for PFs, not for VFs. When it's called
    for a PF, it loops through all the VFs and calls virtfn_remove() for
    each. But we stop and remove VFs before PFs, so by the time we get
    to virtfn_remove(), the VFs have already been stopped and deleted
    from the device list. Now pci_get_domain_bus_and_slot(), which uses
    bus_find_device() and relies on that device list, doesn't find the
    VFs, so the VF references aren't released correctly.

    Reported-by: Yinghai Lu
    Signed-off-by: Bjorn Helgaas

    Bjorn Helgaas
     

20 Sep, 2012

2 commits

  • This patch (as1591) moves the pm_runtime_get_noresume() and
    pm_runtime_put_sync() calls from __device_suspend() and
    device_resume() to device_prepare() and device_complete() in the PM
    core.

    The reason for doing this is to make sure that parent devices remain
    at full power (i.e., don't go into runtime suspend) while their
    children are being resumed from a system sleep.

    The PCI core already contained equivalent code to serve the same
    purpose. The patch removes the duplicated code, since it is no longer
    needed. One of the comments from the PCI core gets moved into the PM
    core, and a second comment is added to explain whe the _get_noresume
    and _put_sync calls are present.

    Signed-off-by: Alan Stern
    Signed-off-by: Rafael J. Wysocki

    Alan Stern
     
  • * pci/thierry-fixup-irqs:
    PCI: Provide a default pcibios_update_irq()
    PCI: Discard __init annotations for pci_fixup_irqs() and related functions

    Bjorn Helgaas
     

19 Sep, 2012

5 commits

  • Most architectures implement this in exactly the same way. Instead of
    having each architecture duplicate this function, provide a single
    implementation in the core and make it a weak symbol so that it can be
    overridden on architectures where it is required.

    Signed-off-by: Thierry Reding
    Signed-off-by: Bjorn Helgaas

    Thierry Reding
     
  • Remove the __init annotations in order to keep pci_fixup_irqs() around
    after init (e.g. for hotplug). This requires the same change for the
    implementation of pcibios_update_irq() on all architectures. While at
    it, all __devinit annotations are removed as well, since they will be
    useless now that HOTPLUG is always on.

    Signed-off-by: Thierry Reding
    Signed-off-by: Bjorn Helgaas
    Acked-by: Greg Kroah-Hartman

    Thierry Reding
     
  • Should use struct pci_bus_resource instead of struct pci_host_bridge_window

    Commit 45ca9e9730 ("PCI: add helpers for building PCI bus resource lists")
    added pci_free_resource_list() and used it in pci_bus_remove_resources().
    Later it was also used for host bridge aperture lists, which was fine until
    commit 0efd5aab41 ("PCI: add struct pci_host_bridge_window with CPU/bus
    address offset"). That commit added offset information, so we needed a
    struct pci_host_bridge_window that was separate from struct
    pci_bus_resource.

    Commit 0efd5aab41 should have split the host bridge aperture users of
    pci_free_resource_list() from the pci_bus_resource user
    (pci_bus_remove_resources()), but it did not.

    [bhelgaas: changelog -- 0efd5aab41 was mine, so this is all my fault]
    Signed-off-by: Yinghai Lu
    Signed-off-by: Bjorn Helgaas

    Yinghai Lu
     
  • For bridges with "secondary > subordinate", i.e., invalid bus number
    apertures, we don't enumerate anything behind the bridge unless the
    user specified "pci=assign-busses".

    This patch makes us automatically try to reassign the downstream bus
    numbers in this case (just for that bridge, not for all bridges as
    "pci=assign-busses" does).

    We don't discover all the devices on the Intel DP43BF motherboard
    without this change (or "pci=assign-busses") because its BIOS configures
    a bridge as:

    pci 0000:00:1e.0: PCI bridge to [bus 20-08] (subtractive decode)

    [bhelgaas: changelog, change message to dev_info]
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=18412
    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=625754
    Reported-by: Brian C. Huffman
    Reported-by: VL
    Tested-by: VL
    Signed-off-by: Yinghai Lu
    Signed-off-by: Bjorn Helgaas
    Cc: stable@vger.kernel.org

    Yinghai Lu
     
  • * pci/konstantin-sysfs:
    PCI: Convert "new_id"/"remove_id" into generic pci_bus driver attributes

    Bjorn Helgaas
     

18 Sep, 2012

4 commits

  • Function eeh_rmv_from_parent_pe() could be called by the path of
    either normal PCI hotplug, or EEH recovery. For the former case,
    we need purge the corresponding PE on removal of the associated
    PE bus.

    The patch tries to cover that by passing more information to function
    pcibios_remove_pci_devices() so that we know if the corresponding PE
    needs to be purged or be marked as "invalid".

    Signed-off-by: Gavin Shan
    Signed-off-by: Benjamin Herrenschmidt

    Gavin Shan
     
  • * pci/jiang-get-domain-bus-slot:
    xen-pcifront: Use hotplug-safe pci_get_domain_bus_and_slot()
    PCI: Use hotplug-safe pci_get_domain_bus_and_slot()
    PCI/cpcihp: Use hotplug-safe pci_get_domain_bus_and_slot()
    PCI/vga: Use hotplug-safe pci_get_domain_bus_and_slot()
    ia64/PCI: Use hotplug-safe pci_get_domain_bus_and_slot()

    Bjorn Helgaas
     
  • This patch removes hardcoded sysfs attributes manipulation and
    converts them into generic pci_bus->drv_attrs. This saves several bytes.

    Signed-off-by: Konstantin Khlebnikov
    Signed-off-by: Bjorn Helgaas

    Konstantin Khlebnikov
     
  • We piggyback on "xen/swiotlb: Use the swiotlb_late_init_with_tbl to init
    Xen-SWIOTLB late when PV PCI is used." functionality to start up
    the Xen-SWIOTLB if we are hot-plugged. This allows us to bypass
    the need to supply 'iommu=soft' on the Linux command line (mostly).
    With this patch, if a user forgot 'iommu=soft' on the command line,
    and hotplug a PCI device they will get:

    pcifront pci-0: Installing PCI frontend
    Warning: only able to allocate 4 MB for software IO TLB
    software IO TLB [mem 0x2a000000-0x2a3fffff] (4MB) mapped at [ffff88002a000000-ffff88002a3fffff]
    pcifront pci-0: Creating PCI Frontend Bus 0000:00
    pcifront pci-0: PCI host bridge to bus 0000:00
    pci_bus 0000:00: root bus resource [io 0x0000-0xffff]
    pci_bus 0000:00: root bus resource [mem 0x00000000-0xfffffffff]
    pci 0000:00:00.0: [8086:10d3] type 00 class 0x020000
    pci 0000:00:00.0: reg 10: [mem 0xfe5c0000-0xfe5dffff]
    pci 0000:00:00.0: reg 14: [mem 0xfe500000-0xfe57ffff]
    pci 0000:00:00.0: reg 18: [io 0xe000-0xe01f]
    pci 0000:00:00.0: reg 1c: [mem 0xfe5e0000-0xfe5e3fff]
    pcifront pci-0: claiming resource 0000:00:00.0/0
    pcifront pci-0: claiming resource 0000:00:00.0/1
    pcifront pci-0: claiming resource 0000:00:00.0/2
    pcifront pci-0: claiming resource 0000:00:00.0/3
    e1000e: Intel(R) PRO/1000 Network Driver - 2.0.0-k
    e1000e: Copyright(c) 1999 - 2012 Intel Corporation.
    e1000e 0000:00:00.0: Disabling ASPM L0s L1
    e1000e 0000:00:00.0: enabling device (0000 -> 0002)
    e1000e 0000:00:00.0: Xen PCI mapped GSI16 to IRQ34
    e1000e 0000:00:00.0: (unregistered net_device): Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
    e1000e 0000:00:00.0: eth0: (PCI Express:2.5GT/s:Width x1) 00:1b:21:ab:c6:13
    e1000e 0000:00:00.0: eth0: Intel(R) PRO/1000 Network Connection
    e1000e 0000:00:00.0: eth0: MAC: 3, PHY: 8, PBA No: E46981-005

    The "Warning only" will go away if one supplies 'iommu=soft' instead
    as we have a higher chance of being able to allocate large swaths of
    memory.

    Acked-by: Stefano Stabellini
    Signed-off-by: Konrad Rzeszutek Wilk

    Konrad Rzeszutek Wilk
     

14 Sep, 2012

1 commit

  • * commit 'v3.6-rc5': (1098 commits)
    Linux 3.6-rc5
    HID: tpkbd: work even if the new Lenovo Keyboard driver is not configured
    Remove user-triggerable BUG from mpol_to_str
    xen/pciback: Fix proper FLR steps.
    uml: fix compile error in deliver_alarm()
    dj: memory scribble in logi_dj
    Fix order of arguments to compat_put_time[spec|val]
    xen: Use correct masking in xen_swiotlb_alloc_coherent.
    xen: fix logical error in tlb flushing
    xen/p2m: Fix one-off error in checking the P2M tree directory.
    powerpc: Don't use __put_user() in patch_instruction
    powerpc: Make sure IPI handlers see data written by IPI senders
    powerpc: Restore correct DSCR in context switch
    powerpc: Fix DSCR inheritance in copy_thread()
    powerpc: Keep thread.dscr and thread.dscr_inherit in sync
    powerpc: Update DSCR on all CPUs when writing sysfs dscr_default
    powerpc/powernv: Always go into nap mode when CPU is offline
    powerpc: Give hypervisor decrementer interrupts their own handler
    powerpc/vphn: Fix arch_update_cpu_topology() return value
    ARM: gemini: fix the gemini build
    ...

    Conflicts:
    drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
    drivers/rapidio/devices/tsi721.c

    Bjorn Helgaas
     

13 Sep, 2012

6 commits

  • * pci/trivial:
    PCI: Drop duplicate const in DECLARE_PCI_FIXUP_SECTION
    PCI: Drop bogus default from ARCH_SUPPORTS_MSI
    PCI: cpqphp: Remove unreachable path
    PCI: Remove bus number resource debug messages
    PCI/AER: Print completion message at KERN_INFO to match starting message
    PCI: Fix drivers/pci/pci.c kernel-doc warnings

    Bjorn Helgaas
     
  • * commit 'v3.6-rc5': (1098 commits)
    Linux 3.6-rc5
    HID: tpkbd: work even if the new Lenovo Keyboard driver is not configured
    Remove user-triggerable BUG from mpol_to_str
    xen/pciback: Fix proper FLR steps.
    uml: fix compile error in deliver_alarm()
    dj: memory scribble in logi_dj
    Fix order of arguments to compat_put_time[spec|val]
    xen: Use correct masking in xen_swiotlb_alloc_coherent.
    xen: fix logical error in tlb flushing
    xen/p2m: Fix one-off error in checking the P2M tree directory.
    powerpc: Don't use __put_user() in patch_instruction
    powerpc: Make sure IPI handlers see data written by IPI senders
    powerpc: Restore correct DSCR in context switch
    powerpc: Fix DSCR inheritance in copy_thread()
    powerpc: Keep thread.dscr and thread.dscr_inherit in sync
    powerpc: Update DSCR on all CPUs when writing sysfs dscr_default
    powerpc/powernv: Always go into nap mode when CPU is offline
    powerpc: Give hypervisor decrementer interrupts their own handler
    powerpc/vphn: Fix arch_update_cpu_topology() return value
    ARM: gemini: fix the gemini build
    ...

    Conflicts:
    drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
    drivers/rapidio/devices/tsi721.c

    Bjorn Helgaas
     
  • Following code has a race window between pci_find_bus() and pci_get_slot()
    if PCI hotplug operation happens between them which removes the pci_bus.
    So use PCI hotplug safe interface pci_get_domain_bus_and_slot() instead,
    which also reduces code complexity.

    struct pci_bus *pci_bus = pci_find_bus(domain, busno);
    struct pci_dev *pci_dev = pci_get_slot(pci_bus, devfn);

    Tested-by: Konrad Rzeszutek Wilk
    Signed-off-by: Jiang Liu
    Signed-off-by: Bjorn Helgaas
    Acked-by: Konrad Rzeszutek Wilk

    Jiang Liu
     
  • Following code has a race window between pci_find_bus() and pci_get_slot()
    if PCI hotplug operation happens between them which removes the pci_bus.
    So use PCI hotplug safe interface pci_get_domain_bus_and_slot() instead,
    which also reduces code complexity.

    struct pci_bus *pci_bus = pci_find_bus(domain, busno);
    struct pci_dev *pci_dev = pci_get_slot(pci_bus, devfn);

    Signed-off-by: Jiang Liu
    Signed-off-by: Bjorn Helgaas

    Jiang Liu
     
  • Following code has a race window between pci_find_bus() and pci_get_slot()
    if PCI hotplug operation happens between them which removes the pci_bus.
    So use PCI hotplug safe interface pci_get_domain_bus_and_slot() instead,
    which also reduces code complexity.

    struct pci_bus *pci_bus = pci_find_bus(domain, busno);
    struct pci_dev *pci_dev = pci_get_slot(pci_bus, devfn);

    Signed-off-by: Jiang Liu
    Signed-off-by: Bjorn Helgaas

    Jiang Liu
     
  • * pci/stephen-const:
    make drivers with pci error handlers const
    scsi: make pci error handlers const
    netdev: make pci_error_handlers const
    PCI: Make pci_error_handlers const

    Bjorn Helgaas
     

12 Sep, 2012

5 commits

  • …/tip into stable/for-linus-3.7

    * 'x86/platform' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (9690 commits)
    x86: Document x86_init.paging.pagetable_init()
    x86: xen: Cleanup and remove x86_init.paging.pagetable_setup_done()
    x86: Move paging_init() call to x86_init.paging.pagetable_init()
    x86: Rename pagetable_setup_start() to pagetable_init()
    x86: Remove base argument from x86_init.paging.pagetable_setup_start
    Linux 3.6-rc5
    HID: tpkbd: work even if the new Lenovo Keyboard driver is not configured
    Remove user-triggerable BUG from mpol_to_str
    xen/pciback: Fix proper FLR steps.
    uml: fix compile error in deliver_alarm()
    dj: memory scribble in logi_dj
    Fix order of arguments to compat_put_time[spec|val]
    xen: Use correct masking in xen_swiotlb_alloc_coherent.
    xen: fix logical error in tlb flushing
    xen/p2m: Fix one-off error in checking the P2M tree directory.
    powerpc: Don't use __put_user() in patch_instruction
    powerpc: Make sure IPI handlers see data written by IPI senders
    powerpc: Restore correct DSCR in context switch
    powerpc: Fix DSCR inheritance in copy_thread()
    powerpc: Keep thread.dscr and thread.dscr_inherit in sync
    ...

    Konrad Rzeszutek Wilk
     
  • * pci/gavin-window-alignment:
    powerpc/powernv: I/O and memory alignment for P2P bridges
    powerpc/PCI: Override pcibios_window_alignment()
    PCI: Refactor pbus_size_mem()
    PCI: Align P2P windows using pcibios_window_alignment()
    PCI: Add weak pcibios_window_alignment() interface

    Bjorn Helgaas
     
  • The original idea comes from Ram Pai. This patch puts the chunk of
    code for calculating the minimal alignment of memory window into a
    separate inline function.

    Signed-off-by: Gavin Shan
    Signed-off-by: Bjorn Helgaas

    Gavin Shan
     
  • This patch changes pbus_size_io() and pbus_size_mem() to do window (I/O,
    memory and prefetchable memory) reassignment based on the minimal
    alignments for the P2P bridge, which was retrieved by window_alignment().

    [bhelgaas: changelog]
    Signed-off-by: Gavin Shan
    Signed-off-by: Bjorn Helgaas

    Gavin Shan
     
  • This patch implements a weak function to return the default I/O or memory
    window alignment for a P2P bridge. By default, I/O windows are aligned to
    4KiB or 1KiB and memory windows are aligned to 4MiB. Some platforms, e.g.,
    powernv, have special alignment requirements and can override
    pcibios_window_alignment().

    [bhelgaas: changelog]
    Signed-off-by: Gavin Shan
    Signed-off-by: Bjorn Helgaas

    Gavin Shan
     

11 Sep, 2012

3 commits