)]}'
{
  "commit": "10a9574756201fbbdd0cac11f370f00d3d02bfa1",
  "tree": "3e2985b5a56e2c5bbc95b1e81e043a2f3ae20f83",
  "parents": [
    "ce15d873d05ebf3bf38579c4e0252140e28f1781"
  ],
  "author": {
    "name": "Jiang Liu",
    "email": "liuj97@gmail.com",
    "time": "Fri Apr 12 05:44:20 2013 +0000"
  },
  "committer": {
    "name": "Bjorn Helgaas",
    "email": "bhelgaas@google.com",
    "time": "Fri Apr 12 15:38:25 2013 -0600"
  },
  "message": "PCI: Add pcibios hooks for adding and removing PCI buses\n\nOn ACPI-based platforms, the pci_slot driver creates PCI slot devices\naccording to information from ACPI tables by registering an ACPI PCI\nsubdriver.  The ACPI PCI subdriver will only be called when creating/\ndestroying PCI root buses, and it won\u0027t be called when hot-plugging\nP2P bridges.  It may cause stale PCI slot devices after hot-removing\na P2P bridge if that bridge has associated PCI slots.  And the acpiphp\ndriver has the same issue too.\n\nThis patch introduces two hook points into the PCI core, which will\nbe invoked when creating/destroying PCI buses for PCI host and P2P\nbridges.  They could be used to setup/destroy platform dependent stuff\nin a unified way, both at boot time and for PCI hotplug operations.\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nSigned-off-by: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nReviewed-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: \"Rafael J. Wysocki\" \u003crafael.j.wysocki@intel.com\u003e\nCc: Toshi Kani \u003ctoshi.kani@hp.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Myron Stowe \u003cmyron.stowe@redhat.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "45c93b39af35faa192e37eeb8338d3c216ff4c87",
      "old_mode": 33188,
      "old_path": "drivers/pci/probe.c",
      "new_id": "43ece5d41d36ca428068ef8b09f01f5956f10a25",
      "new_mode": 33188,
      "new_path": "drivers/pci/probe.c"
    },
    {
      "type": "modify",
      "old_id": "a8318801c092581716b2e5881d0fc31ff2340f53",
      "old_mode": 33188,
      "old_path": "drivers/pci/remove.c",
      "new_id": "8fc54b7327bc02b59af4a6455bcf43bdaf597252",
      "new_mode": 33188,
      "new_path": "drivers/pci/remove.c"
    },
    {
      "type": "modify",
      "old_id": "2461033a798728203f456eff4d6a0099816a7072",
      "old_mode": 33188,
      "old_path": "include/linux/pci.h",
      "new_id": "be9399452133a43cd8bdabf83440d84327eaa034",
      "new_mode": 33188,
      "new_path": "include/linux/pci.h"
    }
  ]
}
