)]}'
{
  "log": [
    {
      "commit": "2a38ada0f1ab9f894eea4428731ebc811b51c3f3",
      "tree": "759c765808a23a3a35e4ba10d8306c847c0205b7",
      "parents": [
        "19218e895cefdd389c96af12c93c89e7276bbaad",
        "44d19f5a04ae4e433548ba2f25e4d2ccfcac765e"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "message": "Merge tag \u0027v3.4.72\u0027 into tmp\n\nThis is the 3.4.72 stable release\n\nConflicts:\n\tarch/arm/Kconfig\n\tarch/arm/include/asm/mutex.h\n\tarch/arm/kernel/perf_event.c\n\tarch/arm/kernel/traps.c\n\tarch/arm/mm/dma-mapping.c\n\tdrivers/base/power/main.c\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/gpu/drm/radeon/radeon_mode.h\n\tdrivers/mmc/card/block.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/usb/core/message.c\n\tdrivers/usb/host/xhci-plat.c\n\tdrivers/usb/host/xhci.h\n\tdrivers/virtio/virtio_ring.c\n\tfs/ubifs/dir.c\n\tinclude/linux/freezer.h\n\tinclude/linux/virtio.h\n\tinclude/media/v4l2-ctrls.h\n\tinclude/net/bluetooth/hci_core.h\n\tinclude/net/bluetooth/mgmt.h\n\tkernel/cgroup.c\n\tkernel/futex.c\n\tkernel/signal.c\n\tnet/bluetooth/hci_conn.c\n\tnet/bluetooth/hci_core.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\tnet/bluetooth/mgmt.c\n\tnet/bluetooth/rfcomm/sock.c\n\tnet/bluetooth/smp.c\n\nChange-Id: I4fb0d5de74ca76f933d95d98e1a9c2c859402f34\n"
    },
    {
      "commit": "5d6d6a7a101136aec882cc168c2d6bd4376b3760",
      "tree": "197a7d2091eef7f5593ac651b380adb0eaed9b5b",
      "parents": [
        "4e0c56ab133fcb29fa3709c095f9347a033662c1"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Nov 18 17:02:45 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Dec 04 10:50:32 2013 -0800"
      },
      "message": "PCI: Remove duplicate pci_disable_device() from pcie_portdrv_remove()\n\ncommit e7cc5cf74544d97d7b69e2701595037474db1f96 upstream.\n\nThe pcie_portdrv .probe() method calls pci_enable_device() once, in\npcie_port_device_register(), but the .remove() method calls\npci_disable_device() twice, in pcie_port_device_remove() and in\npcie_portdrv_remove().\n\nThat causes a \"disabling already-disabled device\" warning when removing a\nPCIe port device.  This happens all the time when removing Thunderbolt\ndevices, but is also easy to reproduce with, e.g.,\n\"echo 0000:00:1c.3 \u003e /sys/bus/pci/drivers/pcieport/unbind\"\n\nThis patch removes the disable from pcie_portdrv_remove().\n\n[bhelgaas: changelog, tag for stable]\nReported-by: David Bulkow \u003cDavid.Bulkow@stratus.com\u003e\nReported-by: Mika Westerberg \u003cmika.westerberg@linux.intel.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "17447567e81dd2e9614ec4837128daebc0c4abb1",
      "tree": "9ae54a78fc78b3b698ee03d5aab8cbd6abc62c56",
      "parents": [
        "d1814ea12da067fda7bac933e06ef205163617f6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Mon Feb 04 15:56:05 2013 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Nov 20 10:43:19 2013 -0800"
      },
      "message": "PCI/PM: Clear state_saved during suspend\n\ncommit 82fee4d67ab86d6fe5eb0f9a9e988ca9d654d765 upstream.\n\nThis patch clears pci_dev-\u003estate_saved at the beginning of suspending.\nPCI config state may be saved long before that.  Some drivers call\npci_save_state() from the -\u003eprobe() callback to get snapshot of sane\nconfiguration space to use in the -\u003eslot_reset() callback.\n\n[wangyj: adjust context]\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e # add comment\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "c10141099c1ea42afa3ded64530cf285d8ffc96a",
      "tree": "3ecf78bc947f72c19ea04e13e696aa424a37ddcf",
      "parents": [
        "161f4a458cd88dc6ab33078d64aa28315129fade"
      ],
      "author": {
        "name": "Nikhil P Rao",
        "email": "nikhil.rao@intel.com",
        "time": "Wed Jun 20 12:56:00 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Nov 20 10:43:18 2013 -0800"
      },
      "message": "PCI: fix truncation of resource size to 32 bits\n\ncommit d6776e6d5c2f8db0252f447b09736075e1bbe387 upstream.\n\n_pci_assign_resource() took an int \"size\" argument, which meant that\nsizes larger than 4GB were truncated.  Change type to resource_size_t.\n\n[bhelgaas: changelog]\nSigned-off-by: Nikhil P Rao \u003cnikhil.rao@intel.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCc: Jiri Slaby \u003cjslaby@suse.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1c9ce1e6c11777c95b974883be2f0313873d6f14",
      "tree": "68b149cb9f9e7988fc0955239208d9ab104d7bb6",
      "parents": [
        "849520777e464fa051188d1118d43f21babb9dbe",
        "00709f7f01c3a10252f030f0bdacecbb349d7be4"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.11\u0027 into cm-10.1\n\nThis is the 3.4.11 stable release\n\nConflicts:\n\tarch/arm/vfp/vfpmodule.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\nChange-Id: I164bf611358e14afd3ff48e55a99c0d7c7afc45f\n"
    },
    {
      "commit": "722804f129921e1d8c134b1bb7a594de395e3210",
      "tree": "de551764d9adeacb1be547c45d516392b8d0f41b",
      "parents": [
        "26a849f49fb3347d126a0ed6611173f903374ef4"
      ],
      "author": {
        "name": "Shane Huang",
        "email": "shane.huang@amd.com",
        "time": "Mon Jun 03 18:24:10 2013 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jul 21 18:19:01 2013 -0700"
      },
      "message": "ahci: Add AMD CZ SATA device ID\n\ncommit fafe5c3d82a470d73de53e6b08eb4e28d974d895 upstream.\n\nTo add AMD CZ SATA controller device ID of IDE mode.\n\n[bhelgaas: drop pci_ids.h update]\nSigned-off-by: Shane Huang \u003cshane.huang@amd.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nReviewed-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "dde448d95d8698ee4c8373bb48fe08a22f41052f",
      "tree": "7fe87fa93bfa5b81e6f87b147e32512d2e8198e3",
      "parents": [
        "ac4f6190fae02a3dc30133f90488b996f726bf7a",
        "f95b978981a7d154ba40d14c18e8ed5c694e6124"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.10\u0027 into cm-10.1\n\nThis is the 3.4.10 stable release\n\nConflicts:\n\tarch/arm/mm/tlb-v7.S\n\tarch/arm/vfp/entry.S\n\tdrivers/base/power/main.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/net/tun.c\n\tdrivers/usb/core/hub.c\n\tdrivers/usb/host/xhci.h\n\tinclude/linux/sched.h\n\tkernel/power/suspend.c\n\nChange-Id: Ia2477ec93ceb64b13dd1a2d8aa646cb233387d14\n"
    },
    {
      "commit": "076a5dc21f6251c02d351c0ecf640ff8721130c6",
      "tree": "2319ff6e0620e557d328e27c8263adb45299444f",
      "parents": [
        "7e99b12d8c65add111c25a17ec49a3a496bdb6b1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Fri Apr 12 13:58:17 2013 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue May 07 19:51:55 2013 -0700"
      },
      "message": "PCI/PM: Fix fallback to PCI_D0 in pci_platform_power_transition()\n\ncommit 769ba7212f2059ca9fe0c73371e3d415c8c1c529 upstream.\n\nCommit b51306c (PCI: Set device power state to PCI_D0 for device\nwithout native PM support) modified pci_platform_power_transition()\nby adding code causing dev-\u003ecurrent_state for devices that don\u0027t\nsupport native PCI PM but are power-manageable by the platform to be\nchanged to PCI_D0 regardless of the value returned by the preceding\nplatform_pci_set_power_state().  In particular, that also is done\nif the platform_pci_set_power_state() has been successful, which\ncauses the correct power state of the device set by\npci_update_current_state() in that case to be overwritten by PCI_D0.\n\nFix that mistake by making the fallback to PCI_D0 only happen if\nthe platform_pci_set_power_state() has returned an error.\n\n[bhelgaas: folded in Yinghai\u0027s simplification, added URL \u0026 stable info]\nReference: http://lkml.kernel.org/r/27806FC4E5928A408B78E88BBC67A2306F466BBA@ORSMSX101.amr.corp.intel.com\nReported-by: Chris J. Benenati \u003cchris.j.benenati@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nAcked-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "15295d7dc33491a0a015a0f48d04bbaa696b802d",
      "tree": "f16b86cb84bcf807dee09fc22b281d3972759bf7",
      "parents": [
        "dc66ff14a9489f8c239ecc43a20ca946cce8d217"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 11 20:49:49 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Feb 17 10:49:26 2013 -0800"
      },
      "message": "PCI/PM: Clean up PME state when removing a device\n\ncommit 249bfb83cf8ba658955f0245ac3981d941f746ee upstream.\n\nDevices are added to pci_pme_list when drivers use pci_enable_wake()\nor pci_wake_from_d3(), but they aren\u0027t removed from the list unless\nthe driver explicitly disables wakeup.  Many drivers never disable\nwakeup, so their devices remain on the list even after they are\nremoved, e.g., via hotplug.  A subsequent PME poll will oops when\nit tries to touch the device.\n\nThis patch disables PME# on a device before removing it, which removes\nthe device from pci_pme_list.  This is safe even if the device never\nhad PME# enabled.\n\nThis oops can be triggered by unplugging a Thunderbolt ethernet adapter\non a Macbook Pro, as reported by Daniel below.\n\n[bhelgaas: changelog]\nReference: http://lkml.kernel.org/r/CAMVG2svG21yiM1wkH4_2pen2n+cr2-Zv7TbH3Gj+8MwevZjDbw@mail.gmail.com\nReported-and-tested-by: Daniel J Blueman \u003cdaniel@quora.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1dbcda3ab27031e2b744b1f8ba48370304340519",
      "tree": "004d1e2ba0fa153316fade027e92efab3ebb6f7b",
      "parents": [
        "5f3e5a32d083008c1ad850375d24fc85a27803e4"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Fri Jan 11 12:07:22 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jan 27 20:47:43 2013 -0800"
      },
      "message": "PCI: shpchp: Handle push button event asynchronously\n\ncommit d347e75847c1fb299c97736638f45e6ea39702d4 upstream.\n\nUse non-ordered workqueue for attention button events.\n\nAttention button events on each slot can be handled asynchronously. So\nwe should use non-ordered workqueue. This patch also removes ordered\nworkqueue in shpchp as a result.\n\n486b10b9f4 (\"PCI: pciehp: Handle push button event asynchronously\") made\nthe same change to pciehp.  I split this out from a patch by Yijing Wang\n\u003cwangyijing@huawei.com\u003e so we fix one thing at a time and to make the\nshpchp history correspond more closely with the pciehp history.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCC: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "5f3e5a32d083008c1ad850375d24fc85a27803e4",
      "tree": "4d440fea7cac28d605b81e3fcd934f56a8929813",
      "parents": [
        "11cfb2b163f483a4c97e5a229635d0f6b23bd5ac"
      ],
      "author": {
        "name": "Yijing Wang",
        "email": "wangyijing@huawei.com",
        "time": "Fri Jan 11 10:15:54 2013 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jan 27 20:47:43 2013 -0800"
      },
      "message": "PCI: pciehp: Use per-slot workqueues to avoid deadlock\n\ncommit c2be6f93b383c873a4f9d521afa49b1b67d06085 upstream.\n\nWhen we have a hotplug-capable PCIe port with a second hotplug-capable\nPCIe port below it, removing the device below the upstream port causes\na deadlock.\n\nThe deadlock happens because we use the pciehp_wq workqueue to run\npciehp_power_thread(), which uses pciehp_disable_slot() to remove devices\nbelow the upstream port.  When we remove the downstream PCIe port, we call\npciehp_remove(), the pciehp driver\u0027s .remove() method.  That calls\nflush_workqueue(pciehp_wq), which deadlocks because the\npciehp_power_thread() work item is still running.\n\nThis patch avoids the deadlock by creating a workqueue for every PCIe port\nand removing the single shared workqueue.\n\nHere\u0027s the call path that leads to the deadlock:\n\n  pciehp_queue_pushbutton_work\n    queue_work(pciehp_wq)                   # queue pciehp_power_thread\n    ...\n\n  pciehp_power_thread\n    pciehp_disable_slot\n      remove_board\n\tpciehp_unconfigure_device\n\t  pci_stop_and_remove_bus_device\n\t    ...\n\t      pciehp_remove                 # pciehp driver .remove method\n\t\tpciehp_release_ctrl\n\t\t  pcie_cleanup_slot\n\t\t    flush_workqueue(pciehp_wq)\n\nThis is fairly urgent because it can be caused by simply unplugging a\nThunderbolt adapter, as reported by Daniel below.\n\n[bhelgaas: changelog]\nReference: http://lkml.kernel.org/r/CAMVG2ssiRgcTD1bej2tkUUfsWmpL5eNtPcNif9va2-Gzb2u8nQ@mail.gmail.com\nReported-and-tested-by: Daniel J Blueman \u003cdaniel@quora.org\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "11cfb2b163f483a4c97e5a229635d0f6b23bd5ac",
      "tree": "5ff7675d9a370c83da55f8be0640f2add28315d3",
      "parents": [
        "7145808ebc1f0188cf9decbfd23279b0c10022f1"
      ],
      "author": {
        "name": "Colin Ian King",
        "email": "colin.king@canonical.com",
        "time": "Tue Nov 27 14:09:40 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jan 27 20:47:43 2013 -0800"
      },
      "message": "PCI: Allow pcie_aspm\u003dforce even when FADT indicates it is unsupported\n\ncommit 9e16721498b0c3d3ebfa0b503c63d35c0a4c0642 upstream.\n\nRight now using pcie_aspm\u003dforce will not enable ASPM if the FADT indicates\nASPM is unsupported.  However, the semantics of force should probably allow\nfor this, especially as they did before 3c076351c4 (\"PCI: Rework ASPM\ndisable code\")\n\nThis patch just skips the clearing of any ASPM setup that the firmware has\ncarried out on this bus if pcie_aspm\u003dforce is being used.\n\nReference: http://bugs.launchpad.net/bugs/962038\nSigned-off-by: Colin Ian King \u003ccolin.king@canonical.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "7145808ebc1f0188cf9decbfd23279b0c10022f1",
      "tree": "5a6d6be7d8ba27043e00c47b0523b469bb3d4b71",
      "parents": [
        "465760c68a4e5037f10a7eab1df3fb2aff1e03a4"
      ],
      "author": {
        "name": "Betty Dall",
        "email": "betty.dall@hp.com",
        "time": "Sun Jan 13 15:46:18 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jan 27 20:47:43 2013 -0800"
      },
      "message": "PCI/AER: pci_get_domain_bus_and_slot() call missing required pci_dev_put()\n\ncommit a82b6af37d20bfe6e99a4d890f1cf1d89059929f upstream.\n\nThe function aer_recover_queue() calls pci_get_domain_bus_and_slot(), which\nrequires that the caller decrement the reference count with pci_dev_put().\nThis patch adds the missing call to pci_dev_put().\n\nSigned-off-by: Betty Dall \u003cbetty.dall@hp.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nReviewed-by: Shuah Khan \u003cshuah.khan@hp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "7164ac211086207dc371e3b32165226e28e2dcfa",
      "tree": "e7dc397786bda21d8476ce0174433a34c5b99bee",
      "parents": [
        "fdbe6fecef94b6171de7a2ccfe543a694c9c41bc"
      ],
      "author": {
        "name": "Andy Lutomirski",
        "email": "luto@amacapital.net",
        "time": "Sat Dec 01 12:37:20 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 11 09:07:16 2013 -0800"
      },
      "message": "PCI: Reduce Ricoh 0xe822 SD card reader base clock frequency to 50MHz\n\ncommit 812089e01b9f65f90fc8fc670d8cce72a0e01fbb upstream.\n\nOtherwise it fails like this on cards like the Transcend 16GB SDHC card:\n\n    mmc0: new SDHC card at address b368\n    mmcblk0: mmc0:b368 SDC   15.0 GiB\n    mmcblk0: error -110 sending status command, retrying\n    mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0xb0\n\nTested on my Lenovo x200 laptop.\n\n[bhelgaas: changelog]\nSigned-off-by: Andy Lutomirski \u003cluto@amacapital.net\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nAcked-by: Chris Ball \u003ccjb@laptop.org\u003e\nCC: Manoj Iyer \u003cmanoj.iyer@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "8a5bdaf3724964a50eee6c99636b88a8be61f210",
      "tree": "369593fd9e766da742fc0fc3b352273b3a899bba",
      "parents": [
        "9985432a82e6700cf9759f413ecaecbf617318cb"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Sep 19 21:59:02 2012 +0200"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Fri Nov 02 11:26:11 2012 -0700"
      },
      "message": "PM: Prevent runtime suspend during system resume\n\nThis patch (as1591) moves the pm_runtime_get_noresume() and\npm_runtime_put_sync() calls from __device_suspend() and\ndevice_resume() to device_prepare() and device_complete() in the PM\ncore.\n\nThe reason for doing this is to make sure that parent devices remain\nat full power (i.e., don\u0027t go into runtime suspend) while their\nchildren are being resumed from a system sleep.\n\nThe PCI core already contained equivalent code to serve the same\npurpose.  The patch removes the duplicated code, since it is no longer\nneeded.  One of the comments from the PCI core gets moved into the PM\ncore, and a second comment is added to explain whe the _get_noresume\nand _put_sync calls are present.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "b790ef23cd1fd3fece4777e90d85a945c4820ae7",
      "tree": "2abbd9a20dca6f5106c8928a71dd07cf869c6c01",
      "parents": [
        "82e0551186fd455d792fccae805470f222339c06"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Sep 10 17:19:33 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 13 05:38:48 2012 +0900"
      },
      "message": "PCI: Check P2P bridge for invalid secondary/subordinate range\n\ncommit 1965f66e7db08d1ebccd24a59043eba826cc1ce8 upstream.\n\nFor bridges with \"secondary \u003e subordinate\", i.e., invalid bus number\napertures, we don\u0027t enumerate anything behind the bridge unless the\nuser specified \"pci\u003dassign-busses\".\n\nThis patch makes us automatically try to reassign the downstream bus\nnumbers in this case (just for that bridge, not for all bridges as\n\"pci\u003dassign-busses\" does).\n\nWe don\u0027t discover all the devices on the Intel DP43BF motherboard\nwithout this change (or \"pci\u003dassign-busses\") because its BIOS configures\na bridge as:\n\n    pci 0000:00:1e.0: PCI bridge to [bus 20-08] (subtractive decode)\n\n[bhelgaas: changelog, change message to dev_info]\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\u003d18412\nBugzilla: https://bugzilla.redhat.com/show_bug.cgi?id\u003d625754\nReported-by: Brian C. Huffman \u003cbhuffman@graze.net\u003e\nReported-by: VL \u003cvl.homutov@gmail.com\u003e\nTested-by: VL \u003cvl.homutov@gmail.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n\n"
    },
    {
      "commit": "95482ba9494658e69aecf0f97b64f3f2ab82af62",
      "tree": "45c57b2a899abf802b105b3a5a306fc266ef1053",
      "parents": [
        "2006e6f75e7cb88e0508eeff066834c847ce91b3"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Wed Jun 20 16:18:29 2012 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 13 05:38:38 2012 +0900"
      },
      "message": "PCI: acpiphp: check whether _ADR evaluation succeeded\n\ncommit dfb117b3e50c52c7b3416db4a4569224b8db80bb upstream.\n\nCheck whether we evaluated _ADR successfully.  Previously we ignored\nfailure, so we would have used garbage data from the stack as the device\nand function number.\n\nWe return AE_OK so that we ignore only this slot and continue looking\nfor other slots.\n\nFound by Coverity (CID 113981).\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "81d030df8597288a2fd12950aaf0842dbfa0b216",
      "tree": "451aa7aca754d26381aa8b0199ef5bcde623961f",
      "parents": [
        "459243191d5ba70a94d74b604b91bf82bb9f0772"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Aug 12 23:26:07 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Sep 14 10:00:20 2012 -0700"
      },
      "message": "PCI: EHCI: Fix crash during hibernation on ASUS computers\n\ncommit 0b68c8e2c3afaf9807eb1ebe0ccfb3b809570aa4 upstream.\n\nCommit dbf0e4c (PCI: EHCI: fix crash during suspend on ASUS\ncomputers) added a workaround for an ASUS suspend issue related to\nUSB EHCI and a bug in a number of ASUS BIOSes that attempt to shut\ndown the EHCI controller during system suspend if its PCI command\nregister doesn\u0027t contain 0 at that time.\n\nIt turns out that the same workaround is necessary in the analogous\nhibernation code path, so add it.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d45811\nReported-and-tested-by: Oleksij Rempel \u003cbug-track@fisher-privat.net\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "0659cf9dcd148f6771c056fa95976fda9c5abf9d",
      "tree": "4f6cc56b2e5a4ca1ada1320a9961e6a86805de58",
      "parents": [
        "b62d32b9166b085a487916eca514b59b5ffdf2b7"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Jul 09 11:09:21 2012 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jul 16 09:04:39 2012 -0700"
      },
      "message": "PCI: EHCI: fix crash during suspend on ASUS computers\n\ncommit dbf0e4c7257f8d684ec1a3c919853464293de66e upstream.\n\nQuite a few ASUS computers experience a nasty problem, related to the\nEHCI controllers, when going into system suspend.  It was observed\nthat the problem didn\u0027t occur if the controllers were not put into the\nD3 power state before starting the suspend, and commit\n151b61284776be2d6f02d48c23c3625678960b97 (USB: EHCI: fix crash during\nsuspend on ASUS computers) was created to do this.\n\nIt turned out this approach messed up other computers that didn\u0027t have\nthe problem -- it prevented USB wakeup from working.  Consequently\ncommit c2fb8a3fa25513de8fedb38509b1f15a5bbee47b (USB: add\nNO_D3_DURING_SLEEP flag and revert 151b61284776be2) was merged; it\nreverted the earlier commit and added a whitelist of known good board\nnames.\n\nNow we know the actual cause of the problem.  Thanks to AceLan Kao for\ntracking it down.\n\nAccording to him, an engineer at ASUS explained that some of their\nBIOSes contain a bug that was added in an attempt to work around a\nproblem in early versions of Windows.  When the computer goes into S3\nsuspend, the BIOS tries to verify that the EHCI controllers were first\nquiesced by the OS.  Nothing\u0027s wrong with this, but the BIOS does it\nby checking that the PCI COMMAND registers contain 0 without checking\nthe controllers\u0027 power state.  If the register isn\u0027t 0, the BIOS\nassumes the controller needs to be quiesced and tries to do so.  This\ninvolves making various MMIO accesses to the controller, which don\u0027t\nwork very well if the controller is already in D3.  The end result is\na system hang or memory corruption.\n\nSince the value in the PCI COMMAND register doesn\u0027t matter once the\ncontroller has been suspended, and since the value will be restored\nanyway when the controller is resumed, we can work around the BIOS bug\nsimply by setting the register to 0 during system suspend.  This patch\n(as1590) does so and also reverts the second commit mentioned above,\nwhich is now unnecessary.\n\nIn theory we could do this for every PCI device.  However to avoid\nintroducing new problems, the patch restricts itself to EHCI host\ncontrollers.\n\nFinally the affected systems can suspend with USB wakeup working\nproperly.\n\nReference: https://bugzilla.kernel.org/show_bug.cgi?id\u003d37632\nReference: https://bugzilla.kernel.org/show_bug.cgi?id\u003d42728\nBased-on-patch-by: AceLan Kao \u003cacelan.kao@canonical.com\u003e\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nTested-by: Dâniel Fraga \u003cfragabr@gmail.com\u003e\nTested-by: Javier Marcet \u003cjmarcet@gmail.com\u003e\nTested-by: Andrey Rahmatullin \u003cwrar@wrar.name\u003e\nTested-by: Oleksij Rempel \u003cbug-track@fisher-privat.net\u003e\nTested-by: Pavel Pisa \u003cpisa@cmp.felk.cvut.cz\u003e\nAcked-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "12ad741b1c60c341bf85a90c828b6fa1df47dba5",
      "tree": "7e3210cbce2dd91f0ea83776c0c046f16fedd6d4",
      "parents": [
        "9a12826c11fc0b7cebe6ee0b0711f5ccaf8f6323"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Jun 13 11:20:19 2012 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jun 22 11:37:13 2012 -0700"
      },
      "message": "USB: add NO_D3_DURING_SLEEP flag and revert 151b61284776be2\n\ncommit c2fb8a3fa25513de8fedb38509b1f15a5bbee47b upstream.\n\nThis patch (as1558) fixes a problem affecting several ASUS computers:\nThe machine crashes or corrupts memory when going into suspend if the\nehci-hcd driver is bound to any controllers.  Users have been forced\nto unbind or unload ehci-hcd before putting their systems to sleep.\n\nAfter extensive testing, it was determined that the machines don\u0027t\nlike going into suspend when any EHCI controllers are in the PCI D3\npower state.  Presumably this is a firmware bug, but there\u0027s nothing\nwe can do about it except to avoid putting the controllers in D3\nduring system sleep.\n\nThe patch adds a new flag to indicate whether the problem is present,\nand avoids changing the controller\u0027s power state if the flag is set.\nRuntime suspend is unaffected; this matters only for system suspend.\nHowever as a side effect, the controller will not respond to remote\nwakeup requests while the system is asleep.  Hence USB wakeup is not\nfunctional -- but of course, this is already true in the current state\nof affairs.\n\nA similar patch has already been applied as commit\n151b61284776be2d6f02d48c23c3625678960b97 (USB: EHCI: fix crash during\nsuspend on ASUS computers).  The patch supersedes that one and reverts\nit.  There are two differences:\n\n\tThe old patch added the flag at the USB level; this patch\n\tadds it at the PCI level.\n\n\tThe old patch applied to all chipsets with the same vendor,\n\tsubsystem vendor, and product IDs; this patch makes an\n\texception for a known-good system (based on DMI information).\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nTested-by: Dâniel Fraga \u003cfragabr@gmail.com\u003e\nTested-by: Andrey Rahmatullin \u003cwrar@wrar.name\u003e\nTested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nReviewed-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "5c7dd710f691d1b44c39e32d2f05b4286ff51f99",
      "tree": "7c319291d09980496d2b01dcbb6d9138db9477be",
      "parents": [
        "eea036475df8995e5b87cd6b8c8e682e071159cd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri May 18 00:39:35 2012 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 17 16:16:16 2012 -0700"
      },
      "message": "ACPI / PCI / PM: Fix device PM regression related to D3hot/D3cold\n\nCommit 1cc0c998fdf2 (\"ACPI: Fix D3hot v D3cold confusion\") introduced a\nbug in __acpi_bus_set_power() and changed the behavior of\nacpi_pci_set_power_state() in such a way that it generally doesn\u0027t work\nas expected if PCI_D3hot is passed to it as the second argument.\n\nFirst off, if ACPI_STATE_D3 (equal to ACPI_STATE_D3_COLD) is passed to\n__acpi_bus_set_power() and the explicit_set flag is set for the D3cold\nstate, the function will try to execute AML method called \"_PS4\", which\ndoesn\u0027t exist.\n\nFix this by adding a check to ensure that the name of the AML method\nto execute for transitions to ACPI_STATE_D3_COLD is correct in\n__acpi_bus_set_power().  Also make sure that the explicit_set flag\nfor ACPI_STATE_D3_COLD will be set if _PS3 is present and modify\nacpi_power_transition() to avoid accessing power resources for\nACPI_STATE_D3_COLD, because they don\u0027t exist.\n\nSecond, if PCI_D3hot is passed to acpi_pci_set_power_state() as the\ntarget state, the function will request a transition to\nACPI_STATE_D3_HOT instead of ACPI_STATE_D3.  However,\nACPI_STATE_D3_HOT is now only marked as supported if the _PR3 AML\nmethod is defined for the given device, which is rare.  This causes\nproblems to happen on systems where devices were successfully put\ninto ACPI D3 by pci_set_power_state(PCI_D3hot) which doesn\u0027t work\nnow.  In particular, some unused graphics adapters are not turned\noff as a result.\n\nTo fix this issue restore the old behavior of\nacpi_pci_set_power_state(), which is to request a transition to\nACPI_STATE_D3 (equal to ACPI_STATE_D3_COLD) if either PCI_D3hot or\nPCI_D3cold is passed to it as the argument.\n\nThis approach is not ideal, because generally power should not\nbe removed from devices if PCI_D3hot is the target power state,\nbut since this behavior is relied on, we have no choice but to\nrestore it at the moment and spend more time on designing a\nbetter solution in the future.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d43228\nReported-by: rocko \u003crockorequin@hotmail.com\u003e\nReported-by: Cristian Rodríguez \u003ccrrodriguez@opensuse.org\u003e\nReported-and-tested-by: Peter \u003clekensteyn@gmail.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59068e369b6a2a0a15b93624887525d9ec0f36e5",
      "tree": "7d165bb50d379e37ca7f0b3fed5da9f7719e22e4",
      "parents": [
        "377485f6244af255b04d662cf19cddbbc4ae4310",
        "1cc0c998fdf2cb665d625fb565a0d6db5c81c639"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 05 10:06:06 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 05 10:06:06 2012 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux\n\nPull an ACPI patch from Len Brown:\n \"It fixes a D3 issue new in 3.4-rc1.\"\n\nBy Lin Ming via Len Brown:\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:\n  ACPI: Fix D3hot v D3cold confusion\n"
    },
    {
      "commit": "1cc0c998fdf2cb665d625fb565a0d6db5c81c639",
      "tree": "2768315b4d2217ea16082947bf995edfc40d5faf",
      "parents": [
        "ec612fcf43e09f5e05d37baf4d3f138b3fcc2f3d"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Mon Apr 23 09:03:49 2012 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat May 05 01:19:52 2012 -0400"
      },
      "message": "ACPI: Fix D3hot v D3cold confusion\n\nBefore this patch, ACPI_STATE_D3 incorrectly referenced D3hot\nin some places, but D3cold in other places.\n\nAfter this patch, ACPI_STATE_D3 always means ACPI_STATE_D3_COLD;\nand all references to D3hot use ACPI_STATE_D3_HOT.\n\nACPI\u0027s _PR3 method is used to enter both D3hot and D3cold states.\nWhat distinguishes D3hot from D3cold is the presence _PR3\n(Power Resources for D3hot)  If these resources are all ON,\nthen the state is D3hot.  If _PR3 is not present,\nor all _PR0 resources for the devices are OFF,\nthen the state is D3cold.\n\nThis patch applies after Linux-3.4-rc1.\nA future syntax cleanup may remove ACPI_STATE_D3\nto emphasize that it always means ACPI_STATE_D3_COLD.\n\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Aaron Lu \u003caaron.lu@amd.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "f6072452c903f2e4dcbae1230f8fbcbf058bd71a",
      "tree": "7f33a247279beb624ddca9df3d10822104048e13",
      "parents": [
        "d7e69bc73c423723c30b5cd3d4b1d72c06ed22e6",
        "8e12a038f88e819c878e5697ff681cb08bcebb08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:32:37 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:32:37 2012 -0700"
      },
      "message": "Merge branch \u0027for-v3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull build fixes for less mainstream architectures from Paul Gortmaker:\n \"These are fixes for frv(1), blackfin(2), powerpc(1) and xtensa(4).\n\n  Fortunately the touches are nearly all specific to files just used by\n  the arch in question.  The two touches to shared/common files\n  [kernel/irq/debug.h and drivers/pci/Makefile] are trivial to assess as\n  no risk to anyone.\n\n  Half of them relate to xtensa directly.  It was only when I fixed the\n  last xtensa issue that I realized that the arch has been broken for a\n  significant time, and isn\u0027t a specific v3.4 regression.  So if you\n  wanted, we could leave xtensa lying bleeding in the street for a\n  couple more weeks and queue those for 3.5.  But given they are no risk\n  to anyone outside of xtensa, I figured to just leave them in.\n\n  If you are OK with taking the xtensa fixes, then please pull to get:\n\n   - one last implicit include uncovered by system.h that is in a file\n     specific to just one powerpc defconfig.  (I\u0027d sync\u0027d with BenH).\n\n   - fix an oversight in the PCI makefile where shared code wasn\u0027t being\n     compiled for ARCH\u003dfrv\n\n   - fix a missing include for GPIO in blackfin framebuffer.\n\n   - audit and tag endif in blackfin ezkit board file, in order to find\n     and fix the misplaced endif masking a block of code.\n\n   - fix irq/debug.h choice of temporary macro names to be more internal\n     so they don\u0027t conflict with names used by xtensa.\n\n   - fix a reference to an undeclared local var in xtensa\u0027s signal.c\n\n   - fix an implicit bug.h usage in xtensa\u0027s asm/io.h uncovered by my\n     removing bug.h from kernel.h\n\n   - fix xtensa to properly indicate it is using asm-generic/hardirq.h\n     in order to resolve the link error - undefined ack_bad_irq\n\n  The xtensa still fails final link as my latest binutils does something\n  evil when ld forward-relocates unlikely() blocks, but in theory people\n  who have older/valid toolchains could now use the thing.\"\n\n* \u0027for-v3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  xtensa: fix build fail on undefined ack_bad_irq\n  blackfin: fix ifdef fustercluck in mach-bf538/boards/ezkit.c\n  blackfin: fix compile error in bfin-lq035q1-fb.c\n  pci: frv architecture needs generic setup-bus infrastructure\n  irq: hide debug macros so they don\u0027t collide with others.\n  xtensa: fix build error in xtensa/include/asm/io.h\n  xtensa: fix build failure in xtensa/kernel/signal.c\n  powerpc: fix system.h fallout in sysdev/scom.c [chroma_defconfig]\n"
    },
    {
      "commit": "cd0a2bfb77a3edeecd652081e0b1a163d3b0696b",
      "tree": "2d161b68d0a4cb536b08d4a425b58ab342f844f6",
      "parents": [
        "9f3045eca89a2e6fdd1901aafb9e28231d3f31fb"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Apr 18 17:17:19 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 26 14:46:17 2012 -0400"
      },
      "message": "pci: frv architecture needs generic setup-bus infrastructure\n\nOtherwise we get this link failure for frv\u0027s defconfig:\n\n   LD      .tmp_vmlinux1\n drivers/built-in.o: In function `pci_assign_resource\u0027:\n (.text+0xbf0c): undefined reference to `pci_cardbus_resource_alignment\u0027\n drivers/built-in.o: In function `pci_setup\u0027:\n pci.c:(.init.text+0x174): undefined reference to `pci_realloc_get_opt\u0027\n pci.c:(.init.text+0x1a0): undefined reference to `pci_realloc_get_opt\u0027\n make[1]: *** [.tmp_vmlinux1] Error 1\n\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "a6cb9ee7cabe68002c3f2ab07224ea27d2617cf1",
      "tree": "fb3fc13b4b58e010b1b08c1ae89df810382063dc",
      "parents": [
        "5191d566c023079fa283adc48b71854e9d74ffd5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Apr 16 23:07:50 2012 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 16 18:33:35 2012 -0700"
      },
      "message": "PCI: Retry BARs restoration for Type 0 headers only\n\nSome shortcomings introduced into pci_restore_state() by commit\n26f41062f28d (\"PCI: check for pci bar restore completion and retry\")\nhave been fixed by recent commit ebfc5b802fa76 (\"PCI: Fix regression in\npci_restore_state(), v3\"), but that commit treats all PCI devices as\nthose with Type 0 configuration headers.\n\nThat is not entirely correct, because Type 1 and Type 2 headers have\ndifferent layouts.  In particular, the area occupied by BARs in Type 0\nconfig headers contains the secondary status register in Type 1 ones and\nit doesn\u0027t make sense to retry the restoration of that register even if\nthe value read back from it after a write is not the same as the written\none (it very well may be different).\n\nFor this reason, make pci_restore_state() only retry the restoration\nof BARs for Type 0 config headers.  This effectively makes it behave\nas before commit 26f41062f28d for all header types except for Type 0.\n\nTested-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebfc5b802fa76baeb4371311ff9fc27a2258d90d",
      "tree": "03da364fee4f182d3e0e2f98e8e20519c0b040b7",
      "parents": [
        "6c23b8e9330c77557fa9658db751029675dd195a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Apr 15 21:40:40 2012 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 15 13:06:29 2012 -0700"
      },
      "message": "PCI: Fix regression in pci_restore_state(), v3\n\nCommit 26f41062f28d (\"PCI: check for pci bar restore completion and\nretry\") attempted to address problems with PCI BAR restoration on\nsystems where FLR had not been completed before pci_restore_state() was\ncalled, but it did that in an utterly wrong way.\n\nFirst off, instead of retrying the writes for the BAR registers only, it\ndid that for all of the PCI config space of the device, including the\nstatus register (whose value after the write quite obviously need not be\nthe same as the written one).  Second, it added arbitrary delay to\npci_restore_state() even for systems where the PCI config space\nrestoration was successful at first attempt.  Finally, the mdelay(10) it\nadded to every iteration of the writing loop was way too much of a delay\nfor any reasonable device.\n\nAll of this actually caused resume failures for some devices on Mikko\u0027s\nsystem.\n\nTo fix the regression, make pci_restore_state() only retry the writes\nfor BAR registers and only wait if the first read from the register\ndoesn\u0027t return the written value.  Additionaly, make it wait for 1 ms,\ninstead of 10 ms, after every failing attempt to write into config\nspace.\n\nReported-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9479f0f8018a0317b0b5e0c2b338bec6e26fdf2d",
      "tree": "7eab154e6eef458f0612b3f80604be73812e0737",
      "parents": [
        "1ddca05743525689421383d2dda1ec34df26157e",
        "f09d8432e39797abf39531f41ac8a46a3fbf442a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 06 17:54:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 06 17:54:53 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4-rc1-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nPull xen fixes from Konrad Rzeszutek Wilk:\n \"Two fixes for regressions:\n   * one is a workaround that will be removed in v3.5 with proper fix in\n     the tip/x86 tree,\n   * the other is to fix drivers to load on PV (a previous patch made\n     them only load in PVonHVM mode).\n\n  The rest are just minor fixes in the various drivers and some cleanup\n  in the core code.\"\n\n* tag \u0027stable/for-linus-3.4-rc1-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen/pcifront: avoid pci_frontend_enable_msix() falsely returning success\n  xen/pciback: fix XEN_PCI_OP_enable_msix result\n  xen/smp: Remove unnecessary call to smp_processor_id()\n  xen/x86: Workaround \u0027x86/ioapic: Add register level checks to detect bogus io-apic entries\u0027\n  xen: only check xen_platform_pci_unplug if hvm\n"
    },
    {
      "commit": "f09d8432e39797abf39531f41ac8a46a3fbf442a",
      "tree": "ea8db5e01aaea997ccec66ebdfa84a273952fb96",
      "parents": [
        "0ee46eca0476faf0e93c1387b1597b861b79711f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Mon Apr 02 15:22:39 2012 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Apr 06 12:16:02 2012 -0400"
      },
      "message": "xen/pcifront: avoid pci_frontend_enable_msix() falsely returning success\n\nThe original XenoLinux code has always had things this way, and for\ncompatibility reasons (in particular with a subsequent pciback\nadjustment) upstream Linux should behave the same way (allowing for two\ndistinct error indications to be returned by the backend).\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "c9651e70ad0aa499814817cbf3cc1d0b806ed3a1",
      "tree": "6347cadf5e3d2835bf63dc52a8fdfe2daaea5161",
      "parents": [
        "cdb0f9a1ad2ee3c11e21bc99f0c2021a02844666"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Tue Mar 27 10:17:41 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 12:49:56 2012 -0700"
      },
      "message": "ASPM: Fix pcie devices with non-pcie children\n\nSince 3.2.12 and 3.3, some systems are failing to boot with a BUG_ON.\nSome other systems using the pata_jmicron driver fail to boot because no\ndisks are detected.  Passing pcie_aspm\u003dforce on the kernel command line\nworks around it.\n\nThe cause: commit 4949be16822e (\"PCI: ignore pre-1.1 ASPM quirking when\nASPM is disabled\") changed the behaviour of pcie_aspm_sanity_check() to\nalways return 0 if aspm is disabled, in order to avoid cases where we\nchanged ASPM state on pre-PCIe 1.1 devices.\n\nThis skipped the secondary function of pcie_aspm_sanity_check which was\nto avoid us enabling ASPM on devices that had non-PCIe children, causing\ntrouble later on.  Move the aspm_disabled check so we continue to honour\nthat scenario.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d42979 and\n          http://bugs.debian.org/665420\n\nReported-by: Romain Francoise \u003cromain@orebokech.com\u003e # kernel panic\nReported-by: Chris Holland \u003cbandidoirlandes@gmail.com\u003e # disk detection trouble\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: stable@vger.kernel.org\nTested-by: Hatem Masmoudi \u003chatem.masmoudi@gmail.com\u003e # Dell Latitude E5520\nTested-by: janek \u003cjan0x6c@gmail.com\u003e # pata_jmicron with JMB362/JMB363\n[jn: with more symptoms in log message]\nSigned-off-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a335750b9a039a9d4cd727cdccacfb90fd63c4e8",
      "tree": "8f3198984fb75fe494e771d9431f6799228623c5",
      "parents": [
        "10f3cb41d48ab30f5c754b30eea557371892b4c2",
        "d326f44e5f2204c7a24db69bfc6dd3fe5f86182b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 16:45:38 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 16:45:39 2012 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux\n\nPull ACPI \u0026 Power Management changes from Len Brown:\n - ACPI 5.0 after-ripples, ACPICA/Linux divergence cleanup\n - cpuidle evolving, more ARM use\n - thermal sub-system evolving, ditto\n - assorted other PM bits\n\nFix up conflicts in various cpuidle implementations due to ARM cpuidle\ncleanups (ARM at91 self-refresh and cpu idle code rewritten into\n\"standby\" in asm conflicting with the consolidation of cpuidle time\nkeeping), trivial SH include file context conflict and RCU tracing fixes\nin generic code.\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux: (77 commits)\n  ACPI throttling: fix endian bug in acpi_read_throttling_status()\n  Disable MCP limit exceeded messages from Intel IPS driver\n  ACPI video: Don\u0027t start video device until its associated input device has been allocated\n  ACPI video: Harden video bus adding.\n  ACPI: Add support for exposing BGRT data\n  ACPI: export acpi_kobj\n  ACPI: Fix logic for removing mappings in \u0027acpi_unmap\u0027\n  CPER failed to handle generic error records with multiple sections\n  ACPI: Clean redundant codes in scan.c\n  ACPI: Fix unprotected smp_processor_id() in acpi_processor_cst_has_changed()\n  ACPI: consistently use should_use_kmap()\n  PNPACPI: Fix device ref leaking in acpi_pnp_match\n  ACPI: Fix use-after-free in acpi_map_lsapic\n  ACPI: processor_driver: add missing kfree\n  ACPI, APEI: Fix incorrect APEI register bit width check and usage\n  Update documentation for parameter *notrigger* in einj.txt\n  ACPI, APEI, EINJ, new parameter to control trigger action\n  ACPI, APEI, EINJ, limit the range of einj_param\n  ACPI, APEI, Fix ERST header length check\n  cpuidle: power_usage should be declared signed integer\n  ...\n"
    },
    {
      "commit": "b24e5098853653554baf6ec975b9e855f3d6e5c0",
      "tree": "be93ad39b826c64907bb48dceea034db5b91fc24",
      "parents": [
        "0090def6c37c8ea29508a435e581f2ef26fea10f"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Tue Mar 27 15:43:25 2012 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Mar 30 02:21:18 2012 -0400"
      },
      "message": "ACPI, PCI: Move acpi_dev_run_wake() to ACPI core\n\nacpi_dev_run_wake() is a generic function which can be used by\nother subsystem too. Rename it to acpi_pm_device_run_wake, to be\nconsistent with acpi_pm_device_sleep_wake.\n\nThen move it to ACPI core.\n\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "475c77edf826333aa61625f49d6a2bec26ecb5a6",
      "tree": "8e1c6c319e347cd3c649fdb0b3ab45971c6b19e7",
      "parents": [
        "934e18b5cb4531cc6e81865bf54115cfd21d1ac6",
        "1488d5158dcd612fcdaf6b642451b026ee8bbcbb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:02:12 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:02:12 2012 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci\n\nPull PCI changes (including maintainer change) from Jesse Barnes:\n \"This pull has some good cleanups from Bjorn and Yinghai, as well as\n  some more code from Yinghai to better handle resource re-allocation\n  when enabled.\n\n  There\u0027s also a new initcall_debug feature from Arjan which will print\n  out quirk timing information to help identify slow quirks for fixing\n  or refinement (Yinghai sent in a few patches to do just that once the\n  new debug code landed).\n\n  Beyond that, I\u0027m handing off PCI maintainership to Bjorn Helgaas.\n  He\u0027s been a core PCI and Linux contributor for some time now, and has\n  kindly volunteered to take over.  I just don\u0027t feel I have the time\n  for PCI review and work that it deserves lately (I\u0027ve taken on some\n  other projects), and haven\u0027t been as responsive lately as I\u0027d like, so\n  I approached Bjorn asking if he\u0027d like to manage things.  He\u0027s going\n  to give it a try, and I\u0027m confident he\u0027ll do at least as well as I\n  have in keeping the tree managed, patches flowing, and keeping things\n  stable.\"\n\nFix up some fairly trivial conflicts due to other cleanups (mips device\nresource fixup cleanups clashing with list handling cleanup, ppc iseries\nremoval clashing with pci_probe_only cleanup etc)\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci: (112 commits)\n  PCI: Bjorn gets PCI hotplug too\n  PCI: hand PCI maintenance over to Bjorn Helgaas\n  unicore32/PCI: move \u003casm-generic/pci-bridge.h\u003e include to asm/pci.h\n  sparc/PCI: convert devtree and arch-probed bus addresses to resource\n  powerpc/PCI: allow reallocation on PA Semi\n  powerpc/PCI: convert devtree bus addresses to resource\n  powerpc/PCI: compute I/O space bus-to-resource offset consistently\n  arm/PCI: don\u0027t export pci_flags\n  PCI: fix bridge I/O window bus-to-resource conversion\n  x86/PCI: add spinlock held check to \u0027pcibios_fwaddrmap_lookup()\u0027\n  PCI / PCIe: Introduce command line option to disable ARI\n  PCI: make acpihp use __pci_remove_bus_device instead\n  PCI: export __pci_remove_bus_device\n  PCI: Rename pci_remove_behind_bridge to pci_stop_and_remove_behind_bridge\n  PCI: Rename pci_remove_bus_device to pci_stop_and_remove_bus_device\n  PCI: print out PCI device info along with duration\n  PCI: Move \"pci reassigndev resource alignment\" out of quirks.c\n  PCI: Use class for quirk for usb host controller fixup\n  PCI: Use class for quirk for ti816x class fixup\n  PCI: Use class for quirk for intel e100 interrupt fixup\n  ...\n"
    },
    {
      "commit": "d4c6fa73fe984e504d52f3d6bba291fd76fe49f7",
      "tree": "47842ddebb2a48cc1513b36fba18835678e2b94e",
      "parents": [
        "aab008db8063364dc3c8ccf4981c21124866b395",
        "4bc25af79ec54b79266148f8c1b84bb1e7ff2621"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 19:59:19 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:16:14 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nPull xen updates from Konrad Rzeszutek Wilk:\n \"which has three neat features:\n\n   - PV multiconsole support, so that there can be hvc1, hvc2, etc; This\n     can be used in HVM and in PV mode.\n\n   - P-state and C-state power management driver that uploads said power\n     management data to the hypervisor.  It also inhibits cpufreq\n     scaling drivers to load so that only the hypervisor can make power\n     management decisions - fixing a weird perf bug.\n\n     There is one thing in the Kconfig that you won\u0027t like: \"default y\n     if (X86_ACPI_CPUFREQ \u003d y || X86_POWERNOW_K8 \u003d y)\" (note, that it\n     all depends on CONFIG_XEN which depends on CONFIG_PARAVIRT which by\n     default is off).  I\u0027ve a fix to convert that boolean expression\n     into \"default m\" which I am going to post after the cpufreq git\n     pull - as the two patches to make this work depend on a fix in Dave\n     Jones\u0027s tree.\n\n   - Function Level Reset (FLR) support in the Xen PCI backend.\n\n  Fixes:\n\n   - Kconfig dependencies for Xen PV keyboard and video\n   - Compile warnings and constify fixes\n   - Change over to use percpu_xxx instead of this_cpu_xxx\"\n\nFix up trivial conflicts in drivers/tty/hvc/hvc_xen.c due to changes to\na removed commit.\n\n* tag \u0027stable/for-linus-3.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen kconfig: relax INPUT_XEN_KBDDEV_FRONTEND deps\n  xen/acpi-processor: C and P-state driver that uploads said data to hypervisor.\n  xen: constify all instances of \"struct attribute_group\"\n  xen/xenbus: ignore console/0\n  hvc_xen: introduce HVC_XEN_FRONTEND\n  hvc_xen: implement multiconsole support\n  hvc_xen: support PV on HVM consoles\n  xenbus: don\u0027t free other end details too early\n  xen/enlighten: Expose MWAIT and MWAIT_LEAF if hypervisor OKs it.\n  xen/setup/pm/acpi: Remove the call to boot_option_idle_override.\n  xenbus: address compiler warnings\n  xen: use this_cpu_xxx replace percpu_xxx funcs\n  xen/pciback: Support pci_reset_function, aka FLR or D3 support.\n  pci: Introduce __pci_reset_function_locked to be used when holding device_lock.\n  xen: Utilize the restore_msi_irqs hook.\n"
    },
    {
      "commit": "3b59bf081622b6446db77ad06c93fe23677bc533",
      "tree": "3f4bb5a27c90cc86994a1f6d3c53fbf9208003cb",
      "parents": [
        "e45836fafe157df137a837093037f741ad8f4c90",
        "bbdb32cb5b73597386913d052165423b9d736145"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:04:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:04:47 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking merge from David Miller:\n \"1) Move ixgbe driver over to purely page based buffering on receive.\n     From Alexander Duyck.\n\n  2) Add receive packet steering support to e1000e, from Bruce Allan.\n\n  3) Convert TCP MD5 support over to RCU, from Eric Dumazet.\n\n  4) Reduce cpu usage in handling out-of-order TCP packets on modern\n     systems, also from Eric Dumazet.\n\n  5) Support the IP{,V6}_UNICAST_IF socket options, making the wine\n     folks happy, from Erich Hoover.\n\n  6) Support VLAN trunking from guests in hyperv driver, from Haiyang\n     Zhang.\n\n  7) Support byte-queue-limtis in r8169, from Igor Maravic.\n\n  8) Outline code intended for IP_RECVTOS in IP_PKTOPTIONS existed but\n     was never properly implemented, Jiri Benc fixed that.\n\n  9) 64-bit statistics support in r8169 and 8139too, from Junchang Wang.\n\n  10) Support kernel side dump filtering by ctmark in netfilter\n      ctnetlink, from Pablo Neira Ayuso.\n\n  11) Support byte-queue-limits in gianfar driver, from Paul Gortmaker.\n\n  12) Add new peek socket options to assist with socket migration, from\n      Pavel Emelyanov.\n\n  13) Add sch_plug packet scheduler whose queue is controlled by\n      userland daemons using explicit freeze and release commands.  From\n      Shriram Rajagopalan.\n\n  14) Fix FCOE checksum offload handling on transmit, from Yi Zou.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1846 commits)\n  Fix pppol2tp getsockname()\n  Remove printk from rds_sendmsg\n  ipv6: fix incorrent ipv6 ipsec packet fragment\n  cpsw: Hook up default ndo_change_mtu.\n  net: qmi_wwan: fix build error due to cdc-wdm dependecy\n  netdev: driver: ethernet: Add TI CPSW driver\n  netdev: driver: ethernet: add cpsw address lookup engine support\n  phy: add am79c874 PHY support\n  mlx4_core: fix race on comm channel\n  bonding: send igmp report for its master\n  fs_enet: Add MPC5125 FEC support and PHY interface selection\n  net: bpf_jit: fix BPF_S_LDX_B_MSH compilation\n  net: update the usage of CHECKSUM_UNNECESSARY\n  fcoe: use CHECKSUM_UNNECESSARY instead of CHECKSUM_PARTIAL on tx\n  net: do not do gso for CHECKSUM_UNNECESSARY in netif_needs_gso\n  ixgbe: Fix issues with SR-IOV loopback when flow control is disabled\n  net/hyperv: Fix the code handling tx busy\n  ixgbe: fix namespace issues when FCoE/DCB is not enabled\n  rtlwifi: Remove unused ETH_ADDR_LEN defines\n  igbvf: Use ETH_ALEN\n  ...\n\nFix up fairly trivial conflicts in drivers/isdn/gigaset/interface.c and\ndrivers/net/usb/{Kconfig,qmi_wwan.c} as per David.\n"
    },
    {
      "commit": "4a52246302f01596f0edf7b4a3e6425e23479192",
      "tree": "f384d86722d3ccfc875e3e5e8d8726e993a922ee",
      "parents": [
        "9f9d2760da8c7f94fae119fac3e13d5a1702f8f0",
        "adc80ae60eae24a43a357bf5b30fb496f34aa605"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:16:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:16:20 2012 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core patches for 3.4-rc1 from Greg KH:\n \"Here\u0027s the big driver core merge for 3.4-rc1.\n\n  Lots of various things here, sysfs fixes/tweaks (with the nlink\n  breakage reverted), dynamic debugging updates, w1 drivers, hyperv\n  driver updates, and a variety of other bits and pieces, full\n  information in the shortlog.\"\n\n* tag \u0027driver-core-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (78 commits)\n  Tools: hv: Support enumeration from all the pools\n  Tools: hv: Fully support the new KVP verbs in the user level daemon\n  Drivers: hv: Support the newly introduced KVP messages in the driver\n  Drivers: hv: Add new message types to enhance KVP\n  regulator: Support driver probe deferral\n  Revert \"sysfs: Kill nlink counting.\"\n  uevent: send events in correct order according to seqnum (v3)\n  driver core: minor comment formatting cleanups\n  driver core: move the deferred probe pointer into the private area\n  drivercore: Add driver probe deferral mechanism\n  DS2781 Maxim Stand-Alone Fuel Gauge battery and w1 slave drivers\n  w1_bq27000: Only one thread can access the bq27000 at a time.\n  w1_bq27000 - remove w1_bq27000_write\n  w1_bq27000: remove unnecessary NULL test.\n  sysfs: Fix memory leak in sysfs_sd_setsecdata().\n  intel_idle: Revert change of auto_demotion_disable_flags for Nehalem\n  w1: Fix w1_bq27000\n  driver-core: documentation: fix up Greg\u0027s email address\n  powernow-k6: Really enable auto-loading\n  powernow-k7: Fix CPU family number\n  ...\n"
    },
    {
      "commit": "cf48fb6a2bf2e59990e1438d0dedc706df911996",
      "tree": "ece7583684a8a3e7a97d471db9a6984ababf100b",
      "parents": [
        "63ab387ca0d1576edef35ef68e4b8ea5e0757b7a"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Fri Mar 16 17:47:59 2012 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Mar 20 10:41:27 2012 -0700"
      },
      "message": "PCI: fix bridge I/O window bus-to-resource conversion\n\nIn 5bfa14ed9f3c, I forgot to initialize res2.flags before calling\npcibios_bus_to_resource(), which depends on the resource type to locate the\ncorrect aperture.  This bug won\u0027t hurt x86, which currently never has an\noffset between bus and CPU addresses, but will affect other architectures.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4da0bd736552e6377b407b3c3d3ae518ebbdd269",
      "tree": "f0da9f843b8033565c3ca4103fccb17a60688326",
      "parents": [
        "81a430ac1b88b0702c57d2513e247317e810e04d",
        "c16fa4f2ad19908a47c63d8fa436a1178438c7e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 18 23:29:41 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 18 23:29:41 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "263a5c8e16c34199ddf6de3f102e789ffa3ee26e",
      "tree": "4f049e339d522b2ab0ba3bed3ec217e4bbc83d35",
      "parents": [
        "54d20f006ceff1f2f1e69d0e54049b6c0765c039",
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "message": "Merge 3.3-rc6 into driver-core-next\n\nThis was done to resolve a conflict in the drivers/base/cpu.c file.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "4949be16822e92a18ea0cc1616319926628092ee",
      "tree": "51bc0b8620f0e5e0b788803d36d2d71aff7e4e73",
      "parents": [
        "4f262acfde22b63498b5e4f165e53d3bb4e96400"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Tue Mar 06 13:41:49 2012 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Mar 07 20:26:47 2012 -0800"
      },
      "message": "PCI: ignore pre-1.1 ASPM quirking when ASPM is disabled\n\nRight now we won\u0027t touch ASPM state if ASPM is disabled, except in the case\nwhere we find a device that appears to be too old to reliably support ASPM.\nRight now we\u0027ll clear it in that case, which is almost certainly the wrong\nthing to do. The easiest way around this is just to disable the blacklisting\nwhen ASPM is disabled.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0b471506712dd734964b3270d2aa88160712c262",
      "tree": "52f04bbb15c1ede47ced10c1f48a9ff71a0a90fb",
      "parents": [
        "e19a82c18f0e6360ee9fd431721794eb0036c0cd"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Mon Feb 27 09:44:48 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 04 20:54:01 2012 -0500"
      },
      "message": "tg3: Recode PCI MRRS adjustment as a PCI quirk\n\nThis patch recodes the MRRS cap for 5719 A0 devices as a PCI quirk.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6748dcc269e52925993e0d68447858b41b88b4be",
      "tree": "51f2e3f04ff1b5bb1dcd96aa82e8ba2ee33b09af",
      "parents": [
        "f6330c3178112a7b7f18e7f51f1cbb89fa1174c7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Mar 01 00:06:33 2012 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Mar 01 13:36:04 2012 -0800"
      },
      "message": "PCI / PCIe: Introduce command line option to disable ARI\n\nThere are PCIe devices on the market that report ARI support but\nthen fail to initialize correctly when ARI is actually used.  This\nleads to situations in which kernels 2.6.34 and newer fail to handle\nsystems where the previous kernels worked without any apparent\nproblems.  Unfortunately, it is currently unknown how many such\ndevices are there.\n\nFor this reason, introduce a new kernel command line option,\npci\u003dnoari, allowing users to disable PCIe ARI altogether if they\nsee problems with PCIe device initialization.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f6330c3178112a7b7f18e7f51f1cbb89fa1174c7",
      "tree": "c19c236c02d093adc9b02b537610b6fc36b9c0e7",
      "parents": [
        "6b22cf3f35fd332e4cc2c1b27056920b3643667a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 25 13:54:23 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Feb 27 12:17:16 2012 -0800"
      },
      "message": "PCI: make acpihp use __pci_remove_bus_device instead\n\npci_stop_bus_device gets called before in the same loop.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6b22cf3f35fd332e4cc2c1b27056920b3643667a",
      "tree": "81bdab1c27126f91340fcafb4619519dda003490",
      "parents": [
        "6754b9e9c33502223db066de50dda8a876f70c2c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 25 13:54:21 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Feb 27 12:16:55 2012 -0800"
      },
      "message": "PCI: export __pci_remove_bus_device\n\nDon\u0027t switch to pci_remove_bus_device yet, keep the __ prefix for now\n(the behavior is still the same: remove without stopping first).\n\nThis allows other out of tree users or pending patches to get notified\nfrom compiler warning.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6754b9e9c33502223db066de50dda8a876f70c2c",
      "tree": "ee7b1a9328bd01675f907c9d247ee9b2f4bad21f",
      "parents": [
        "210647af897af8ef2d00828aa2a6b1b42206aae6"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 25 13:54:22 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Feb 27 12:14:55 2012 -0800"
      },
      "message": "PCI: Rename pci_remove_behind_bridge to pci_stop_and_remove_behind_bridge\n\nThe old pci_remove_behind_bridge actually do stop and remove.\n\nMake the name reflect that to reduce confusion.\n\nSuggested-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "210647af897af8ef2d00828aa2a6b1b42206aae6",
      "tree": "bdb048c8fc7db6fb7b84134c1a6127c52da60ed3",
      "parents": [
        "3cf8b64380af6fd515740b010606ada4637818c5"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 25 13:54:20 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Feb 27 12:12:18 2012 -0800"
      },
      "message": "PCI: Rename pci_remove_bus_device to pci_stop_and_remove_bus_device\n\nThe old pci_remove_bus_device actually did stop and remove.\n\nMake the name reflect that to reduce confusion.\n\nThis patch is done by sed scripts and changes back some incorrect\n__pci_remove_bus_device changes.\n\nSuggested-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3cf8b64380af6fd515740b010606ada4637818c5",
      "tree": "9023072ad9612a2fddd0e93c0bc069d5db6713ad",
      "parents": [
        "2069ecfbe14ebd71a6f98e8a00724e9adf4fe4ee"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 15 21:40:32 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:38:55 2012 -0800"
      },
      "message": "PCI: print out PCI device info along with duration\n\nMakes it a little easier to figure out which device may have caused a\nslow quirk.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2069ecfbe14ebd71a6f98e8a00724e9adf4fe4ee",
      "tree": "5a0328d6e545a6488e85face05b0a4d78676bedf",
      "parents": [
        "8474ecd9231434d71a39cd1ba118629e1b036137"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 15 21:40:31 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:37:26 2012 -0800"
      },
      "message": "PCI: Move \"pci reassigndev resource alignment\" out of quirks.c\n\nThis isn\u0027t really a quirk; calling it directly from pci_add_device makes\nmore sense.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "40c96236bdab60b5879a277270ee209b87fc846f",
      "tree": "64839f57343b3c3f3bbbb3a560d8a3eae4717348",
      "parents": [
        "4c5b28e26d3621e188288293ccfe82ea1177499f"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:58 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:35:16 2012 -0800"
      },
      "message": "PCI: Use class for quirk for ti816x class fixup\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4c5b28e26d3621e188288293ccfe82ea1177499f",
      "tree": "b0cdc61430395f5a58132152b1ad00080e0c2971",
      "parents": [
        "08803efe849ebe81d1ca5bb5e443415d035087a0"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:57 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:35:15 2012 -0800"
      },
      "message": "PCI: Use class for quirk for intel e100 interrupt fixup\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "08803efe849ebe81d1ca5bb5e443415d035087a0",
      "tree": "3ab6b38e483441bb9ecf8c61b8f94de0ee04d94e",
      "parents": [
        "faa738bba5a0fcca93c5818eecbaad63ed2b6948"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:56 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:35:14 2012 -0800"
      },
      "message": "PCI: Use class for quirk for netmos class fixup\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "faa738bba5a0fcca93c5818eecbaad63ed2b6948",
      "tree": "8ae95051583f5b2078a663a70dcf162f54375ca5",
      "parents": [
        "ae9de56bdda2d27d11df8d2dcde81f429ac348ee"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:55 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:35:14 2012 -0800"
      },
      "message": "PCI: Use class for quirk for legacy ATA NO_D3\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ae9de56bdda2d27d11df8d2dcde81f429ac348ee",
      "tree": "9e8713fdbc4dc0c2b4dad4d06006b82b85432921",
      "parents": [
        "52d21b5ef4bfc676944a3f214ac05c0406e3966f"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:54 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:35:13 2012 -0800"
      },
      "message": "PCI: Use class for quirk for cardbus_legacy\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "52d21b5ef4bfc676944a3f214ac05c0406e3966f",
      "tree": "8deb82b638d7aeeec8fb5b5b1b6e903c1d3a493c",
      "parents": [
        "73e3b590f38fb7c03ee370430348edf1f401204e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:53 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:34:48 2012 -0800"
      },
      "message": "PCI: Use class for quirk for host bridge mmio_always_on\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f4ca5c6a56278ca5421bc2e40422e4155b6735d8",
      "tree": "53be4f61e4da75deae8cbcd4948d6d3b47404d79",
      "parents": [
        "ecd58d667a6ac4350d2f67b9accaadf575bae4b0"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 23:46:49 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:34:40 2012 -0800"
      },
      "message": "PCI: Add class support in quirk handling\n\nRecently added support to allow quirks to report duration also make the\nboot log very crowded when initcall_debug is specified.\n\nOne thing we can to do mitigate this is to not call quirks unnecessarily\nby adding a new quirk declaration macro that takes a class argument.\n\nThe new macro takes a class value and a class shift value (since it can\nvary) so that quirks will be limited to certain device classes, greatly\nreducing the number we call on every PCI device addition.\n\n-v2: fix v1 that left over of sparated patch.\n-v3: according to Jesse, change cls to class, cls_shift, to class_shift.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ecd58d667a6ac4350d2f67b9accaadf575bae4b0",
      "tree": "5209771a0a1f61820171e444d3e4a580ecf3955f",
      "parents": [
        "b07f2ebc109b607789f648dedcff4b125f9afec6",
        "fb127cb9de791d62fb393d6e65fa9869bddd2460"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:25:33 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 14:25:33 2012 -0800"
      },
      "message": "Merge branch \u0027pci-next+probe_only+bus2res-fb127cb\u0027 of git://github.com/bjorn-helgaas/linux into linux-next\n"
    },
    {
      "commit": "b07f2ebc109b607789f648dedcff4b125f9afec6",
      "tree": "3868d50119a2ba1721914e9b53f12d996c5d45b4",
      "parents": [
        "eb572e7c76f154d75f90a783924f88afc34d5fec"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 19:23:32 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 09:38:59 2012 -0800"
      },
      "message": "PCI: add a PCI resource reallocation config option\n\nAdd a new config option, PCI_REALLOC_ENABLE_AUTO, which will\nautomatically try to re-allocate PCI resources if PCI_IOV support is\nenabled and the SR-IOV resources are unassigned.  Behavior can still be\ncontrolled using the pci\u003drealloc\u003d parameter.\n\n-v2: According to Jesse, adding one CONFIG option for distribution to\n     disable it or enable it.\n-v3: update Kconfig text (jbarnes)\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "eb572e7c76f154d75f90a783924f88afc34d5fec",
      "tree": "79e87cc204d3e04b911c25dee39c7ebe5079d276",
      "parents": [
        "b55438fdd5173a367659a7e200acea6c9f77b8cb"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 19:23:31 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 08:47:53 2012 -0800"
      },
      "message": "PCI: print out suggestion about using pci\u003drealloc\n\nlet user know they could try if pci\u003drealloc could help.\n\n-v2: update suggestion text.\n\nSuggested-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b55438fdd5173a367659a7e200acea6c9f77b8cb",
      "tree": "fbcb4ac2e03abcf6933b18fce56361adbcda84af",
      "parents": [
        "0c5be0cb0edfe3b5c4b62eac68aa2aa15ec681af"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 19:23:30 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 08:47:42 2012 -0800"
      },
      "message": "PCI: prepare pci\u003drealloc for multiple options\n\nLet the user could enable and disable with pci\u003drealloc\u003don or pci\u003drealloc\u003doff\n\nAlso\n1. move variable and functions near the place they are used.\n2. change macro to function\n3. change related functions and variable to static and _init\n4. update parameter description accordingly.\n\nThis will let us add a config option to control default behavior, and\nstill allow the user to turn off automatic reallocation if it fails on\ntheir platform until a permanent solution is found.\n\n-v2: still honor pci\u003drealloc, and treat it as pci\u003drealloc\u003don\n     also use enum instead of ...\n-v3: update kernel-paramenters.txt according to Jesse.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0c5be0cb0edfe3b5c4b62eac68aa2aa15ec681af",
      "tree": "8051eb17c0b95701186bdf53e1a263d641f8b8e7",
      "parents": [
        "823806ff6bd63f92644a5330cf0c3b68fac25ffd"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Feb 23 19:23:29 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 24 08:44:38 2012 -0800"
      },
      "message": "PCI: Retry on IORESOURCE_IO type allocations\n\nWhen enabling pci reallocation for a pci bridge, we clear the small size\nin in bridge and re-assign with requested + optional size for first\nseveral tries, but Ram mention could have problem with one case:\n\thttps://bugzilla.kernel.org/show_bug.cgi?id\u003d15960\n\nAfter checking the booting log in\n\thttps://lkml.org/lkml/2010/4/19/44\n\t[regression, bisected] Xonar DX invalid PCI I/O range since 977d17bb174\n\nWe should not stop too early for io ports.\n\tApr 19 10:19:38 [kernel] pci 0000:04:00.0: BAR 7: can\u0027t assign io (size 0x4000)\n\tApr 19 10:19:38 [kernel] pci 0000:05:01.0: BAR 8: assigned [mem 0x80400000-0x805fffff]\n\tApr 19 10:19:38 [kernel] pci 0000:05:01.0: BAR 7: can\u0027t assign io (size 0x2000)\n\tApr 19 10:19:38 [kernel] pci 0000:05:02.0: BAR 7: can\u0027t assign io (size 0x1000)\n\tApr 19 10:19:38 [kernel] pci 0000:05:03.0: BAR 7: can\u0027t assign io (size 0x1000)\n\tApr 19 10:19:38 [kernel] pci 0000:08:00.0: BAR 7: can\u0027t assign io (size 0x1000)\n\tApr 19 10:19:38 [kernel] pci 0000:09:04.0: BAR 0: can\u0027t assign io (size 0x100)\nand clear 00:1c.0 to retry again.\n\nThis patch removes IORESOUCE_IO checking, and tries one more time.  It\ngives us a chance to get an allocation for the 00:1c.0 io port range\nbecause the range from 0x4000 to 0x8000 will be freed and we can use it.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "fb127cb9de791d62fb393d6e65fa9869bddd2460",
      "tree": "5cb45ac2fd5139cfc9165fead210a3ad2bb3b2a5",
      "parents": [
        "4ba2aef3157f483fd67ac2616f14dbc32a3f751d"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:04 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:04 2012 -0700"
      },
      "message": "PCI: collapse pcibios_resource_to_bus\n\nEverybody uses the generic pcibios_resource_to_bus() supplied by the core\nnow, so remove the ARCH_HAS_GENERIC_PCI_OFFSETS used during conversion.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "36a66cd6fd0a70ac6848d740d9cf7a4360b5776a",
      "tree": "7cc903ad9f63e9bd1065b6d722fb86f4196dceea",
      "parents": [
        "5bfa14ed9f3ca21fcecbcfbf4a848c002b740c41"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "message": "PCI: add generic pcibios_resource_to_bus()\n\nThis replaces the generic versions of pcibios_resource_to_bus() and\npcibios_bus_to_resource() in asm-generic/pci.h with versions that use\npci_resource_to_bus() and pci_bus_to_resource().\n\nThe replacements are equivalent except that they can apply host\nbridge window offsets when the arch has supplied them by using\npci_add_resource_offset().\n\nEach arch can convert to using pci_add_resource_offset() individually by\nremoving its device resource fixups from pcibios_fixup_bus() and supplying\nARCH_HAS_GENERIC_PCI_OFFSETS.  ARCH_HAS_GENERIC_PCI_OFFSETS can be removed\nafter all have converted.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "5bfa14ed9f3ca21fcecbcfbf4a848c002b740c41",
      "tree": "dc28c99c694007fca535b906c1044101241abb73",
      "parents": [
        "0efd5aab41e18a1175f72641696cfda154ba6c87"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "message": "PCI: convert bus addresses to resource when reading BARs\n\nSome PCI host bridges translate CPU addresses to PCI bus addresses.\nPreviously, we initialized pci_dev resources with PCI bus addresses,\nthen converted them to CPU addresses later in arch-specific code\n(pcibios_fixup_resources()), which leaves a window of time where the\npci_dev resources are incorrect.\n\nThis patch adds support in the core for this address translation.\nWhen the arch creates the root bus, it can supply the host bridge\naddress translation information, and the core can use it to set the\npci_dev resources correctly from the beginning.\n\nThis gives us a way to fix the problem that quirks that run between device\ndiscovery and pcibios_fixup_resources() fail because they use pci_dev\nresources that haven\u0027t been converted.  The reference below is to one\nsuch problem that affected ARM and ia64.\n\nNote that this patch has no effect until an arch starts using\npci_add_resource_offset() with a non-zero offset: before that, all\nall host bridge windows have a zero offset and pci_bus_to_resource()\ncopies the pci_bus_region directly to the struct resource.\n\nReference: https://lkml.org/lkml/2009/10/12/405\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "0efd5aab41e18a1175f72641696cfda154ba6c87",
      "tree": "2480b5ade8937d18104c5ecc1423ca1eac1b154e",
      "parents": [
        "5a21d70dbd33d20713fb735ad9381711b0ae2c9b"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:19:00 2012 -0700"
      },
      "message": "PCI: add struct pci_host_bridge_window with CPU/bus address offset\n\nSome PCI host bridges apply an address offset, so bus addresses on PCI are\ndifferent from CPU addresses.  This patch adds a way for architectures to\ntell the PCI core about this offset.  For example:\n\n    LIST_HEAD(resources);\n    pci_add_resource_offset(\u0026resources, host-\u003eio_space, host-\u003eio_offset);\n    pci_add_resource_offset(\u0026resources, host-\u003emem_space, host-\u003emem_offset);\n    pci_scan_root_bus(parent, bus, ops, sysdata, \u0026resources);\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "5a21d70dbd33d20713fb735ad9381711b0ae2c9b",
      "tree": "f3c6c65295f1356f62389fafad777d7be047aca5",
      "parents": [
        "a5390aa6dc3646b08bed421944cef0daf78ab994"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "message": "PCI: add struct pci_host_bridge and a list of all bridges found\n\nThis adds a list of all PCI host bridges we find and a way to look up\nthe host bridge from a pci_dev.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "a5390aa6dc3646b08bed421944cef0daf78ab994",
      "tree": "c7c84410c2db3ca93e912135cd3c1722d4b644ac",
      "parents": [
        "844393f4c5e309dd262b27796471c47e348b57a8"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "message": "PCI: don\u0027t publish new root bus until it\u0027s fully initialized\n\nWhen pci_create_root_bus() adds the new struct pci_bus to the global\npci_root_buses list, the bus becomes visible to other parts of the\nkernel, so it should be fully initialized.\n\nThis patch delays adding the bus to the pci_root_buses list until after\nall the struct pci_bus initialization is finished.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "844393f4c5e309dd262b27796471c47e348b57a8",
      "tree": "d6504c2d39437f3c3a2d27bd313f13882e75a90e",
      "parents": [
        "b9c40b076c9d247494f91521e3beff9422cd1173"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:59 2012 -0700"
      },
      "message": "PCI: make pci_flags non-weak\n\nNo architecture defines its own pci_flags, so the core symbol does not\nneed to be weak.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "47087700ce3ccb2bf69f4dcb6ad7f59764e51308",
      "tree": "a5c59cb190882dfc72026c32308c22aaa5344d05",
      "parents": [
        "823806ff6bd63f92644a5330cf0c3b68fac25ffd"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 14:29:23 2012 -0700"
      },
      "committer": {
        "name": "Bjorn Helgaas",
        "email": "bhelgaas@google.com",
        "time": "Thu Feb 23 20:18:55 2012 -0700"
      },
      "message": "PCI: make pci_flags always available\n\nIf we move resource assignment functions into the core, we\u0027ll still\nneed a way for architectures to prevent reassignment, e.g., the\n\"pci_probe_only\" functionality, and we\u0027ll need a generic, always\navailable way the core can test for that.  The \"pci_flags\"\narrangement used by several architectures seems like a convenient\nway to do this.\n\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\n"
    },
    {
      "commit": "7570a333d8b00e7fd4b05d898e353000a70210ce",
      "tree": "0454e2690a7efb093ffe7764ea9dd235e9babf9b",
      "parents": [
        "34a4876e3071ddebf3c98c99ba01c14b059a1361"
      ],
      "author": {
        "name": "MUNEDA Takahiro",
        "email": "muneda.takahiro@jp.fujitsu.com",
        "time": "Thu Feb 02 11:09:22 2012 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 12:29:35 2012 -0800"
      },
      "message": "PCI: Add pcie_hp\u003dnomsi to disable MSI/MSI-X for pciehp driver\n\nAdd a parameter to avoid using MSI/MSI-X for PCIe native hotplug; it\u0027s\nknown to be buggy on some platforms.\n\nIn my environment, while shutting down, following stack trace is shown\nsometimes.\n\n  irq 16: nobody cared (try booting with the \"irqpoll\" option)\n  Pid: 1081, comm: reboot Not tainted 3.2.0 #1\n  Call Trace:\n   \u003cIRQ\u003e  [\u003cffffffff810cec1d\u003e] __report_bad_irq+0x3d/0xe0\n   [\u003cffffffff810cee1c\u003e] note_interrupt+0x15c/0x210\n   [\u003cffffffff810cc485\u003e] handle_irq_event_percpu+0xb5/0x210\n   [\u003cffffffff810cc621\u003e] handle_irq_event+0x41/0x70\n   [\u003cffffffff810cf675\u003e] handle_fasteoi_irq+0x55/0xc0\n   [\u003cffffffff81015356\u003e] handle_irq+0x46/0xb0\n   [\u003cffffffff814fbe9d\u003e] do_IRQ+0x5d/0xe0\n   [\u003cffffffff814f146e\u003e] common_interrupt+0x6e/0x6e\n   [\u003cffffffff8106b040\u003e] ? __do_softirq+0x60/0x210\n   [\u003cffffffff8108aeb1\u003e] ? hrtimer_interrupt+0x151/0x240\n   [\u003cffffffff814fb5ec\u003e] call_softirq+0x1c/0x30\n   [\u003cffffffff810152d5\u003e] do_softirq+0x65/0xa0\n   [\u003cffffffff8106ae9d\u003e] irq_exit+0xbd/0xe0\n   [\u003cffffffff814fbf8e\u003e] smp_apic_timer_interrupt+0x6e/0x99\n   [\u003cffffffff814f9e5e\u003e] apic_timer_interrupt+0x6e/0x80\n   \u003cEOI\u003e  [\u003cffffffff814f0fb1\u003e] ? _raw_spin_unlock_irqrestore+0x11/0x20\n   [\u003cffffffff812629fc\u003e] pci_bus_write_config_word+0x6c/0x80\n   [\u003cffffffff81266fc2\u003e] pci_intx+0x52/0xa0\n   [\u003cffffffff8127de3d\u003e] pci_intx_for_msi+0x1d/0x30\n  [\u003cffffffff8127e4fb\u003e] pci_msi_shutdown+0x7b/0x110\n   [\u003cffffffff81269d34\u003e] pci_device_shutdown+0x34/0x50\n   [\u003cffffffff81326c4f\u003e] device_shutdown+0x2f/0x140\n   [\u003cffffffff8107b981\u003e] kernel_restart_prepare+0x31/0x40\n   [\u003cffffffff8107b9e6\u003e] kernel_restart+0x16/0x60\n   [\u003cffffffff8107bbfd\u003e] sys_reboot+0x1ad/0x220\n   [\u003cffffffff814f4b90\u003e] ? do_page_fault+0x1e0/0x460\n   [\u003cffffffff811942d0\u003e] ? __sync_filesystem+0x90/0x90\n   [\u003cffffffff8105c9aa\u003e] ? __cond_resched+0x2a/0x40\n   [\u003cffffffff814ef090\u003e] ? _cond_resched+0x30/0x40\n   [\u003cffffffff81169e17\u003e] ? iterate_supers+0xb7/0xd0\n   [\u003cffffffff814f9382\u003e] system_call_fastpath+0x16/0x1b\n  handlers:\n  [\u003cffffffff8138a0f0\u003e] usb_hcd_irq\n  [\u003cffffffff8138a0f0\u003e] usb_hcd_irq\n  [\u003cffffffff8138a0f0\u003e] usb_hcd_irq\n  Disabling IRQ #16\n\nAn un-wanted interrupt is generated when PCI driver switches from\nMSI/MSI-X to INTx while shutting down the device.  The interrupt does\nnot happen if MSI/MSI-X is not used on the device.\nI confirmed that this problem does not happen if pcie_hp\u003dnomsi was\nspecified and hotplug operation worked fine as usual.\n\nv2: Automatically disable MSI/MSI-X against following device:\n    PCI bridge: Integrated Device Technology, Inc. Device 807f (rev 02)\nv3: Based on the review comment, combile the if statements.\nv4: Removed module parameter.\n    Move some code to build pciehp as a module.\n    Move device specific code to driver/pci/quirks.c.\nv5: Drop a device specific code until getting a vendor statement.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: MUNEDA Takahiro \u003cmuneda.takahiro@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "34a4876e3071ddebf3c98c99ba01c14b059a1361",
      "tree": "e1450472300e41f407c5cfec49b157450d8d85d8",
      "parents": [
        "f796841e49fe086176e27ed0e1f3f7a1123a4a6b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 11 00:18:41 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 12:27:11 2012 -0800"
      },
      "message": "PCI: move pci_find_saved_cap out of linux/pci.h\n\nOnly one user in driver/pci/pci.c, so we don\u0027t need to put it in global\npci.h\n\nReviewed-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f796841e49fe086176e27ed0e1f3f7a1123a4a6b",
      "tree": "60d5b1f245ba1a2ca6d81e5e73379cfb26089071",
      "parents": [
        "2dd8ba921d570fcd016f8038c63fa9668892d16b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 11 00:18:30 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 12:08:53 2012 -0800"
      },
      "message": "PCI: fix memleak for pci dev removing during hotplug\n\nunreferenced object 0xffff880276d17700 (size 64):\n  comm \"swapper/0\", pid 1, jiffies 4294897182 (age 3976.028s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 18 f9 de 76 02 88 ff ff  ...........v....\n    10 00 00 00 0e 00 00 00 0f 28 40 00 00 00 00 00  .........(@.....\n  backtrace:\n    [\u003cffffffff81c8aede\u003e] kmemleak_alloc+0x26/0x43\n    [\u003cffffffff811385f0\u003e] __kmalloc+0x121/0x183\n    [\u003cffffffff813cf821\u003e] pci_add_cap_save_buffer+0x35/0x7c\n    [\u003cffffffff813d12b7\u003e] pci_allocate_cap_save_buffers+0x1d/0x65\n    [\u003cffffffff813cdb52\u003e] pci_device_add+0x92/0xf1\n    [\u003cffffffff81c8afe6\u003e] pci_scan_single_device+0x9f/0xa1\n    [\u003cffffffff813cdbd2\u003e] pci_scan_slot.part.20+0x21/0x106\n    [\u003cffffffff813cdce2\u003e] pci_scan_slot+0x2b/0x35\n    [\u003cffffffff81c8dae4\u003e] __pci_scan_child_bus+0x51/0x107\n    [\u003cffffffff81c8d75b\u003e] pci_scan_bridge+0x376/0x6ae\n    [\u003cffffffff81c8db60\u003e] __pci_scan_child_bus+0xcd/0x107\n    [\u003cffffffff81c8dbab\u003e] pci_scan_child_bus+0x11/0x2a\n    [\u003cffffffff81cca58c\u003e] pci_acpi_scan_root+0x18b/0x21c\n    [\u003cffffffff81c916be\u003e] acpi_pci_root_add+0x1e1/0x42a\n    [\u003cffffffff81406210\u003e] acpi_device_probe+0x50/0x190\n    [\u003cffffffff814a0227\u003e] really_probe+0x99/0x126\n\nNeed to free saved_buffer for capabilities.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2dd8ba921d570fcd016f8038c63fa9668892d16b",
      "tree": "f2ff01098ed51ee0b6682f91c1b9bf628c84f848",
      "parents": [
        "9ad52e63db1bc588636bc66b9133498c46e6535c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sun Feb 19 14:50:12 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 12:05:59 2012 -0800"
      },
      "message": "PCI: Fix device class print out\n\nFound debug print of class is shifted.\n\n| pci 0000:f8:15.2: [8086:2b56] type 0 class 0x000600\n\nCode is trying to print class with 6 digits, but use shifted class with\n4 digits valid value as variable.\n\nChange to original dev-\u003eclass directly.\n\nAlso remove not needed calculating of local variable class, because it\nwill be updated after pci_fixup_device(pci_fixup_early...)\n\nAlso unify type print out when class and header is not matched.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3796f1e2ca38deebd30aa755ea52562b6926c73e",
      "tree": "8343152f81995af76c68cd253e75886f2724cae9",
      "parents": [
        "1184893439b1a7532b579a85a354db12bbf1b277"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Feb 10 15:33:48 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 12:00:04 2012 -0800"
      },
      "message": "PCI: Skip cardbus assigned resource reset during pci bus rescan\n\nOtherwise when rescan is used for cardbus, assigned resources will get\ncleared.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nTested-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1184893439b1a7532b579a85a354db12bbf1b277",
      "tree": "cfba5be149def3389707a0773909d44c50b58f30",
      "parents": [
        "dcef0d06b34a80071da4496556e85f9bf3b3c0bf"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Feb 10 15:33:47 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 11:59:56 2012 -0800"
      },
      "message": "PCI: Fix \"cardbus bridge resources as optional\" size handling\n\nWe should not set the requested size to -2; that will confuse the\nresource list sorting with align when SIZEALIGN is used.\n\nChange to STARTALIGN and pass align from start;  we are safe to do that\njust as we do that regular pci bridge.  In the long run, we should just\ntreat cardbus like a regular pci bridge.\n\nAlso fix the case when realloc_head is not passed: we should keep the\nrequested size.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nTested-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "dcef0d06b34a80071da4496556e85f9bf3b3c0bf",
      "tree": "0801a6c7dbbcc2ac3ba05b59e506ebf6cc5d3df7",
      "parents": [
        "5b415f1e79e0c09366f26e3eabe751642059285a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Feb 10 15:33:46 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Feb 23 11:59:45 2012 -0800"
      },
      "message": "PCI: Disable cardbus bridge MEM1 prefetchable bit\n\nSome BIOSes enable prefetch on both MEM0 and MEM1.  But the cardbus code\nassumes MEM1 is non-pref...\n\nDiscussion could be found at:\n\thttps://lkml.org/lkml/2012/1/12/1\n\thttps://bugzilla.kernel.org/show_bug.cgi?id\u003d41622#c23\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nTested-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7bcd5b4671c3aa9185a7e6f76ee12e392070ddea",
      "tree": "db80f1cc57cdec18e46bf8e37691b02f9a2ce35e",
      "parents": [
        "58e44bafbb601b5abc250cdbb032b1f4022ef30a",
        "3682a3946d2b0bad621db871e3bead83e523a238"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:26:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:26:11 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci\n\nOne regression fix for SR-IOV on PPC and a couple of misc fixes from\nYinghai.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci:\n  PCI: Fix pci cardbus removal\n  PCI: set pci sriov page size before reading SRIOV BAR\n  PCI: workaround hard-wired bus number V2\n"
    },
    {
      "commit": "5b415f1e79e0c09366f26e3eabe751642059285a",
      "tree": "a21fc072c7383531e41ecda6be72080c785ee81f",
      "parents": [
        "09cedbef4428580a09b342a7a92a262cfb5cbf25"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Feb 07 00:50:35 2012 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 17 09:22:04 2012 -0800"
      },
      "message": "PCI / PM: Disable wakeup during shutdown for devices not enabled to wake up\n\nIf a PCI device is enabled to generate wakeup signals (PME) when put\ninto a low-power state by runtime PM, it will be still enabled to\ngenerate those signals after the system shutdown, unless its driver\u0027s\n.shutdown() callback takes care of the wakeup signals generation\nsetting.  Moreover, there are devices that are not enabled to wake\nup the system and that are configured by runtime PM to generate\nwakeup signals so that (runtime) remote wakeup works with them.\nThose devices should be reconfigured during system shutdown so that\nthey don\u0027t generate wakeup signals, but at least some drivers don\u0027t\ndo that.  However, that very well may be done by the PCI core so\nthat drivers don\u0027t have to worry about it.  For this reason, modify\npci_device_shutdown() to disable the generation of wakeup events for\ndevices not supposed to wake up the system.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d37952\nReported-and-tested-by: Kamil Iskra \u003ckamil.54002@iskra.name\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "09cedbef4428580a09b342a7a92a262cfb5cbf25",
      "tree": "5ad0b8879ae0a3ef1cff5e5e82da4932ef1216e7",
      "parents": [
        "ad71c96213a68dfe6d761e3ff7ac7ac267fd612a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 04 22:55:01 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 17 09:22:03 2012 -0800"
      },
      "message": "PCI: Fix /sys warning when sriov enabled and card is hot removed\n\nsysfs is a bit stricter now and emits warnings in more cases.\n\nFor SRIOV hotplug, we are calling pci_stop_dev() for each VF first\n(after we update pci_stop_bus_devices) which remove each VF subdir.  So\ndouble check the VF dir in /sys before trying to remove the physfn link.\n\nSigned-of-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ad71c96213a68dfe6d761e3ff7ac7ac267fd612a",
      "tree": "e1586751c7249035c128de60a5721aafa997e2d5",
      "parents": [
        "f67fd55fa96f7d7295b43ffbc4a97d8f55e473aa"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri Feb 03 10:18:13 2012 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Feb 17 09:22:03 2012 -0800"
      },
      "message": "PCI: pcie: Add support for setting default ASPM policy\n\nDistributions may wish to provide different defaults for PCIE ASPM\ndepending on their target audience. Provide a configuration option for\nchoosing the default policy.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "694ce18ec3485f5b0a4f3820073f5e2b0b4e0870",
      "tree": "e979926df34b41e17024107ee4731739608d8b51",
      "parents": [
        "13d261932bbfff7f45f288c5c8cce43177cccd3b",
        "a43a5ccdfa5bd5b2f00aa9b2321df268c2e5d6e2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 14 15:20:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 14 15:20:11 2012 -0800"
      },
      "message": "Merge tag \u0027stable/for-linus-fixes-3.3-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nTwo fixes for VCPU offlining; One to fix the string format exposed\nby the xen-pci[front|back] to conform to the one used in majority of\nPCI drivers; Two fixes to make the code more resilient to invalid\nconfigurations.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n\n* tag \u0027stable/for-linus-fixes-3.3-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xenbus_dev: add missing error check to watch handling\n  xen/pci[front|back]: Use %d instead of %1x for displaying PCI devfn.\n  xen pvhvm: do not remap pirqs onto evtchns if !xen_have_vector_callback\n  xen/smp: Fix CPU online/offline bug triggering a BUG: scheduling while atomic.\n  xen/bootup: During bootup suppress XENBUS: Unable to read cpu state\n"
    },
    {
      "commit": "f67fd55fa96f7d7295b43ffbc4a97d8f55e473aa",
      "tree": "93f18189c8b1d944e2433d9bfb70a1f67b4148a5",
      "parents": [
        "3209874a1da2c51c7325e601d9634189ee178ad6"
      ],
      "author": {
        "name": "Thomas Jarosch",
        "email": "thomas.jarosch@intra2net.com",
        "time": "Wed Dec 07 22:08:11 2011 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:26 2012 -0800"
      },
      "message": "PCI: Add quirk for still enabled interrupts on Intel Sandy Bridge GPUs\n\nSome BIOS implementations leave the Intel GPU interrupts enabled,\neven though no one is handling them (f.e. i915 driver is never loaded).\nAdditionally the interrupt destination is not set up properly\nand the interrupt ends up -somewhere-.\n\nThese spurious interrupts are \"sticky\" and the kernel disables\nthe (shared) interrupt line after 100.000+ generated interrupts.\n\nFix it by disabling the still enabled interrupts.\nThis resolves crashes often seen on monitor unplug.\n\nTested on the following boards:\n- Intel DH61CR: Affected\n- Intel DH67BL: Affected\n- Intel S1200KP server board: Affected\n- Asus P8H61-M LE: Affected, but system does not crash.\n  Probably the IRQ ends up somewhere unnoticed.\n\nAccording to reports on the net, the Intel DH61WW board is also affected.\n\nMany thanks to Jesse Barnes from Intel for helping\nwith the register configuration and to Intel in general\nfor providing public hardware documentation.\n\nSigned-off-by: Thomas Jarosch \u003cthomas.jarosch@intra2net.com\u003e\nTested-by: Charlie Suffin \u003ccharlie.suffin@stratus.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3209874a1da2c51c7325e601d9634189ee178ad6",
      "tree": "a666c6502ac49e43f253b2d611465afa0e9336c1",
      "parents": [
        "309c665110ee6a8d9a28f802c41eaab50ceebbf7"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Jan 30 20:52:07 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:04 2012 -0800"
      },
      "message": "PCI: Annotate PCI quirks in initcall_debug style\n\nWhile diagnosing some boot time issues on a platform, all that I\ncould see in the bootgraph/dmesg was that the system was spending\na lot of time in applying one or more PCI quirks... which\nwas virtually undebuggable.\n\nThis patch adds printk\u0027s in \"initcall_debug\" style to the dmesg,\nwhich are added when the user asks for the initcall_debug\n(the nr one tool to use when debugging boot hangs or boot time issues)\nkernel command line option.\n\nv2: add #includes so quirks can build on non-x86\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "309c665110ee6a8d9a28f802c41eaab50ceebbf7",
      "tree": "e0b3fa4dd0c6e0535314118597151e01c2479568",
      "parents": [
        "26f41062f28de65e11d3cf353e52d0be73442be1"
      ],
      "author": {
        "name": "Danny Kukawka",
        "email": "danny.kukawka@bisect.de",
        "time": "Mon Jan 30 23:00:10 2012 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:03 2012 -0800"
      },
      "message": "PCI hotplug: cpcihp: fix debug module parameter to be bool\n\nFix debug variable from module parameter to be really bool to\nfix \u0027warning: return from incompatible pointer type\u0027.\n\nAcked-by: Scott Murray \u003cscott@spiteful.org\u003e\nSigned-off-by: Danny Kukawka \u003cdanny.kukawka@bisect.de\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "26f41062f28de65e11d3cf353e52d0be73442be1",
      "tree": "55ff1002ff04ad6eb8efd8e60f8b60419bc16c64",
      "parents": [
        "2debd9289997fc5d1c0043b41201a8b40d5e11d0"
      ],
      "author": {
        "name": "Kay, Allen M",
        "email": "allen.m.kay@intel.com",
        "time": "Thu Jan 26 10:25:53 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:02 2012 -0800"
      },
      "message": "PCI: check for pci bar restore completion and retry\n\nOn some OEM systems, pci_restore_state() is called while FLR has not yet\ncompleted.  As a result, PCI BAR register restore is not successful.  This fix\nreads back the restored value and compares it with saved value and re-tries 10\ntimes before giving up.\n\nSigned-off-by: Jean Guyader \u003cjean.guyader@eu.citrix.com\u003e\nSigned-off-by: Eric Chanudet \u003ceric.chanudet@citrix.com\u003e\nSigned-off-by: Allen Kay \u003callen.m.kay@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2debd9289997fc5d1c0043b41201a8b40d5e11d0",
      "tree": "a05fc1c9a3af920eb3f5844bcca0bfa878396d62",
      "parents": [
        "7f822999e12a144e68c915194267108f8051cf9b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:15 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:02 2012 -0800"
      },
      "message": "PCI: pciehp: Disable/enable link during slot power off/on\n\nOn a system with a repeater on the system board to support gen2 hotplug,\nwe found that when an ExpressModule is removed from some slots,\n/var/log/messages will be full of \"card present/not present\" warnings.\n\nIt turns out the root complex is continually trying to train the link to\nthe repeater because the repeater has not been reset.\n\nThis patch will disable the link at removal time to allow the repeater\nto be reset properly.  This also prevents a potential AER message at\nremoval time.\n\nAlso, when testing hotplug on a system under development, we found if we\nboot the system without an EM installed, and later hot-add an EM, it\ndoes not work with Linux, but another OS is ok.  The root cause is that\nBIOS left link disabled when slot was empty at boot time, and other OS\nis modifying the link disable bit in link ctrl during power on/off.\n\nSo we should do the same thing to disable/enable link during power off/on.\n\n-v2: check link DLLA bit instead of 100ms waiting.\n     Separate link disable/enable functions to another patch.\n\nSigned-off-by: Yinghai Lu \u003cyinghai.lu@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7f822999e12a144e68c915194267108f8051cf9b",
      "tree": "8836b3dcde3fa8c8847a045e638089c97542fd0e",
      "parents": [
        "bffe4f72fcdd92bfb24909d586d1636e5cec500d"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:14 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:01 2012 -0800"
      },
      "message": "PCI: pciehp: Add Disable/enable link functions\n\nWill use it during power off/on of slots\n\nSigned-off-by: Yinghai Lu \u003cyinghai.lu@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bffe4f72fcdd92bfb24909d586d1636e5cec500d",
      "tree": "838c8a55fcafd065a01c2b054119f483e25c6e78",
      "parents": [
        "4e2ce405b24eef9f4cc947bf5f430ca27b474f1f"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:13 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:01 2012 -0800"
      },
      "message": "PCI: pciehp: Add pcie_wait_link_not_active()\n\nWill use it for link disable status checking.\n\nSigned-off-by: Yinghai Lu \u003cyinghai.lu@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4e2ce405b24eef9f4cc947bf5f430ca27b474f1f",
      "tree": "94f98ed4f240c44209efe9d2321da27a15feb7bd",
      "parents": [
        "2f5d8e4ff947ad6673397083b48719cd6c59cd61"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:12 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:00 2012 -0800"
      },
      "message": "PCI: pciehp: make check_link_active more helpful\n\nA few changes:\n  - remove the \u0027inline\u0027 and let the complier decide\n  - return a bool to indicate whether the link was active\n  - add a debug message to indicate link state when it beocmes active\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2f5d8e4ff947ad6673397083b48719cd6c59cd61",
      "tree": "46e1c6901937b7f983b511d6e14498000e2989bb",
      "parents": [
        "efdc87dab1cdf25ba631181ac0ead3fb2023dd10"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:11 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:45:00 2012 -0800"
      },
      "message": "PCI: pciehp: replace unconditional sleep with config space access check\n\nDuring reviewing\n|\tPCI: pciehp: wait 1000 ms before Link Training check\nLinus said:\n\u003e...\n\u003e That\u0027s a *long* time, and it\u0027s irritating to the user. It makes the\n\u003e user think \"the machine is slow\".\n\u003e...\n\u003e And quite frankly, an unconditional one-second delay here seems bad.\n\u003eTwo seconds was unacceptable, one second is just bad.\n\nTry to access the pci conf of a pci device that is supposed to show up\nin 1s.  If we can read back a valid vendor/device id, we can return\nearly.\n\nRelated discussion could be found:\n\thttps://lkml.org/lkml/2011/12/6/339\n\n-v2: seperate code to pci_bus_read_dev_vendor_id() from pci_scan_device()\n    and reuse it from pciehp code. Suggested by Matthew Wilcox.\n-v3: According to Kenj, don\u0027t use array in stack, and don\u0027t wait too long\n    for crs, also return fail status if not found.\n    Also separate pci_bus_dev_read_vendor_id() change to another patch.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "efdc87dab1cdf25ba631181ac0ead3fb2023dd10",
      "tree": "f55b7d0b2e9bbfd9dd280c85166aef423bf68d75",
      "parents": [
        "ac205b7bb72fa4227d2e79979bbe2b4687cdf44d"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:10 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:59 2012 -0800"
      },
      "message": "PCI: Separate pci_bus_read_dev_vendor_id from pci_scan_device\n\nWe can reuse it for pciehp probing.\n\n-v2: according to Kenji, fix crs timeout checking, and export the function\n     for later use when pciehp is compiled as a module.\n\nSuggested-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ac205b7bb72fa4227d2e79979bbe2b4687cdf44d",
      "tree": "8237ee0dd7ee2096e8d96a2b48d03b9559932d8f",
      "parents": [
        "67cc7e26a5c46508ee00b9fe169aad833b798025"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jan 27 10:55:09 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:59 2012 -0800"
      },
      "message": "PCI: make sriov work with hotplug remove\n\nWhen hot removing a pci express module that has a pcie switch and supports\nSRIOV, we got:\n\n[ 5918.610127] pciehp 0000:80:02.2:pcie04: pcie_isr: intr_loc 1\n[ 5918.615779] pciehp 0000:80:02.2:pcie04: Attention button interrupt received\n[ 5918.622730] pciehp 0000:80:02.2:pcie04: Button pressed on Slot(3)\n[ 5918.629002] pciehp 0000:80:02.2:pcie04: pciehp_get_power_status: SLOTCTRL a8 value read 1f9\n[ 5918.637416] pciehp 0000:80:02.2:pcie04: PCI slot #3 - powering off due to button press.\n[ 5918.647125] pciehp 0000:80:02.2:pcie04: pcie_isr: intr_loc 10\n[ 5918.653039] pciehp 0000:80:02.2:pcie04: pciehp_green_led_blink: SLOTCTRL a8 write cmd 200\n[ 5918.661229] pciehp 0000:80:02.2:pcie04: pciehp_set_attention_status: SLOTCTRL a8 write cmd c0\n[ 5924.667627] pciehp 0000:80:02.2:pcie04: Disabling domain:bus:device\u003d0000:b0:00\n[ 5924.674909] pciehp 0000:80:02.2:pcie04: pciehp_get_power_status: SLOTCTRL a8 value read 2f9\n[ 5924.683262] pciehp 0000:80:02.2:pcie04: pciehp_unconfigure_device: domain:bus:dev \u003d 0000:b0:00\n[ 5924.693976] libfcoe_device_notification: NETDEV_UNREGISTER eth6\n[ 5924.764979] libfcoe_device_notification: NETDEV_UNREGISTER eth14\n[ 5924.873539] libfcoe_device_notification: NETDEV_UNREGISTER eth15\n[ 5924.995209] libfcoe_device_notification: NETDEV_UNREGISTER eth16\n[ 5926.114407] sxge 0000:b2:00.0: PCI INT A disabled\n[ 5926.119342] BUG: unable to handle kernel NULL pointer dereference at (null)\n[ 5926.127189] IP: [\u003cffffffff81353a3b\u003e] pci_stop_bus_device+0x33/0x83\n[ 5926.133377] PGD 0\n[ 5926.135402] Oops: 0000 [#1] SMP\n[ 5926.138659] CPU 2\n[ 5926.140499] Modules linked in:\n...\n[ 5926.143754]\n[ 5926.275823] Call Trace:\n[ 5926.278267]  [\u003cffffffff81353a38\u003e] pci_stop_bus_device+0x30/0x83\n[ 5926.284180]  [\u003cffffffff81353af4\u003e] pci_remove_bus_device+0x1a/0xba\n[ 5926.290264]  [\u003cffffffff81366311\u003e] pciehp_unconfigure_device+0x110/0x17b\n[ 5926.296866]  [\u003cffffffff81365dd9\u003e] ? pciehp_disable_slot+0x188/0x188\n[ 5926.303123]  [\u003cffffffff81365d6f\u003e] pciehp_disable_slot+0x11e/0x188\n[ 5926.309206]  [\u003cffffffff81365e68\u003e] pciehp_power_thread+0x8f/0xe0\n...\n\n +-[0000:80]-+-00.0-[81-8f]--\n |           +-01.0-[90-9f]--\n |           +-02.0-[a0-af]--\n |           +-02.2-[b0-bf]----00.0-[b1-b3]--+-02.0-[b2]--+-00.0 Device\n |           |                               |            +-00.1 Device\n |           |                               |            +-00.2 Device\n |           |                               |            \\-00.3 Device\n |           |                               \\-03.0-[b3]--+-00.0 Device\n |           |                                            +-00.1 Device\n |           |                                            +-00.2 Device\n |           |                                            \\-00.3 Device\n\nroot complex: 80:02.2\npci express modules: have pcie switch and are listed as b0:00.0, b1:02.0 and b1:03.0.\nend devices  are b2:00.0 and b3.00.0.\nVFs are: b2:00.1,... b2:00.3, and b3:00.1,...,b3:00.3\n\nRoot cause: when doing pci_stop_bus_device() with phys fn, it will stop\nvirt fn and remove the fn, so\n\tlist_for_each_safe(l, n, \u0026bus-\u003edevices)\nwill have problem to refer freed n that is pointed to vf entry.\n\nSolution is just replacing list_for_each_safe() with\nlist_for_each_prev_safe().  This will make sure we can get valid n pointer\nto PF instead of the freed VF pointer (because newly added devices are\ninserted to the bus-\u003edevices list tail).\n\nDuring reviewing the patch, Bjorn said:\n|   The PCI hot-remove path calls pci_stop_bus_devices() via\n|   pci_remove_bus_device().\n|\n|   pci_stop_bus_devices() traverses the bus-\u003edevices list (point A below),\n|   stopping each device in turn, which calls the driver remove() method.  When\n|   the device is an SR-IOV PF, the driver calls pci_disable_sriov(), which\n|   also uses pci_remove_bus_device() to remove the VF devices from the\n|   bus-\u003edevices list (point B).\n|\n|       pci_remove_bus_device\n|         pci_stop_bus_device\n|           pci_stop_bus_devices(subordinate)\n|             list_for_each(bus-\u003edevices)             \u003c-- A\n|               pci_stop_bus_device(PF)\n|                 ...\n|                   driver-\u003eremove\n|                     pci_disable_sriov\n|                       ...\n|                         pci_remove_bus_device(VF)\n|                             \u003cremove from bus_list\u003e  \u003c-- B\n|\n|   At B, we\u0027re changing the same list we\u0027re iterating through at A, so when\n|   the driver remove() method returns, the pci_stop_bus_devices() iterator has\n|   a pointer to a list entry that has already been freed.\n\nDiscussion thread can be found : https://lkml.org/lkml/2011/10/15/141\n\t\t\t\t https://lkml.org/lkml/2012/1/23/360\n\n-v5: According to Linus to make remove more robust, Change to\n     list_for_each_prev_safe instead. That is more reasonable, because\n     those devices are added to tail of the list before.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "67cc7e26a5c46508ee00b9fe169aad833b798025",
      "tree": "bb684ce9e451597efe4fa6a19df0c64fb57a8d6a",
      "parents": [
        "b592443d9045f0880eb4d8cc9125075744db4b9e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:32 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:58 2012 -0800"
      },
      "message": "PCI: remove add_to_failed_list()\n\nOnly one user; just use add_to_list instead.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b592443d9045f0880eb4d8cc9125075744db4b9e",
      "tree": "e8f6d1d49f67f3558ae18b9bde41328a6856569c",
      "parents": [
        "bffc56d41102705d809f88c29918a9c33d2900f7"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:31 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:58 2012 -0800"
      },
      "message": "PCI: add debug print out for add_size\n\nFor use in debugging resource reallocation.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bffc56d41102705d809f88c29918a9c33d2900f7",
      "tree": "61889ca64ef9166ef17ea8555dc0c53c50149b16",
      "parents": [
        "b9b0bba96cf5acbf025f7829fbf6c09e74323b41"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:30 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:57 2012 -0800"
      },
      "message": "PCI: make free_list() into a function\n\nAfter merging struct pci_dev_resource_x and pci_dev_resource,\nWe can use a function instead of macro now.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b9b0bba96cf5acbf025f7829fbf6c09e74323b41",
      "tree": "64dcc384b6aa90458608cda94bedf67e7486dad8",
      "parents": [
        "764242a0aec69e10b8dc0f4f0303a6800b09cf45"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:29 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:57 2012 -0800"
      },
      "message": "PCI: Rename dev_res_x to add_res or fail_res\n\nLinus says don\u0027t use dev_res_x because it doesn\u0027t communicate anything\nabout usage.  Rename them to add_res or fail_res etc according to\ncontext.\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "764242a0aec69e10b8dc0f4f0303a6800b09cf45",
      "tree": "c61109a8d13c8b212be05c069d3339fdc73cfa14",
      "parents": [
        "bdc4abecaeff30b3cc230b418a925999dda594c2"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:28 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:56 2012 -0800"
      },
      "message": "PCI: Merge pci_dev_resource_x and pci_dev_resource\n\npci_dev_resource_x is a superset of pci_dev_resource and they\u0027re just\ntemp structs used during resource reallocation.\n\npci_dev_resource usage is quite limted.\n\nSo just use pci_dev_resource_x, and rename it as new pci_dev_resource.\n\n-v2: According to Linus, Separate free_list change to another patch\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bdc4abecaeff30b3cc230b418a925999dda594c2",
      "tree": "560705372265c02af5c8e9738a0a2bcaae32bb02",
      "parents": [
        "2934a0de095f277a7bbc15a72ecf61af31a45163"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:27 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:55 2012 -0800"
      },
      "message": "PCI: Replace resource_list with generic list\n\nSo we can use helper functions for generic list.  This makes the\nresource re-allocation code much more readable.\n\n-v2: Use list_add_tail instead of adding list_insert_before, Pointed out\n     by Linus.\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2934a0de095f277a7bbc15a72ecf61af31a45163",
      "tree": "26fcc207a7bfa419f5a2ecfdf6bcd63e7e09cdcd",
      "parents": [
        "78c3b329b9dd7097781cb900146e503e499cccfe"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:26 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:55 2012 -0800"
      },
      "message": "PCI: Move struct resource_list to setup-bus.c\n\nNo user outside of setup-bus.c now.  Later patches will convert\nresource_list to a regular list.\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "78c3b329b9dd7097781cb900146e503e499cccfe",
      "tree": "0e7648baae8ac6f17b34108f5793aa1e3d4f23f8",
      "parents": [
        "19aa7ee432cec00b647443719eb5c055b69a5e8e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:25 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:54 2012 -0800"
      },
      "message": "PCI: Move pdev_sort_resources() to setup-bus.c\n\nThis allows us to move the definition of struct resource_list to\nsetup_bus.c and later convert resource_list to a regular list.\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "19aa7ee432cec00b647443719eb5c055b69a5e8e",
      "tree": "7d0175d80dba6171786886ddf388cb97e3d11dad",
      "parents": [
        "9b03088f955552299f50a1f660372698b07ab339"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 21 02:08:24 2012 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Feb 14 08:44:54 2012 -0800"
      },
      "message": "PCI: make re-allocation try harder by reassigning ranges higher in the heirarchy\n\nOn a system with devices that support SRIOV connected to a pcie switch\nto pcie root port:\n\n +-[0000:80]-+-00.0-[81-8f]--\n |           +-01.0-[90-9f]--\n |           +-02.0-[a0-af]----00.0-[a1-a3]--+-02.0-[a2]--+-00.0 Oracle Corporation Device 207a\n |           |                               \\-03.0-[a3]--+-00.0 Oracle Corporation Device 207a\n |           +-02.2-[b0-bf]----00.0-[b1-b3]--+-02.0-[b2]--+-00.0 Oracle Corporation Device 207a\n |           |                               \\-03.0-[b3]--+-00.0 Oracle Corporation Device 207a\n\nWhen the BIOS does not assign resources for SRIOV BARs, kernel pci\nreallocation only goes up one bridge and then gives up, failing to to\nget resources for all sSRIOV BARs, even though the range is large enough\nin the peer root bus.\n\nSpecifically, only the bridge at the a1:02.0 level has its resources\ncleared and reallocated.  The kernel does not go up to clear the bridge\nat the 80:02.0 level.\n\nTo make it go to upper levels, during retry, we need to treat \"good to have\"\nresources as \"must have\".\n\nOnly on the last try will we treat good to have resources as optional.\nAt that time, parent bridge resources will already have been released so\nwe\u0027ll have a chance to get everything assigned with must_have plus\ngood_to_have for all child devices.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    }
  ],
  "next": "9b03088f955552299f50a1f660372698b07ab339"
}
