)]}'
{
  "log": [
    {
      "commit": "86ae13b006e48959981248493efd3ff4b2828b3d",
      "tree": "c823456de41e8488ac1aac9f4cf0a0a31b9495c9",
      "parents": [
        "03266d28ca5bf1959ee91dc6554c01b790975352"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 12 16:22:46 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 13 10:20:16 2009 -0700"
      },
      "message": "headers: Fix build after \u003clinux/sched.h\u003e removal\n\nCommit d43c36dc6b357fa1806800f18aa30123c747a6d1 (\"headers: remove\nsched.h from interrupt.h\") left some build errors in some configurations\ndue to drivers having depended on getting header files \"accidentally\".\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n[ Combined several one-liners from Ingo into one single patch  - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b24715027aab5e586c4ab1d035f3e543307dea69",
      "tree": "01688402d1694b42f9821e00fc6b4b0913de397f",
      "parents": [
        "53cddfcc0e760d2b364878b6dadbd0c6d087cfae"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 21 19:28:49 2009 +0000"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Sep 25 14:24:22 2009 -0400"
      },
      "message": "ACPICA: fixup after acpi_get_object_info() change\n\nCommit 15b8dd53f5ffa changed info-\u003ehardware_id from a static array to\na pointer.  If hardware_id is non-NULL, it points to a NULL-terminated\nstring, so we don\u0027t need to terminate it explicitly.  However, it may\nbe NULL; in that case, we *can\u0027t* add a NULL terminator.\n\nThis causes a NULL pointer dereference oops for devices without _HID.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCC: Lin Ming \u003cming.m.lin@intel.com\u003e\nCC: Bob Moore \u003crobert.moore@intel.com\u003e\nCC: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b7f21bb2e23b4fec16b448a34889f467465be659",
      "tree": "3569f95b5ebf5bcce03aad976ef69b9b818de832",
      "parents": [
        "7ca263cdf8cf74d0f1c6f48d07d556de92e3bec9",
        "76baeebf7df493703eeb4428eac015bdb7fabda6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 09:57:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 09:57:08 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (21 commits)\n  x86/PCI: make 32 bit NUMA node array int, not unsigned char\n  x86/PCI: default pcibus cpumask to all cpus if it lacks affinity\n  MAINTAINTERS: remove hotplug driver entries\n  PCI: pciehp: remove slot capabilities definitions\n  PCI: pciehp: remove error message definitions\n  PCI: pciehp: remove number field\n  PCI: pciehp: remove hpc_ops\n  PCI: pciehp: remove pci_dev field\n  PCI: pciehp: remove crit_sect mutex\n  PCI: pciehp: remove slot_bus field\n  PCI: pciehp: remove first_slot field\n  PCI: pciehp: remove slot_device_offset field\n  PCI: pciehp: remove hp_slot field\n  PCI: pciehp: remove device field\n  PCI: pciehp: remove bus field\n  PCI: pciehp: remove slot_num_inc field\n  PCI: pciehp: remove num_slots field\n  PCI: pciehp: remove slot_list field\n  PCI: fix VGA arbiter header file\n  PCI: Disable AER with pci\u003dnomsi\n  ...\n\nFixed up trivial conflicts in MAINTAINERS\n"
    },
    {
      "commit": "985f38781d19101aba121df423f92c87b208c6df",
      "tree": "21b10413b6e24c0eaf5c3b2432e936749a672644",
      "parents": [
        "d093d70a81b08673d1577ad73419998f02be9d29",
        "c9766237afa92e8d7f27bbcd4964f1b43fa0bce8"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 19 01:45:22 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 19 01:45:22 2009 -0400"
      },
      "message": "Merge branch \u0027acpica\u0027 into release\n"
    },
    {
      "commit": "656927b119a6f2fe0ed453191e13eec6fe041f4c",
      "tree": "33a7468578e2010b761e20eca71c5934d574b9ed",
      "parents": [
        "d9fb42a845f8e56d91017462650ba41e854f5552"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:34:05 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:46 2009 -0700"
      },
      "message": "PCI: pciehp: remove slot capabilities definitions\n\nUse generic PCIe slot capabilities register definitions instead of\ninternal definitions.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d9fb42a845f8e56d91017462650ba41e854f5552",
      "tree": "30600b2e6d3cb3319d46e234f83779745d738818",
      "parents": [
        "07a09694de556f307b1c5035cdf0f17c6243d1cd"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:33:30 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:41 2009 -0700"
      },
      "message": "PCI: pciehp: remove error message definitions\n\nRemove (almost) unused error message definitions.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "07a09694de556f307b1c5035cdf0f17c6243d1cd",
      "tree": "ceb0bc41419ab4f680e87f49e0c581177c2147f1",
      "parents": [
        "82a9e79ef132cbf77de58aae35c1a14237f2fcde"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:31:16 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:36 2009 -0700"
      },
      "message": "PCI: pciehp: remove number field\n\nSince slot_cap field in struct controller contains physical slot\nnumber informationq, we don\u0027t need number field in struct slot.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "82a9e79ef132cbf77de58aae35c1a14237f2fcde",
      "tree": "1ca6f0dc69cb7e92df48d4f05b595b032e03e206",
      "parents": [
        "385e24917ed8eeba25dddd8e63bf3fe3d53eafc5"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:30:48 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:31 2009 -0700"
      },
      "message": "PCI: pciehp: remove hpc_ops\n\nThe struct hpc_ops seems a set of hooks to controller specific\nroutines. But, it is meaningless because no hotplug controller driver\nfollows this framework.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "385e24917ed8eeba25dddd8e63bf3fe3d53eafc5",
      "tree": "8ab67402844702e534d9d0684fbb49db75883383",
      "parents": [
        "6aaa6d06f57f3689afe27c1fad256c5d6aa9b271"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:30:14 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:25 2009 -0700"
      },
      "message": "PCI: pciehp: remove pci_dev field\n\nSince we have a pointer to pcie_device in struct controller, we don\u0027t\nneed a pointer to pci_dev.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6aaa6d06f57f3689afe27c1fad256c5d6aa9b271",
      "tree": "37046e6aa57d03d9b5a890dc9bde34afe1b2f48e",
      "parents": [
        "5f9cab7af6f7ef1e3cbb25217617eb5bd082aa7b"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:29:49 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:18 2009 -0700"
      },
      "message": "PCI: pciehp: remove crit_sect mutex\n\nThe crit_sect mutex defined in struct controller is to serialize\nhot-plug operations against multiple slots under the same bus. But,\nsince PCIe doesnstream port has only one slot at most, it is\nmeaningless and we don\u0027t need it.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5f9cab7af6f7ef1e3cbb25217617eb5bd082aa7b",
      "tree": "6823c016ba3c2ace064ad39aee586dcf4c3e4cdc",
      "parents": [
        "d54798f034b247b9d95a31cd755a4236655ca502"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:29:21 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:14 2009 -0700"
      },
      "message": "PCI: pciehp: remove slot_bus field\n\nRemove unused slot_bus field in struct controller.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d54798f034b247b9d95a31cd755a4236655ca502",
      "tree": "7f1be3a0e83a171fd16656cfb89b24b0f8144e50",
      "parents": [
        "a2359a334fb2c89347e031c4494282e6756e9ae7"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:28:53 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:09 2009 -0700"
      },
      "message": "PCI: pciehp: remove first_slot field\n\nThe slot number can be calculated only by physical slot number field\nin the slot capabilities register. So the first_slot field in struct\ncontroller is meaningless and we don\u0027t need it.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a2359a334fb2c89347e031c4494282e6756e9ae7",
      "tree": "9ac5e61752318def916d47fd0ea27b62b19dbc3c",
      "parents": [
        "0e3631593c38e8a09bf58a46c6f6a3426d3ad0f0"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:28:28 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:06:02 2009 -0700"
      },
      "message": "PCI: pciehp: remove slot_device_offset field\n\nSince the device number of the hot-slot under the PCIe downstream port\nis always 0, the slot_device_offset field in the slot is meaningless\nand we don\u0027t need it.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0e3631593c38e8a09bf58a46c6f6a3426d3ad0f0",
      "tree": "e5b47555b2f4611c9c478367fe9000d3812c62b1",
      "parents": [
        "d689f7eb364a51ccd857605dede0d6c22a1aad91"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:27:24 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:58 2009 -0700"
      },
      "message": "PCI: pciehp: remove hp_slot field\n\nThe hp_slot field is to identify the slot under the same\ncontroller. But, since PCIe downstream port has only one slot at most,\nit is meaningless and we don\u0027t need it.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d689f7eb364a51ccd857605dede0d6c22a1aad91",
      "tree": "34efda76db5ec3e0c57034deb254014c55b93068",
      "parents": [
        "ab9c6c86701b498445334db746aa2e8dc473c7b6"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:26:56 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:51 2009 -0700"
      },
      "message": "PCI: pciehp: remove device field\n\nThe device field in the struct slot is not necessary because it is\nalways 0 in pciehp driver.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ab9c6c86701b498445334db746aa2e8dc473c7b6",
      "tree": "ebfdc650615be00a8047fb3448d96731a7197292",
      "parents": [
        "6a11c135f3511743d09474ccaac2137d34c352a8"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:26:32 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:46 2009 -0700"
      },
      "message": "PCI: pciehp: remove bus field\n\nThe bus field in struct slot is not necessary.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6a11c135f3511743d09474ccaac2137d34c352a8",
      "tree": "4d24d141eb01f49c1b12a7c77a85cf848ad87e6c",
      "parents": [
        "e23727da77109ef856f7a76c1a7d2e2282f600f5"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:25:54 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:41 2009 -0700"
      },
      "message": "PCI: pciehp: remove slot_num_inc field\n\nThe slot_num_inc field in struct controller is unused and meaningless\nin pciehp driver.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e23727da77109ef856f7a76c1a7d2e2282f600f5",
      "tree": "83d600080ea3cbb8bd064ddad040604e06f077ce",
      "parents": [
        "8720d27dabf580278a7719fa8b5783d9878e2d42"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:25:17 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:36 2009 -0700"
      },
      "message": "PCI: pciehp: remove num_slots field\n\nSince PCIe downstream port has only one slot at most, we don\u0027t need\nnum_slots field in struct controller. Note that struct controller\nitself doesn\u0027t exist if PCIe downstream port has no slot.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8720d27dabf580278a7719fa8b5783d9878e2d42",
      "tree": "229ee309a9a205f41650a01ff83c0a24b710a314",
      "parents": [
        "e2d4304b7d2b85c45de89ec420037d6b9261a12d"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Sep 15 17:24:46 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 17 10:05:31 2009 -0700"
      },
      "message": "PCI: pciehp: remove slot_list field\n\nSince PCIe downstream port has only one slot at most, we don\u0027t need\n\u0027slot_list\u0027 linked list to manage multiple slots under the port.\n\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5e3573db2bd5db6925159279d99576a4635bdb66",
      "tree": "a90efab044203abfda470f464cd056fe97497121",
      "parents": [
        "e81995bb1c0077a312cb621abc406a36f65a986a"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:40 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:39:14 2009 -0700"
      },
      "message": "PCI hotplug: clean up acpi_run_hpp()\n\nThis patch cleans up acpi_run_hpp() and follows the style of acpi_run_hpx():\n    - remove unnecessary METHOD_NAME__HPP #define\n    - use ACPI_ALLOCATE_BUFFER rather than evaluating _HPP twice\n    - validate _HPP package length (defined as 4 by the spec)\n    - avoid ref to undefined data if FW provides \u003c 4 elements\n    - remove temporary nui[] array\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e81995bb1c0077a312cb621abc406a36f65a986a",
      "tree": "9a451882e0c1528b4fbd9781605e0850d7bcb693",
      "parents": [
        "11876e52e9148bf923795d6fcf8abed7f3662aaa"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:35 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:39:12 2009 -0700"
      },
      "message": "PCI hotplug: acpiphp: use generic pci_configure_slot()\n\nUse the generic pci_configure_slot() rather than the acpiphp-specific\ndecode_hpp() and program_hpp().\n\nUnlike the previous acpiphp-specific code, pci_configure_slot() programs\nPCIe settings when an _HPX method provides them, so acpiphp-managed PCIe\ndevices can now be configured.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "11876e52e9148bf923795d6fcf8abed7f3662aaa",
      "tree": "26c92c1064261e0c47897c4d1d14e52eda6a2a62",
      "parents": [
        "d569c74d78ffcde2f163256e4da934ec3bacff0e"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:30 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:39:11 2009 -0700"
      },
      "message": "PCI hotplug: shpchp: use generic pci_configure_slot()\n\nUse the generic pci_configure_slot() rather than the SHPC-specific\nprogram_fw_provided_values().\n\nUnlike the previous SHPC-specific code, pci_configure_slot() programs PCIe\nsettings when an _HPX method provides them, so if it\u0027s possible to have an\nSHPC-managed PCIe device, it can now be configured.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d569c74d78ffcde2f163256e4da934ec3bacff0e",
      "tree": "a4652df85c274f60b5677ac266e88f99e990f87c",
      "parents": [
        "8838400db5193c37588813c2eb1249b821781950"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:25 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:39:09 2009 -0700"
      },
      "message": "PCI hotplug: pciehp: use generic pci_configure_slot()\n\nUse the generic pci_configure_slot() rather than the PCIe-specific\nprogram_fw_provided_values().\n\nUnlike the previous pciehp-specific code, we now walk through subordinate\ndevices even if there are no settings for the parent.  This should be\nharmless because we won\u0027t change anything unless we discover firmware\nsettings farther down.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8838400db5193c37588813c2eb1249b821781950",
      "tree": "9ddd0bfc93c0a0516d9af2aa450e5d41e9786bb7",
      "parents": [
        "6a29172ba90e49c046245610caff9848307bfd6a"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:20 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:39:05 2009 -0700"
      },
      "message": "PCI hotplug: add pci_configure_slot()\n\nThis patch adds a new pci_configure_slot() function that programs the\nPCI bus characteristics for a newly-added device.  This is based on\ncode in pciehp_pci.c, but should be generic enough to be used by pciehp,\nshpchp, and acpiphp.\n\nThe hotplug_params struct and the program_hpp_typeX() functions are based\non the ACPI definitions, but they aren\u0027t really ACPI-specific, and there\u0027s\nno alternate implementation, so I don\u0027t see the need to abstract them yet.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6a29172ba90e49c046245610caff9848307bfd6a",
      "tree": "41911e0b90cb6bec026f9eb2d4cc5e0f914afa75",
      "parents": [
        "fca6825ad7382ae9df8ecda9068ac13ee9e343f4"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:15 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:38:26 2009 -0700"
      },
      "message": "PCI hotplug: clean up acpi_get_hp_params_from_firmware() interface\n\nThis patch makes acpi_get_hp_params_from_firmware() take a\npci_dev rather than a pci_bus and makes it return a standard\nint errno rather than acpi_status.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "fca6825ad7382ae9df8ecda9068ac13ee9e343f4",
      "tree": "2a1c1f852b049bb9f834f5cb443be39851022cc7",
      "parents": [
        "dffb4bb560ed73937a52c68c304b232c743b49f7"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:10 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:38:22 2009 -0700"
      },
      "message": "PCI hotplug: acpiphp: don\u0027t cache hotplug_params in acpiphp_bridge\n\nWe always look up hotplug_params with decode_hpp() immediately before using\nthem, so we don\u0027t need to save them in the acpiphp_bridge struct.  This\npatch follows the example of program_fw_provided_values() in pciehp_pci.c\nand shpchp_pci.c by just keeping the params on the stack while we need them.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "dffb4bb560ed73937a52c68c304b232c743b49f7",
      "tree": "f2f0901b3a90c5a66ea140d1d7de52d1c7ba7924",
      "parents": [
        "4b77b0a2ba27d64f58f16d8d4d48d8319dda36ff"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Mon Sep 14 16:35:05 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 17:38:19 2009 -0700"
      },
      "message": "PCI hotplug: acpiphp: remove superfluous _HPP/_HPX evaluation\n\ndecode_hpp() looks up hotplug PCI parameters from ACPI and saves them\nin the acpiphp_bridge structure.  These parameters (in bridge-\u003ehpp) are\nonly used by the acpiphp_set_hpp_values() -\u003e program_hpp() path.  In\nthat path, we always call decode_hpp() before program_hpp(), so there\u0027s\nno need to do it in init_bridge_misc().\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7f53866932fd08add06ee2f93ead129949158490",
      "tree": "f01520afe3708a3c79233fa67d50124f0dac6335",
      "parents": [
        "6edd7679db92376ca54f328d6b0f12291c2dab35"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Thu Sep 10 12:34:09 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 08:46:58 2009 -0700"
      },
      "message": "PCI Hotplug: convert acpi_pci_detect_ejectable() to take an acpi_handle\n\nacpi_pci_detect_ejectable() goes through effort to convert its\nstruct pci_bus arg to an acpi_handle, but every time we use this\ninterface, we already have the handle available.\n\nSo let\u0027s just use the handle instead of converting back and forth.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6edd7679db92376ca54f328d6b0f12291c2dab35",
      "tree": "b04ce7c5965e30914f3ba6e70f6553363552d23f",
      "parents": [
        "9965976a38f66fc170fc0528b3115bf1a8a58b0a"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Thu Sep 10 12:34:04 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Sep 14 08:46:48 2009 -0700"
      },
      "message": "PCI Hotplug: acpiphp: find bridges the easy way\n\nInstead of constantly evaluating _ADR and _SEG over and over again,\nlet\u0027s simplify our lives by using:\n\n\tacpi_pci_find_root() for root bridges\n\tacpi_get_pci_dev() for p2p bridges\n\nThis change eliminates some copy \u0027n paste code and also allows us\nto simplify some internal interfaces.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0ba379ec0fb182a87b8891c5754abbcd9c035b4f",
      "tree": "d2678b52e9e92a654f1997a9b6e891f47351c782",
      "parents": [
        "b1c089b7caf18905bd1d87136cf7b8c837254932"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Sep 06 21:48:35 2009 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Sep 09 14:06:49 2009 -0700"
      },
      "message": "PCI: Simplify hotplug mch quirk.\n\nThere is a very old quirk for the intel E7502 E7320 and E7525 memory\ncontroller hubs that disables usage of msi interrupts on pcie hotplug\nbridges of those devices, and disables changing the affinity of irqs.\n\nToday all we have to do to disable msi on a specific device is to set\ndev-\u003eno_msi, which is much more straightforward than the previous\nlogic.\n\nThe re-running of this fixup after pci hotplug happens below these\ndevices is totally bogus.  All of the state we change is pure software\nstate and we don\u0027t change the hardware at all.  Which means hotplug on\nthe lower devices doesn\u0027t have a chance to change this state.  So we\ncan safely remove the special case from the pciehp driver and the pcie\nportdriver.\n\nI suspect the special case was someone\u0027s expermental debug code that\nslipped in. Certainly it isn\u0027t mentioned in commit\n6fb8880a61510295aece04a542767161f624dffe aka BKrev:\n41966101LJ_ogfOU0m2aE6teZfQnuQ where the code first appears.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "825c423a35a80a8fd66398a3f9bde7f0b0187a76",
      "tree": "581b7f199a5fe0543a78139e18f05520964f2488",
      "parents": [
        "6ed6a8dc83dc37d30c8a7ff2eae2ed054e34c91b"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Jul 29 14:39:58 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Sep 09 13:29:50 2009 -0700"
      },
      "message": "PCI hotplug: add support for 5.0G link speed\n\nAdd support for PCI-E 5.0 GT/s in max_bus_speed and cur_bus_speed.\n\nReviewed-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6ed6a8dc83dc37d30c8a7ff2eae2ed054e34c91b",
      "tree": "6c81de63866cf4c14c846479f188696b8aacb6ba",
      "parents": [
        "ac18018a414a90d841ea81d38fecb913c0ec1880"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Jul 29 14:39:07 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Sep 09 13:29:49 2009 -0700"
      },
      "message": "PCI hotplug: fix typo in pcie link speed info\n\nFix typo in PCI-E link speed.\n\nReviewed-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5228a828ee044834d78abdf25306bf46b19dcc4d",
      "tree": "b64bab920f7b2b8704ac6df4eaa389e3aa99064e",
      "parents": [
        "76d56de57ae60c6be383e48e7068fd973d5fb08a"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Thu Jul 23 17:03:05 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Sep 09 13:29:23 2009 -0700"
      },
      "message": "PCI Hotplug: acpiphp: get pci_bus from acpi handle correctly\n\nWe cannot simply call acpi_get_pci_dev() on any random ACPI handle\nand hope that it works, because a PCI root bridge may not have\nan associated struct pci_dev.\n\nThis is allowed per the PCI specification, and is referred to as a\nnon-materialized bridge.\n\nSo, depending on the type of PCI bridge that the handle points to,\nuse the appropriate interface to return the struct pci_bus correctly.\n\nReviewed-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "15b8dd53f5ffaf8e2d9095c423f713423f576c0f",
      "tree": "773f09435b14a810372642502352d46c29b6f148",
      "parents": [
        "9c61b34cf7078da72cce276ff8cfae5d6e9955bc"
      ],
      "author": {
        "name": "Bob Moore",
        "email": "robert.moore@intel.com",
        "time": "Mon Jun 29 13:39:29 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 27 10:17:15 2009 -0400"
      },
      "message": "ACPICA: Major update for acpi_get_object_info external interface\n\nCompleted a major update for the acpi_get_object_info external interface.\nChanges include:\n - Support for variable, unlimited length HID, UID, and CID strings\n - Support Processor objects the same as Devices (HID,UID,CID,ADR,STA, etc.)\n - Call the _SxW power methods on behalf of a device object\n - Determine if a device is a PCI root bridge\n - Change the ACPI_BUFFER parameter to ACPI_DEVICE_INFO.\nThese changes will require an update to all callers of this interface.\nSee the ACPICA Programmer Reference for details.\n\nAlso, update all invocations of acpi_get_object_info interface\n\nSigned-off-by: Bob Moore \u003crobert.moore@intel.com\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "94f81a47c4a7a2d7a16fcfdd6d81da381732c101",
      "tree": "79bf6bfaa9f53127bacde65233b47c959fddfbee",
      "parents": [
        "d25f14389a65c7f95512b01415d8d4a8d62855ab"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Mon Jul 27 12:06:46 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Aug 07 10:36:27 2009 -0700"
      },
      "message": "PCI hotplug: SGI hotplug: do not use hotplug_slot_attr\n\nBy the pci slot changes, callbacks of attributes under slot directory\n(/sys/bus/pci/slots) had been changed to get the pointer to struct\npci_slot instead of struct hotplug_slot. So the path_show() that\nassumes the parameter is a pointer to struct hotplug_slot seems\nbroken.\n\nTested-by: Mike Habeck \u003chabeck@sgi.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d25f14389a65c7f95512b01415d8d4a8d62855ab",
      "tree": "45565d54d8ab34a7065405c651b17ae4552dc7d0",
      "parents": [
        "90bc1a658a53f8832ee799685703977a450e5af9"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Mon Jul 27 12:05:38 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Aug 07 10:36:26 2009 -0700"
      },
      "message": "PCI hotplug: SGI hotplug: fix build failure\n\nThe commit bd3d99c17039fd05a29587db3f4a180c48da115a (\"PCI: Remove\nuntested Electromechanical Interlock (EMI) support in pciehp.\"), which\nremoves the definition of \"struct hotplug_slot_attr\", broke SGI\nhotplug driver. By this commit, we get the following compile error.\n\ndrivers/pci/hotplug/sgi_hotplug.c:106: error: variable \u0027sn_slot_path_attr\u0027 has initializer but incomplete type\ndrivers/pci/hotplug/sgi_hotplug.c:106: error: unknown field \u0027attr\u0027 specified in initializer\ndrivers/pci/hotplug/sgi_hotplug.c:106: error: extra brace group at end of initializer\ndrivers/pci/hotplug/sgi_hotplug.c:106: error: (near initialization for \u0027sn_slot_path_attr\u0027)\ndrivers/pci/hotplug/sgi_hotplug.c:106: warning: excess elements in struct initializer\ndrivers/pci/hotplug/sgi_hotplug.c:106: warning: (near initialization for \u0027sn_slot_path_attr\u0027)\ndrivers/pci/hotplug/sgi_hotplug.c:106: error: unknown field \u0027show\u0027 specified in initializer\ndrivers/pci/hotplug/sgi_hotplug.c:106: warning: excess elements in struct initializer\ndrivers/pci/hotplug/sgi_hotplug.c:106: warning: (near initialization for \u0027sn_slot_path_attr\u0027)\ndrivers/pci/hotplug/sgi_hotplug.c: In function \u0027sn_hp_destroy\u0027:\ndrivers/pci/hotplug/sgi_hotplug.c:203: error: invalid use of undefined type \u0027struct hotplug_slot_attribute\u0027\ndrivers/pci/hotplug/sgi_hotplug.c: In function \u0027sn_hotplug_slot_register\u0027:\ndrivers/pci/hotplug/sgi_hotplug.c:655: error: invalid use of undefined type \u0027struct hotplug_slot_attribute\u0027\n\nThis patch fixes this regression by adding the definition of struct\nhotplug_slot_attr into sgi_hotplug.c.\n\nTested-by: Mike Habeck \u003chabeck@sgi.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "405f55712dfe464b3240d7816cc4fe4174831be2",
      "tree": "96c425ea7fa8b31058b8f83a433c5e5265c8ebc7",
      "parents": [
        "f9fabcb58a6d26d6efde842d1703ac7cfa9427b6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Jul 11 22:08:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:22:34 2009 -0700"
      },
      "message": "headers: smp_lock.h redux\n\n* Remove smp_lock.h from files which don\u0027t need it (including some headers!)\n* Add smp_lock.h to files which do need it\n* Make smp_lock.h include conditional in hardirq.h\n  It\u0027s needed only for one kernel_locked() usage which is under CONFIG_PREEMPT\n\n  This will make hardirq.h inclusion cheaper for every PREEMPT\u003dn config\n  (which includes allmodconfig/allyesconfig, BTW)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "503998ca4a295f7da233689850ba4b9d13cf41e7",
      "tree": "ddd892dac5a3a6fa2fb15f20c137a6d8872806e9",
      "parents": [
        "654b75e044119bf8e7d773bce41ea039281bbfbe"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Jun 24 09:18:14 2009 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jun 29 12:13:56 2009 -0700"
      },
      "message": "PCI: fix kernel-doc warnings\n\nAdd documentation for missing parameters in PCI hotplug code.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "fbe8cddd2d85979d273d7937a2b8a47498694d91",
      "tree": "2ae3253bfd89337583d36afd783145786ffa531e",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1",
        "e86435eb91b2bff114c5a02e46e16ce21b647ebe",
        "7fe2a6c275a5bcec52fb3ef643daaf8265b7af0d",
        "0705495d9010048e293013d9d129cf723363a0a8",
        "35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2",
        "152a4e630f7ffdd7ff64427c4ba488dc0bce76af",
        "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
        "c8d72a5e76988140bfdfd8722f2228d94e7fa10f",
        "7a04b8491a077471a34938b8ca060c37220953be",
        "ee1ca48fae7e575d5e399d4fdcfe0afc1212a64c",
        "9eccbc2f67efd0d19c47f40182abf2965c287add",
        "7e275cc4e8e20f82740bf40ae2f5695e9e35ff09",
        "7b768f07dce463a054c9dd84862d15ccc3d2b712",
        "8cb24c8fd70ea8431744de1ca0ca34ab45fbbdaa",
        "113b3a2b901573961509e81a28e9546cf9defef0",
        "d73772474f6ebbacbe820c31c0fa1cffa7160246",
        "056c308d3e4859334b519033d62ef050f0e0e261",
        "871043bc463e7d191e7b5b00436a8852921dd833"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "message": "Merge branches \u0027acerhdf\u0027, \u0027acpi-pci-bind\u0027, \u0027bjorn-pci-root\u0027, \u0027bugzilla-12904\u0027, \u0027bugzilla-13121\u0027, \u0027bugzilla-13396\u0027, \u0027bugzilla-13533\u0027, \u0027bugzilla-13612\u0027, \u0027c3_lock\u0027, \u0027hid-cleanups\u0027, \u0027misc-2.6.31\u0027, \u0027pdc-leak-fix\u0027, \u0027pnpacpi\u0027, \u0027power_nocheck\u0027, \u0027thinkpad_acpi\u0027, \u0027video\u0027 and \u0027wmi\u0027 into release\n"
    },
    {
      "commit": "59ef7a83f1127038a433464597df02e2dc9540e7",
      "tree": "725d262fc2e68eb9c592d76265f878cec73f8f2d",
      "parents": [
        "5165aece0efac6574fc3e32b6f1c2a964820d1c6",
        "2af5066f664cb011cf17d2e4414491fe24597e07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)\n  PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write\n  PCI: Fix the NIU MSI-X problem in a better way\n  PCI ASPM: remove get_root_port_link\n  PCI ASPM: cleanup pcie_aspm_sanity_check\n  PCI ASPM: remove has_switch field\n  PCI ASPM: cleanup calc_Lx_latency\n  PCI ASPM: cleanup pcie_aspm_get_cap_device\n  PCI ASPM: cleanup clkpm checks\n  PCI ASPM: cleanup __pcie_aspm_check_state_one\n  PCI ASPM: cleanup initialization\n  PCI ASPM: cleanup change input argument of aspm functions\n  PCI ASPM: cleanup misc in struct pcie_link_state\n  PCI ASPM: cleanup clkpm state in struct pcie_link_state\n  PCI ASPM: cleanup latency field in struct pcie_link_state\n  PCI ASPM: cleanup aspm state field in struct pcie_link_state\n  PCI ASPM: fix typo in struct pcie_link_state\n  PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS\n  PCI: remove redundant __msi_set_enable()\n  PCI PM: consistently use type bool for wake enable variable\n  x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded\n  ...\n"
    },
    {
      "commit": "268a03a42d3377d5fb41e6e7cbdec4e0b65cab2e",
      "tree": "3d94d3a53255fc1acc920f64a85445dbef35f06c",
      "parents": [
        "110828c9cdce6e8ec68479ced4ca0bdc1135bb91"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Wed Jun 17 19:03:57 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 18 13:57:24 2009 -0700"
      },
      "message": "PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS\n\nThere is no way to interact with a physical PCI slot without\nsysfs, so encode the dependency and prevent this build error:\n\n\tdrivers/pci/slot.c: In function \u0027pci_hp_create_module_link\u0027:\n\tdrivers/pci/slot.c:327: error: \u0027module_kset\u0027 undeclared\n\nThis patch _should_ make pci-sysfs.o depend on CONFIG_SYSFS too,\nbut we cannot (yet) because the PCI core merrily assumes the\nexistence of sysfs:\n\n\tdrivers/built-in.o: In function `pci_bus_add_device\u0027:\n\tdrivers/pci/bus.c:89: undefined reference to `pci_create_sysfs_dev_files\u0027\n\tdrivers/built-in.o: In function `pci_stop_dev\u0027:\n\tdrivers/pci/remove.c:24: undefined reference to `pci_remove_sysfs_dev_files\u0027\n\nSo do the minimal bit for now and figure out how to untangle it\nlater.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nFix-suggested-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d6aa484c1c0cd39ff3a42f4050b55d2a5b285ef5",
      "tree": "0ed1b14e195fcdf460c2ab64893a8105495cc262",
      "parents": [
        "97719a8726fe8d3ea12a85fbf4f514a915ba30ec"
      ],
      "author": {
        "name": "Alexander Chiang",
        "email": "achiang@hp.com",
        "time": "Wed Jun 10 19:55:50 2009 +0000"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 17 23:32:00 2009 -0400"
      },
      "message": "PCI Hotplug: acpiphp: convert to acpi_get_pci_dev\n\nNow that acpi_get_pci_dev is available, let\u0027s use it instead of\nacpi_get_pci_id.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "275582031f9b3597a1b973f3ff617adfe639faa2",
      "tree": "7f4e2c43709758108042e5dcf9b89d756e5bf8e5",
      "parents": [
        "ce597bb42aa84bc73db80509b7c37e7fbc0b75c4"
      ],
      "author": {
        "name": "Alexander Chiang",
        "email": "achiang@hp.com",
        "time": "Wed Jun 10 19:55:14 2009 +0000"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 17 23:22:15 2009 -0400"
      },
      "message": "ACPI: Introduce acpi_is_root_bridge()\n\nReturns whether an ACPI CA node is a PCI root bridge or not.\n\nThis API is generically useful, and shouldn\u0027t just be a hotplug function.\n\nThe implementation becomes much simpler as well.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a6c0d5c6ebb3d988b1f18a1612b5188f3f555637",
      "tree": "a2053da4e1db2604b28d41b17e9315a17889eb02",
      "parents": [
        "c825bc94c8c1908750ab20413eb639c6be029e2d"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Jun 16 11:02:02 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 16 14:30:12 2009 -0700"
      },
      "message": "PCI hotplug: remove redundant .owner initializations\n\nThe \"owner\" field in struct hotplug_slot_ops is initialized by PCI\nhotplug core. So each hotplug controller driver doesn\u0027t need to\ninitialize it.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "c825bc94c8c1908750ab20413eb639c6be029e2d",
      "tree": "6e5800fe52e0f94f42fdcd4c327b8cfaf803978a",
      "parents": [
        "498a8faf2c7eb974f70b7c5a60a31f0d48c35d44"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Jun 16 11:01:25 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 16 14:30:11 2009 -0700"
      },
      "message": "PCI hotplug: create symlink to hotplug driver module\n\nCreate symbolic link to hotplug driver module in the PCI slot\ndirectory (/sys/bus/pci/slots/\u003cSLOT#\u003e). In the past, we need to load\nhotplug drivers one by one to identify the hotplug driver that handles\nthe slot, and it was very inconvenient especially for trouble shooting.\nWith this change, we can easily identify the hotplug driver.\n\nSigned-off-by: Taku Izumi \u003cizumi.taku@jp.fujitsu.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "498a8faf2c7eb974f70b7c5a60a31f0d48c35d44",
      "tree": "b7703de6971327eacbb5471bb251a05b9c3f56ea",
      "parents": [
        "bd3d99c17039fd05a29587db3f4a180c48da115a"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Jun 16 11:00:47 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 16 14:30:11 2009 -0700"
      },
      "message": "PCI hotplug: fix return value of has_foo() functions\n\nCurrent has_foo() functions in pci_hotplug_core.c returns 0 if the\n\"foo\" property is true. It would cause misunderstanding. In addition,\nthe error code of those functions is never checked, so this patch\nchanges those functions\u0027 error code to \u0027bool\u0027 and return true if the\nproperty \"foo\" is true.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReviewed-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bd3d99c17039fd05a29587db3f4a180c48da115a",
      "tree": "9eb211ae93977297f56f6e09c628de16d26f1bdb",
      "parents": [
        "1298307736a5882352418b4dc7c65442ab3b8bd4"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Jun 02 13:52:26 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 16 14:30:10 2009 -0700"
      },
      "message": "PCI: Remove untested Electromechanical Interlock (EMI) support in pciehp.\n\nThe EMI support in pciehp is obviously broken. It is implemented using\nstruct hotplug_slot_attribute, but sysfs_ops for pci_slot_ktype is NOT\nfor struct hotplug_slot_attribute, but for struct pci_slot_attribute.\nThis bug had been there for a long time, maybe it was introduced when\nPCI slot framework was introduced. The reason why this bug didn\u0027t\ncause any problem is maybe the EMI support is not tested at all\nbecause of lack of test environment.\n\nAs described above, the EMI support in pciehp seems not to be tested\nat all. So this patch removes EMI support from pciehp, instead of\nfixing the bug.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "db5ed9beabc0a2084ab0e0cc46bf911b8bf16fa8",
      "tree": "d36ea661685c094a4674489365068dd0c0cd16dc",
      "parents": [
        "ff2f5ff0cf224780c3bd035d3e6ff4a30fcacae7"
      ],
      "author": {
        "name": "Peter Huewe",
        "email": "peterhuewe@gmx.de",
        "time": "Sat Jun 06 14:58:56 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:51 2009 +0200"
      },
      "message": "trivial: pci hotplug: adding __init/__exit macros to sgi_hotplug\n\nTrivial patch which adds the __init and __exit macros to the module_init /\nmodule_exit functions from drivers/pci/hotplug/sgi_hotplug.c\nlinux version 2.6.30-rc8\n\nSigned-off-by: Peter Huewe \u003cpeterhuewe@gmx.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "12a9da0fcb147b46de33bb919b1de2bb92c9e2a9",
      "tree": "b5e2f6c019f42f13e263110255fd2184963b1a48",
      "parents": [
        "6d1e87daeeba864a18535b7f3aed0e65f5f52275"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:24:17 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:16 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: don\u0027t use pci_find_slot()\n\nConvert uses of pci_find_slot to modern API.\n\nIn the conversion sites, we end up calling pci_dev_put() right away.\n\nThis may seem like it misses the entire point of doing something like\npci_get_bus_and_slot(), since we drop the reference so soon, but it turns\nout we don\u0027t actually do much with the returned pci_dev.\n\nI plan on untangling cpqphp further, but clearly cpqphp never worried too\nmuch about a properly refcounted pci_dev anyway. For now, this conversion\nseems reasonable, as it gets rid of the last in-tree caller of pci_find_slot.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6d1e87daeeba864a18535b7f3aed0e65f5f52275",
      "tree": "f96735aa840ce16f161a365c9c8cf565b583ecf0",
      "parents": [
        "e3265ea364c7ed5accc9955f8b805c380149870f"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:24:12 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:15 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: constify slot_name()\n\nEliminate this warning:\n\twarning: return discards qualifiers from pointer target type\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e3265ea364c7ed5accc9955f8b805c380149870f",
      "tree": "7c14d6c1f51a8094dce94bf949432ed33eb20aa6",
      "parents": [
        "b019ee679afde950f2d01b1af0530453aa60af3f"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:24:07 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:15 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: eliminate dead code - PCI_ScanBusNonBridge\n\nI have no clue what the original intent here was, but the code as\nwritten is useless.\n\nThe old dbg() statement above the old callsite might lead one to think\nthat at one point, there was supposed to be some recursion, but any\nsense of sanity here has been lost to the ravages of time.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b019ee679afde950f2d01b1af0530453aa60af3f",
      "tree": "d6f2cea2323cbd0b8b403ab59eec9f527a0ab026",
      "parents": [
        "1d2e8b1c58ef96b8834b139caf4357effedcb5ab"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:24:02 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:14 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: clean up accesses to pcibios_get_irq_routing_table()\n\nInstead of making multiple calls to pcibios_get_irq_routing_table, let\u0027s\njust do it once and save the answer.\n\nThe reason we were making multiple calls is because we liked to calculate\nits length and perform some loop over it. Instead of open-coding the length\ncalculation every time, provide it in an inline helper function.\n\nFinally, since pci_print_IRQ_route() is used only for debug, let\u0027s only\ndo it when cpqhp_debug is set.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1d2e8b1c58ef96b8834b139caf4357effedcb5ab",
      "tree": "1531d3175f6b01172a3ea292f3c5d91be5049b04",
      "parents": [
        "4aabb58e1f544e97dbb97d0ce29bdfc9108f2f2c"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:57 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:13 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: refactor cpqhp_save_config\n\nHandle an empty slot at the top of the loop, and continue early.\n\nThis allows us to un-indent the rest of the function by one level.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4aabb58e1f544e97dbb97d0ce29bdfc9108f2f2c",
      "tree": "2f8a5f6251ad303761e3241f0bf23e41a297031a",
      "parents": [
        "de86ae16d55a23315cdf1dae68df9de55312cf25"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:52 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:13 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: style cleanups\n\nClean up style, whitespace in cpqphp_pci.c\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "de86ae16d55a23315cdf1dae68df9de55312cf25",
      "tree": "740a8a9134c201c628750c70266d318b05bd4bde",
      "parents": [
        "1d3ecf1376bf22be57c6138e7cdf425c6027b115"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:46 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:12 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: refactor cpqphp_save_slot_config\n\nCheck for an empty slot, and return early if so.\n\nThis allows us to un-indent the rest of the function by one level.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1d3ecf1376bf22be57c6138e7cdf425c6027b115",
      "tree": "9eb81bb3a16615b0a0c720a5a78eb46f5098885d",
      "parents": [
        "867556fe740d0d29a05fce99d2d960625077ed45"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:41 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:11 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: clean up cpqphp_ctrl.c\n\nStyle and whitespace cleanups, no functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "867556fe740d0d29a05fce99d2d960625077ed45",
      "tree": "7e8887ec31f59ea43c147e31290281640947f35c",
      "parents": [
        "04225fe7e6877493765b9cfa3092524e21e020d7"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:36 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:11 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: refactor cpqhp_probe\n\nApply DeMorgan\u0027s theorem:\n\n\tif ((pdev-\u003erevision \u003e 2) || (vendor_id \u003d\u003d PCI_VENDOR_ID_INTEL))\n\nturns into\n\n\tif ((pdev-\u003erevision \u003c\u003d 2) \u0026\u0026 (vendor_id !\u003d PCI_VENDOR_ID_INTEL))\n\nNow we can bail out early from the function if the controller is not\nsupported.\n\nThis allows us to un-indent the remainder of the function quite a bit and\nmake it much more readable.\n\nFix up some extra braces, and un-indent the \u0027case\u0027 labels in the switch\nstatement as per CodingStyle.\n\nNo functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "04225fe7e6877493765b9cfa3092524e21e020d7",
      "tree": "4c4acdcc30c454d121e1ad041a121ffda1f2642b",
      "parents": [
        "b4d897a48d451db0ab6a4ebf8c28eb314eba0280"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:31 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:10 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: eliminate stray braces\n\nClean up style and eliminate superfluous braces and parens.\n\nNo functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b4d897a48d451db0ab6a4ebf8c28eb314eba0280",
      "tree": "9a194e33c272dce89e386c6d9210f32c68733e18",
      "parents": [
        "86a58023e4078a843f8ca8a9b6fa23542d881f99"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:26 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:09 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: remove useless prototypes in cpqphp_core.c\n\nImpact: refactor\n\nRefactor code to follow convention more closely and eliminate the need\nfor some useless prototypes.\n\nNo functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "86a58023e4078a843f8ca8a9b6fa23542d881f99",
      "tree": "61db2563bf96253b5b70e50c86d24100814c7f9e",
      "parents": [
        "427438c61b0083a60bb953cb36cfdc5841f0bb03"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:21 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:09 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: obey 80 column convention in cpqphp.h\n\nClean up cpqphp.h to follow 80 column convention.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "427438c61b0083a60bb953cb36cfdc5841f0bb03",
      "tree": "4583b0f23eed091006324bc1f3f61ed7fcd8a7ac",
      "parents": [
        "861fefbf550d41e7a4f44584f3ec35977fa08bf1"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:16 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:08 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: fix comment style\n\nFix up comments from C++ to C-style, wrapping if necessary, etc.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "861fefbf550d41e7a4f44584f3ec35977fa08bf1",
      "tree": "e7fd059f852d225f5270bd5ef0a367eab06a6a8f",
      "parents": [
        "d09ee9687e027fc7d2c6b95daf05a8ef3ff06340"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Mar 31 09:23:11 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:07 2009 -0700"
      },
      "message": "PCI Hotplug: cpqphp: stray whitespace cleanups\n\nClean up all stray whitespace issues, such as trailing whitespace,\nspaces before tabs, etc. and whatever else vim\u0027s c_space_errors\nhighlights in red.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "64f039d3d7f574943165b1afb72ee25caa1a9a91",
      "tree": "54e3173953eb0aebc3f79e12470df2d57dcdbfa3",
      "parents": [
        "ad4efa359dcded8f76c94768f9deb1f79f950090"
      ],
      "author": {
        "name": "akpm@linux-foundation.org",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Apr 15 14:24:08 2009 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 11 12:04:05 2009 -0700"
      },
      "message": "PCI: ibmphp_core.c: fix warning due to missing module_exit()\n\ndrivers/pci/hotplug/ibmphp_core.c:1414: warning: `ibmphp_exit\u0027 defined but not used\n\nSigned-off-by: Zhenwen Xu \u003chelight.xu@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3d58f48ba05caed9118bce62b3047f8683438835",
      "tree": "94c911034f0e14ded73d3e9e6e9f8e22b6cad822",
      "parents": [
        "abfe0af9813153bae8c85d9bac966bafcb8ddab1",
        "d9244b5d2fbfe9fa540024b410047af13ceec90f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 01 21:06:21 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 01 21:06:21 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/numa\n\nConflicts:\n\tarch/mips/sibyte/bcm1480/irq.c\n\tarch/mips/sibyte/sb1250/irq.c\n\nMerge reason: we gathered a few conflicts plus update to latest upstream fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9d911d7903926a65ef49ec671bacd86bcee5eb51",
      "tree": "b41ef12ea20ae6a040fe1373a958befa07d434db",
      "parents": [
        "b3bad72e494fb2ff0c81be4ca2ddb94adf6a47c2"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Thu May 21 16:21:15 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed May 27 02:04:24 2009 -0700"
      },
      "message": "PCI Hotplug: acpiphp: don\u0027t store a pci_dev in acpiphp_func\n\nAn oops can occur if a user attempts to use both PCI logical\nhotplug and the ACPI physical hotplug driver (acpiphp) in this\nsequence, where $slot/address \u003d\u003d $device.\n\nIn other words, if acpiphp has claimed a PCI device, and that\ndevice is logically removed, then acpiphp may oops when it\nattempts to access it again.\n\n\t# echo 1 \u003e /sys/bus/pci/devices/$device/remove\n\t# echo 0 \u003e /sys/bus/pci/slots/$slot/power\n\nUnable to handle kernel NULL pointer dereference (address 0000000000000000)\nCall Trace:\n [\u003ca000000100016390\u003e] show_stack+0x50/0xa0\n [\u003ca000000100016c60\u003e] show_regs+0x820/0x860\n [\u003ca00000010003b390\u003e] die+0x190/0x2a0\n [\u003ca000000100066a40\u003e] ia64_do_page_fault+0x8e0/0xa40\n [\u003ca00000010000c7a0\u003e] ia64_native_leave_kernel+0x0/0x270\n [\u003ca0000001003b2660\u003e] pci_remove_bus_device+0x120/0x260\n [\u003ca0000002060549f0\u003e] acpiphp_disable_slot+0x410/0x540 [acpiphp]\n [\u003ca0000002060505c0\u003e] disable_slot+0xc0/0x120 [acpiphp]\n [\u003ca0000002040d21c0\u003e] power_write_file+0x1e0/0x2a0 [pci_hotplug]\n [\u003ca0000001003bb820\u003e] pci_slot_attr_store+0x60/0xa0\n [\u003ca000000100240f70\u003e] sysfs_write_file+0x230/0x2c0\n [\u003ca000000100195750\u003e] vfs_write+0x190/0x2e0\n [\u003ca0000001001961a0\u003e] sys_write+0x80/0x100\n [\u003ca00000010000c600\u003e] ia64_ret_from_syscall+0x0/0x20\n [\u003ca000000000010720\u003e] __kernel_syscall_via_break+0x0/0x20\n\nThe root cause of this oops is that the logical remove (\"echo 1 \u003e\n/sys/bus/pci/devices/$device/remove\") destroyed the pci_dev. The\npci_dev struct itself wasn\u0027t deallocated because acpiphp kept a\nreference, but some of its fields became invalid.\n\nacpiphp doesn\u0027t have any real reason to keep a pointer to a\npci_dev around. It can always derive it using pci_get_slot().\n\nIf a logical remove destroys the pci_dev, acpiphp won\u0027t find it\nand is thus prevented from causing mischief.\n\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReported-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e5198075c67a22ec9a09565b1ce88d3d3f5ba855",
      "tree": "3d4ea0efd8575e677509b022e649c62d4786ed55",
      "parents": [
        "b5710ce92a8cf8e3fc0ffc230cfdbfa23463f1c8"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri May 15 13:05:16 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 08:38:55 2009 +0200"
      },
      "message": "x86, apic: introduce io_apic_irq_attr\n\naccording to Ingo, io_apic irq-setup related functions have too many\nparameters with a repetitive signature.\n\nSo reduce related funcs to get less params by passing a pointer\nto a newly defined io_apic_irq_attr structure.\n\nv2: io_apic_irq \u003d\u003d\u003e irq_attr\n    triggering \u003d\u003d\u003e trigger\n\nv3: add set_io_apic_irq_attr\n\n[ Impact: cleanup ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nLKML-Reference: \u003c4A08ACD3.2070401@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5710ce92a8cf8e3fc0ffc230cfdbfa23463f1c8",
      "tree": "c337c5b1808f5fe99496972eb90ef0aff2ac77e1",
      "parents": [
        "4797f6b021a3fa399942245d07a1feb30df81bb8"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Tue May 12 18:51:28 2009 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 12 17:04:02 2009 +0200"
      },
      "message": "x86/pci: add 4 more return parameters to IO_APIC_get_PCI_irq_vector(), fix\n\nFix trivial typo in the drivers/pci/hotplug/ibmphp_core.c changes.\n\n[ Impact: build fix ]\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCC: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: eswierk@aristanetworks.com\nLKML-Reference: \u003c20090512145128.GA10220@lenovo\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e20c06fd6950265a899edd96a02dc2e6ae2d1ce5",
      "tree": "851deab98ff271debe6efb76443fb5fdc3d0be0c",
      "parents": [
        "bdfe8ac153546537ed24de69610ea781a734f785"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed May 06 10:08:22 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 11 10:35:09 2009 +0200"
      },
      "message": "x86/pci: add 4 more return parameters to IO_APIC_get_PCI_irq_vector()\n\nTo prepare those params for pcibios_irq_enable() to call setup_io_apic_routing().\n\n[ Impact: extend function call API to prepare for new functionality ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c4A01C406.2040303@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d4a4b25ddc3e864d3a562c024bebdc922118854",
      "tree": "9f0c9cdf4c14487517be83e82596a83616d905af",
      "parents": [
        "c2ac7cdc6707a8a3fc5cdaebb65cb724ba8ecdef"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Mon Mar 30 10:50:14 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Apr 06 11:30:26 2009 -0700"
      },
      "message": "PCI Hotplug: acpiphp: grab refcount on p2p subordinate bus\n\nIf a logical hot unplug (remove) is performed on a bridge claimed\nby acpiphp and then acpiphp is unloaded, we will encounter an oops.\n\nThis is because acpiphp will access the bridge\u0027s subordinate bus,\nwhich was released by the user\u0027s prior hot unplug.\n\nThe solution is to grab a reference on the subordinate PCI bus.\nThis will prevent the bus from release until acpiphp is unloaded.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReported-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7bb2cb3e90dc49be1cd14956c155451499c857a7",
      "tree": "a3c2c0bcbb08db9b3026f8b37fb50b7ce419d91f",
      "parents": [
        "7ae0567fd3f4f51d55c4c638ecc6836347992de2"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Mar 26 18:34:33 2009 +1100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Mar 26 16:00:34 2009 -0700"
      },
      "message": "PCI: update fakephp for bus_id removal\n\nGet rid of a new use of bus_id that snuck in.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8ffd25454738fb9ed76ee18cc0f180fb0b360401",
      "tree": "2e449e43c9df2c7b22968ce8af6535b5983640e2",
      "parents": [
        "83dbf66f04b96e65c6c18436c16d40f9cf8630aa"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Fri Mar 20 14:56:51 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 14:59:37 2009 -0700"
      },
      "message": "PCI Hotplug: rename legacy_fakephp to fakephp\n\nWe wanted to replace fakephp wholesale, so rename legacy_fakephp back\nto fakephp. Yes, this is a silly commit, but it produces a much easier\npatch to read and review.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "83dbf66f04b96e65c6c18436c16d40f9cf8630aa",
      "tree": "0c3ffcc7d34aea8cd8983f3863bae67ef7f72029",
      "parents": [
        "738a6396c223b486304dda778119dbbca563f019"
      ],
      "author": {
        "name": "Trent Piepho",
        "email": "xyzzy@speakeasy.org",
        "time": "Fri Mar 20 14:56:46 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 14:59:25 2009 -0700"
      },
      "message": "PCI Hotplug: restore fakephp interface with complete reimplementation\n\nA complete re-implementation of fakephp is necessary if it is to\npresent its former interface (pre-2.6.27, when it broke). The\nreason is that PCI hotplug drivers call pci_hp_register(), which\nenforces the rule that only one /sys/bus/pci/slots/ file may be\ncreated per physical slot.\n\nThe change breaks the old fakephp\u0027s assumption that it could\ncreate a file per function. So we re-implement fakephp to avoid\nusing the standard PCI hotplug API so that we can restore the old\nfakephp user interface.\n\nIt puts entries in /sys/bus/pci/slots with the names of all PCI\ndevices/functions, exactly symmetrical to what is shown in\n/sys/bus/pci/devices. Each slots/ entry has a \"power\" attribute,\nwhich works the same way as the fakephp driver\u0027s power attribute\nhas worked.\n\nThere are a few improvements over old fakephp, which couldn\u0027t handle\nPCI devices being added or removed via a means outside of\nfakephp\u0027s knowledge.  If a device was added another way, old fakephp\ndidn\u0027t notice and didn\u0027t create the fake slot for it.  If a\ndevice was removed another way, old fakephp didn\u0027t delete the fake\nslot for it (and accessing the stale slot caused an oops).\n\nThe new implementation overcomes these limitations. As a\nconsequence, removing a bridge with other devices behind it now\nworks as well, which is something else old fakephp couldn\u0027t do\npreviously.\n\nThis duplicates a tiny bit of the code in the PCI core that does\nthis same function.  Re-using that code ends up being more\ncomplex than duplicating it, and it makes code in the PCI core\nmore ugly just to support this legacy fakephp interface\ncompatibility layer.\n\nReviewed-by: James Cameron \u003cqz@hp.com\u003e\nSigned-off-by: Trent Piepho \u003cxyzzy@speakeasy.org\u003e\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3ed4fd96b3188406ac5357d9290bcffa08c65cf6",
      "tree": "1e48401b56c35554e84c8d627c6c04e83a999a9e",
      "parents": [
        "9dd90cafa7a712d283e2e0c625b022e19f746762"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Fri Mar 20 14:56:25 2009 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 14:57:44 2009 -0700"
      },
      "message": "PCI: Introduce pci_rescan_bus()\n\nThis API is used by the PCI core to rescan a bus and rediscover\nnewly added devices.\n\nOver time, it is expected that the various PCI hotplug drivers\nwill migrate to this interface and away from the old\npci_do_scan_bus() interface.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d391f00f0e7fb6d883c6724b31a1799e19a584c5",
      "tree": "02d81d24488963f97c6d4d2e102ead27fcf78ae5",
      "parents": [
        "267efd7eec5eca62f32f8c9bc1721b578d5da963"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Feb 17 14:13:59 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 10:48:02 2009 -0700"
      },
      "message": "PCI hotplug: fix wrong assumption in acpi_get_hp_hw_control_from_firmware\n\nCurrent acpi_get_hp_hw_control_from_firmware() has a assumption that\npci_bus-\u003eself is NULL on a PCI root bus. But it might not be true on\nsome platforms. Because of this wrong assumption, current\nacpi_get_hp_hw_control_from_firmware() might cause endless loop. We\nmust check pci_bus-\u003eparent instead.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "267efd7eec5eca62f32f8c9bc1721b578d5da963",
      "tree": "3bae75d213470f6b56341b1a6328650299b5784b",
      "parents": [
        "d18690af626b83fef1d1953b9f70e09497060586"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Feb 17 14:13:20 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 10:48:00 2009 -0700"
      },
      "message": "PCI hotplug: fix wrong assumption in acpi_get_hp_params_from_firmware\n\nCurrent acpi_get_hp_params_from_firmware() has a assumption that\npci_bus-\u003eself is NULL on the root pci bus. But it might not true on\nsome platforms. Because of this wrong assumption, current\nacpi_get_hp_params_from_firmware() might cause endless loop. We must\ncheck pci_bus-\u003eparent instead.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3a3c244c9a355105bc193fde873c73727bf87192",
      "tree": "cabffedef7a283c8caa6618e46a57660068cde99",
      "parents": [
        "ae40582e9959cdb7bfe4b918be8e3d19f9511798"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Feb 15 22:32:48 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Mar 20 10:47:49 2009 -0700"
      },
      "message": "PCI: PCIe portdrv: Implement pm object\n\nImplement pm object for the PCI Express port driver in order to use\nthe new power management framework and reduce the code size.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "35e1801ea637810830e653ffe7ff62c7048ae03a",
      "tree": "29d88f25346980250918d3c868444f1d84aa9b52",
      "parents": [
        "9f5404d8ea90bfa4d58a3936e5a3d0d28cecf60f"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Feb 11 21:13:45 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:33 2009 -0700"
      },
      "message": "PCI hotplug: shpchp: fix bus number check to avoid false positive\n\nWith for (busnr \u003d 0; busnr \u003c\u003d end; busnr++) { ... } busnr reaches end + 1\nafter the loop.  So fix the \"no busses available\" check to look for just\nbusnr \u003e end rather than \u003e\u003d.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "9f5404d8ea90bfa4d58a3936e5a3d0d28cecf60f",
      "tree": "59327fd70858e5038b99cebd767d4bae6a7d4594",
      "parents": [
        "63f10f0f6df4e4e860b790d64bebfde85b540b0a"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Mon Feb 09 16:00:04 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:33 2009 -0700"
      },
      "message": "PCI/ACPI: rename pci_osc_control_set()\n\n- Rename pci_osc_control_set() to acpi_pci_osc_control_set() according\n  to the other API names in drivers/acpi/pci_root.c.\n\n- Move _OSC related definitions to include/linux/acpi.h because _OSC\n  related API is implemented in drivers/acpi/pci_root.c now.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReviewed-by: Andrew Patterson \u003candrew.patterson@hp.com\u003e\nTested-by: Andrew Patterson \u003candrew.patterson@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "6a82e21823058eea95325005b79f3b8c9492460f",
      "tree": "c3e9151361f5784d6f12802fa5c1c6ea6b51d87c",
      "parents": [
        "99f0169c17f334a11b0ace91188501c612f3e1e6"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Feb 03 15:06:18 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:30 2009 -0700"
      },
      "message": "PCI: pciehp: make cmd_busy flag one bit\n\nThe cmd_busy field in struct controller takes only two values 0 or\n1. So it should be one bit.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "99f0169c17f334a11b0ace91188501c612f3e1e6",
      "tree": "1dab8a0f010f62611945063abcd6f988dca7bf3e",
      "parents": [
        "81b840cd27e3ee9af67b6e05a4847868f74fce69"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Feb 03 15:06:16 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:29 2009 -0700"
      },
      "message": "PCI: pciehp: enable software notification on empty slots\n\nCurrent pciehp disables software notification of adapter presence\nchanged event and MRL changed event when slot is turned off. Because\nof this, there is no way to detect those events on empty slots in the\ncurrent pciehp implementation.\n\nAccording to the past discussion(*), this behavior was introduced to\nprevent endless loop that could happen if pcie_isr() runs after power\nfault is detected on a certain platform whose stickey power-fault bit\nremains on till the slot is powered on again.\n\n(*) http://sourceforge.net/mailarchive/message.php?msg_id\u003d20051130135409.A14918%40unix-os.sc.intel.com\n\nI think this endless loop can be avoided using one bit flag that\nindicates power fault had been detected, instead of disabling software\nnotification of adapter present changed event and MRL changed event.\n\nWith this patch, we can enable software notification mechanism of\npresence changed and MRL changed event on the empty slots again.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "81b840cd27e3ee9af67b6e05a4847868f74fce69",
      "tree": "35a88cc6fbf67273c61f053fa5375a0a01f3c181",
      "parents": [
        "0b3e7388e3b438500aaa0630879ce536747a47ca"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Feb 03 15:06:13 2009 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:28 2009 -0700"
      },
      "message": "PCI: pciehp: fix possible endless loop in pcie_isr\n\nFix possible endless loop in pcie_isr.\n\nCurrently, pcie_isr() (interrupt service routine of pciehp) can end up in an\nendless loop if the Slot Status register is set again immediately after being\ncleared. According to the past discussion (see below URL) this case can happen\nif the power fault detected bit is set during handling.\n\nhttp://sourceforge.net/mailarchive/message.php?msg_id\u003d20051130135409.A14918%40unix-os.sc.intel.com\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0b3e7388e3b438500aaa0630879ce536747a47ca",
      "tree": "d24efd66fd015ec72dcf4b10bef69b3a27cd9963",
      "parents": [
        "1c35b8e538cb6259accb215099cdb673310cad84"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Feb 08 22:45:24 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:28 2009 -0700"
      },
      "message": "PCI: introduce missing kfree\n\nError handling code following a kmalloc should free the allocated data.\nSince the subsequent code that could provoke an error does not use the\nallocated data, the allocation is just moved below it.\n\nThe semantic match that finds the problem is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nstatement S;\nexpression E;\nidentifier f,l;\nposition p1,p2;\nexpression *ptr !\u003d NULL;\n@@\n\n(\nif ((x@p1 \u003d \\(kmalloc\\|kzalloc\\|kcalloc\\)(...)) \u003d\u003d NULL) S\n|\nx@p1 \u003d \\(kmalloc\\|kzalloc\\|kcalloc\\)(...);\n...\nif (x \u003d\u003d NULL) S\n)\n\u003c... when !\u003d x\n     when !\u003d if (...) { \u003c+...x...+\u003e }\nx-\u003ef \u003d E\n...\u003e\n(\n return \\(0\\|\u003c+...x...+\u003e\\|ptr\\);\n|\n return@p2 ...;\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\n@@\n\nprint \"* file: %s kmalloc %s return %s\" % (p1[0].file,p1[0].line,p2[0].line)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1c35b8e538cb6259accb215099cdb673310cad84",
      "tree": "3050e2b7452c3558543e392fbc4bf4ab76cac308",
      "parents": [
        "2b56313448bb8efad3af19f211d988c8352ac04d"
      ],
      "author": {
        "name": "Frank Seidel",
        "email": "frank@f-seidel.de",
        "time": "Fri Feb 06 10:23:36 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:27 2009 -0700"
      },
      "message": "PCI: add missing KERN_* constants to printks\n\nAccording to kerneljanitors todo list all printk calls (beginning\na new line) should have an according KERN_* constant.\nThose are the missing pieces here for the pci subsystem.\n\nSigned-off-by: Frank Seidel \u003cfrank@f-seidel.de\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a447b772826fde2a3abfd9bb943dee8750994c55",
      "tree": "6d1ed7d0e0d57373a301a71f7426858817ae281d",
      "parents": [
        "22106368c999246c414610dcaacd485e741605b1"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sun Jan 25 23:53:56 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:24 2009 -0700"
      },
      "message": "PCI: struct device - replace bus_id with dev_name(), dev_set_name()\n\nMore dev_set_name conversion.\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "22106368c999246c414610dcaacd485e741605b1",
      "tree": "2c74166b9967118e863012e6c81e03f9c7345bfd",
      "parents": [
        "0516c8bcd25293f438573101c439ce25a18916ad"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 13 14:46:46 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:23 2009 -0700"
      },
      "message": "PCI: PCIe portdrv: Remove struct pcie_port_service_id\n\nThe PCI Express port driver uses \u0027struct pcie_port_service_id\u0027 for\nmatching port service devices and drivers, but this structure\ncontains fields that duplicate information from the port device\nitself (vendor, device, subvendor, subdevice) and fields that are not\nused by any existing port service driver (class, class_mask,\ndrvier_data).  Also, both existing port service drivers (AER and\nPCIe HP) don\u0027t even use the vendor and device fields for device\nmatching.  Therefore \u0027struct pcie_port_service_id\u0027 can be removed\naltogether and the only useful members of it (port_type, service) can\nbe introduced directly into the port service device and port service\ndriver structures.  That simplifies the code quite a bit and reduces\nits size.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0516c8bcd25293f438573101c439ce25a18916ad",
      "tree": "00e0e113810e565c9b234f9528e84b0d061c5413",
      "parents": [
        "87d2e2ecf6026efa64b01f7f71802b20da736d35"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 13 14:44:19 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Thu Mar 19 19:29:23 2009 -0700"
      },
      "message": "PCI: PCIe portdrv: Simplily probe callback of service drivers\n\nThe second argument of the -\u003eprobe() callback in\nstruct pcie_port_service_driver is unnecessary and never used.\nRemove it.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3f3b902ed8147c42a4a9764014c758e6b3f42f51",
      "tree": "15adec632617b9e8844a2a73a087ca6ecf33b1a7",
      "parents": [
        "cb4cb4ac7338c28b047760be187355ed9c783e72"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Fri Mar 06 14:39:14 2009 +1100"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Mar 12 15:10:02 2009 -0400"
      },
      "message": "powerpc/pseries: The RPA PCI hotplug driver depends on EEH\n\nThe RPA PCI hotplug driver calls EEH routines, so should depend on\nEEH. Also PPC_PSERIES implies PPC64, so remove that.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "dbc7e1e567ef8cfc4b792ef6acb51d4ceb15746a",
      "tree": "d1035d012fbd9857888f463e6f418714420e72dd",
      "parents": [
        "1dec6b054dd1fc780e18b815068bf5677409eb2d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Jan 28 19:31:18 2009 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Tue Feb 24 09:36:56 2009 -0800"
      },
      "message": "PCI: pciehp: Handle interrupts that happen during initialization.\n\nMove the enabling of interrupts after all of the data structures\nare setup so that we can safely run the interrupt handler as\nsoon as it is registered.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nTested-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@hobbes.lan\u003e\n"
    },
    {
      "commit": "71a082efc9fdc12068a3cee6cebb1330b00ebeee",
      "tree": "b090119f313f99558269e83bdd0e6d143fa345f2",
      "parents": [
        "bf4162bcf82ebc3258d6bc0ddd6453132abde72d"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg59@srcf.ucam.org",
        "time": "Tue Jan 27 01:03:35 2009 +0000"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jan 27 15:35:51 2009 -0800"
      },
      "message": "PCI hotplug: Change link order of pciehp \u0026 acpiphp\n\nSome hardware exposes PCIE slots in such a way that they can be claimed\nby either the acpiphp or pciehp driver. pciehp is the preferred driver\nif the firmware allows the OS to claim control via the _OSC method so\nshould be loaded first - if it fails to bind (either due to a missing\n_OSC method or the firmware refusing to hand off control) then we can\nfall back to acpiphp or a vendor-specific driver.\n\nThis patch simply changes the link order to ensure that pciehp will be\ninitialised before acpiphp if both are statically built into the kernel.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bf4162bcf82ebc3258d6bc0ddd6453132abde72d",
      "tree": "b426269a7f99566bb2c52384e35f593c4c6b3c02",
      "parents": [
        "bffac3c593eba1f9da3efd0199e49ea6558a40ce"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Tue Nov 25 13:51:44 2008 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jan 27 10:53:24 2009 -0800"
      },
      "message": "PCI hotplug: fakephp: Allocate PCI resources before adding the device\n\nFor PCI devices, pci_bus_assign_resources() must be called to set up the\npci_device-\u003eresource array before pci_bus_add_devices() can be called, else\nattempts to load drivers results in BAR collision errors where there are none.\nThis is not done in fakephp, so devices can be \"unplugged\" but scanning the\nparent bus won\u0027t bring the devices back due to resource unallocation.  Move the\npci_bus_add_device-calling logic into pci_rescan_bus and preface it with a call\nto pci_bus_assign_resources so that we only have to (re)allocate resources once\nper bus where a new device is found.\n\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nAcked-by: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4a4565921aa9255be01921ff8ae339fa7b0a5468",
      "tree": "61fc69b6e2a82947550d6c441b62986c816ad911",
      "parents": [
        "7954d5cf39ee1ce9bb0a4b19fcf1924885a9cad1",
        "c2fdd36b550659f5ac2240d1f5a83ffa1a092289"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 10:13:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 10:13:36 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI hotplug: fix lock imbalance in pciehp\n  PCI PM: Restore standard config registers of all devices early\n  PCI/MSI: bugfix/utilize for msi_capability_init()\n"
    },
    {
      "commit": "c2fdd36b550659f5ac2240d1f5a83ffa1a092289",
      "tree": "670558bb598d185fb1805f09bf5d39da13b03d91",
      "parents": [
        "aa8c6c93747f7b55fa11e1624fec8ca33763a805"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Sat Jan 17 16:23:55 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jan 19 10:55:54 2009 -0800"
      },
      "message": "PCI hotplug: fix lock imbalance in pciehp\n\nset_lock_status omits mutex_unlock in fail path. Add the omitted\nunlock.\n\nAs a result a lockup caused by this can be triggered from userspace\nby writing 1 to /sys/bus/pci/slots/.../lock often enough.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d45e0855488032ea62ec5638fb1dcd47367f8ddb",
      "tree": "801341825d4f3ec51746715e3e29b36e7337caff",
      "parents": [
        "88d998c264722cd6e8fafa42aee191f7d9194960"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jan 15 15:12:27 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 16 15:20:00 2009 -0500"
      },
      "message": "ACPI PCI hotplug: harden against panic regression\n\nACPI hotplug panic with current git head\nhttp://lkml.org/lkml/2009/1/10/136\n\nRather than reverting the entire commit that causes the crash:\ne8c331e963c58b83db24b7d0e39e8c07f687dbc6\n\"PCI hotplug: introduce functions for ACPI slot detection\"\n\nsimply harden against it while the changes to\nthe hotplug code on this particularl machine are understood.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b2576e1d4408e134e2188c967b1f28af39cd79d4",
      "tree": "004f3c82faab760f304ce031d6d2f572e7746a50",
      "parents": [
        "3cc8a5f4ba91f67bbdb81a43a99281a26aab8d77",
        "2150edc6c5cf00f7adb54538b9ea2a3e9cedca3f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 09 03:39:43 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 09 03:39:43 2009 -0500"
      },
      "message": "Merge branch \u0027linus\u0027 into release\n"
    },
    {
      "commit": "b8d9cb2a2226118fd71f657c80b06b670a653022",
      "tree": "1f5d4874dfe51ce70203ae8415fa2c2413298e4a",
      "parents": [
        "322162a71bd9fc4edb1b11236e7bc8aa27ccac22"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Dec 21 16:39:37 2008 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:22 2009 -0800"
      },
      "message": "PCI hotplug: remove redundant test in cpq hotplug\n\nfunc is checked not to be NULL a few lines before.\n\nA simplified version of the semantic patch that makes this change is as\nfollows: (http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nexpression E;\nposition p1,p2;\n@@\n\nif (x@p1 \u003d\u003d NULL || ...) { ... when forall\n   return ...; }\n... when !\u003d \\(x\u003dE\\|x--\\|x++\\|--x\\|++x\\|x-\u003dE\\|x+\u003dE\\|x|\u003dE\\|x\u0026\u003dE\\|\u0026x\\)\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n// another path to the test that is not through p1?\n@s exists@\nlocal idexpression r.x;\nposition r.p1,r.p2;\n@@\n\n... when !\u003d x@p1\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n@fix depends on !s@\nposition r.p1,r.p2;\nexpression x,E;\nstatement S1,S2;\n@@\n\n(\n- if ((x@p2 !\u003d NULL) || ...)\n  S1\n|\n- if ((x@p2 \u003d\u003d NULL) \u0026\u0026 ...) S1\n|\n- BUG_ON(x@p2 \u003d\u003d NULL);\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "322162a71bd9fc4edb1b11236e7bc8aa27ccac22",
      "tree": "f5a5ea837934c8af3285157ee53f0d1d6e05cfcf",
      "parents": [
        "67f6533802fd2cc6f5b3c6355ef72bcf636d7fda"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Fri Dec 19 15:19:02 2008 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:22 2009 -0800"
      },
      "message": "PCI: pciehp: cleanup register and field definitions\n\nClean up register definitions related to PCI Express Hot plug.\n\n  - Add register definitions into include/linux/pci_regs.h, and use\n    them instead of pciehp\u0027s locally definied register definitions.\n  - Remove pciehp\u0027s locally defined register definitions\n  - Remove unused register definitions in pciehp.\n  - Some minor cleanups.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "67f6533802fd2cc6f5b3c6355ef72bcf636d7fda",
      "tree": "9fac68e4e3b4f291e92f4f26c4912a94b7a4f358",
      "parents": [
        "46bbdfa44cfc0d352148a0dc33ba9f6db02ccdf0"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Fri Dec 19 15:18:10 2008 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:21 2009 -0800"
      },
      "message": "PCI: pciehp: ignore undefined bit in link status register\n\nBit 10 in Link Status register used to be defined as Training Error in\nthe PCI Express 1.0a specification. But it was removed by Training Error\nECN and is no longer defined. So pciehp must ignore the value read from\nit.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e8c331e963c58b83db24b7d0e39e8c07f687dbc6",
      "tree": "da9e7df2441da952dc11bd732b0171d3170fa8bf",
      "parents": [
        "e046cbd6c05ee859244245d7beeac395cd0057b3"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Dec 17 12:09:12 2008 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:11 2009 -0800"
      },
      "message": "PCI hotplug: introduce functions for ACPI slot detection\n\nSome ACPI related PCI hotplug code can be shared among PCI hotplug\ndrivers. This patch introduces the following functions in\ndrivers/pci/hotplug/acpi_pcihp.c to share the code, and changes\nacpiphp and pciehp to use them.\n\n- int acpi_pci_detect_ejectable(struct pci_bus *pbus)\n  This checks if the specified PCI bus has ejectable slots.\n\n- int acpi_pci_check_ejectable(struct pci_bus *pbus, acpi_handle handle)\n  This checks if the specified handle is ejectable ACPI PCI slot. The\n  \u0027pbus\u0027 parameter is needed to check if \u0027handle\u0027 is PCI related ACPI\n  object.\n\nThis patch also introduces the following inline function in\ninclude/linux/pci-acpi.h, which is useful to get ACPI handle of the\nPCI bridge from struct pci_bus of the bridge\u0027s secondary bus.\n\n- static inline acpi_handle acpi_pci_get_bridge_handle(struct pci_bus *pbus)\n  This returns ACPI handle of the PCI bridge which generates PCI bus\n  specified by \u0027pbus\u0027.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e046cbd6c05ee859244245d7beeac395cd0057b3",
      "tree": "1d1c3f434a77b522af098c54114d4fee7bd96a6e",
      "parents": [
        "c9ffa5a586a97da4d552f89b8f39eea79a63a612"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Dec 17 12:08:15 2008 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:10 2009 -0800"
      },
      "message": "PCI: pciehp: add auto option to pciehp_detect_mode\n\nACPI based hot-pluggable PCIe slot detection logic was added to\nprevent the problem non hot-pluggable PCIe slot was detected as\nhot-pluggable. The slot detection logic can be selected through\n\u0027pciehp_detect_mode\u0027, but it would be better if it is selected\nautomatically.\n\nThis patch adds \u0027auto\u0027 option for \u0027pciehp_detect_mode\u0027. When it is\nspecified, pciehp judges which \u0027acpi\u0027 or \u0027pcie\u0027 should be used. It\nseems that the physical slot number is duplicated among some slots on\nmost of the platforms with the above-mentioned problem. So \u0027auto\u0027 mode\nuses this information to judge which \u0027acpi\u0027 or \u0027pcie\u0027 should be\nused. That is, if duplicated physical slot numbers are detected,\n\u0027acpi\u0027 mode is used. This method is not perfect, but it\u0027s realistic.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "c9ffa5a586a97da4d552f89b8f39eea79a63a612",
      "tree": "47e4a6de7df1c5d41bff61f8bfc81eb464b8d2c6",
      "parents": [
        "873392ca514f87eae39f53b6944caf85b1a047cb"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Dec 17 12:07:38 2008 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jan 07 11:13:10 2009 -0800"
      },
      "message": "PCI: pciehp: add ACPI based slot detection\n\nThere is a problem that some non hot-pluggable PCIe slots are detected\nas hot-pluggable by pciehp on some platforms. The immediate cause of\nthis problem is that hot-plug capable bit in the Slot Capabilities\nregister is set even for non hot-pluggable slots on those platforms.\nIt seems a BIOS/hardware problem, but we need workaround about that.\n\nSome of those platforms define hot-pluggable PCIe slots on ACPI\nnamespace properly, while hot-plug capable bit in the Slot\nCapabilities register is set improperly. So using ACPI namespace\ninformation in pciehp to detect PCIe hot-pluggable slots would be a\nworkaround.\n\nThis patch adds \u0027pciehp_detect_mode\u0027 module option. When \u0027acpi\u0027 is\nspecified, pciehp uses ACPI namespace information to detect PCIe\nhot-pluggable slots.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    }
  ],
  "next": "98d3333a13029ab07ca1d1bfb9bfa138ea76c3c0"
}
