)]}'
{
  "log": [
    {
      "commit": "d73b388459b1ee2e80f8ff9c1916d75640d7d920",
      "tree": "3e4061226f817c5728009f0bcc1d810d0c4a7b37",
      "parents": [
        "5957e33d6aec266659a71cfabcf7cf2c593ad0d2",
        "0f953bf6b4efa0daddb7c418130a9bd3ee97f7ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:29:05 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:29:05 2011 -0800"
      },
      "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:\n  PCI/PM: Report wakeup events before resuming devices\n  PCI/PM: Use pm_wakeup_event() directly for reporting wakeup events\n  PCI: sysfs: Update ROM to include default owner write access\n  x86/PCI: make Broadcom CNB20LE driver EMBEDDED and EXPERIMENTAL\n  x86/PCI: don\u0027t use native Broadcom CNB20LE driver when ACPI is available\n  PCI/ACPI: Request _OSC control once for each root bridge (v3)\n  PCI: enable pci\u003dbfsort by default on future Dell systems\n  PCI/PCIe: Clear Root PME Status bits early during system resume\n  PCI: pci-stub: ignore zero-length id parameters\n  x86/PCI: irq and pci_ids patch for Intel Patsburg\n  PCI: Skip id checking if no id is passed\n  PCI: fix __pci_device_probe kernel-doc warning\n  PCI: make pci_restore_state return void\n  PCI: Disable ASPM if BIOS asks us to\n  PCI: Add mask bit definition for MSI-X table\n  PCI: MSI: Move MSI-X entry definition to pci_regs.h\n\nFix up trivial conflicts in drivers/net/{skge.c,sky2.c} that had in the\nmeantime been converted to not use legacy PCI power management, and thus\nno longer use pci_restore_state() at all (and that caused trivial\nconflicts with the \"make pci_restore_state return void\" patch)\n"
    },
    {
      "commit": "0f953bf6b4efa0daddb7c418130a9bd3ee97f7ed",
      "tree": "4a24901b0ff701e80787e39d87603bdd4b762876",
      "parents": [
        "b6e335aeeb114dccb07eaa09e8b62ff9510cf745"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 29 13:22:08 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:43 2011 -0800"
      },
      "message": "PCI/PM: Report wakeup events before resuming devices\n\nMake wakeup events be reported by the PCI subsystem before attempting to\nresume devices or queuing up runtime resume requests for them, because\nwakeup events should be reported as soon as they have been detected.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b6e335aeeb114dccb07eaa09e8b62ff9510cf745",
      "tree": "f4292a579e594b6c0312e9c34467649cb978aea5",
      "parents": [
        "ff29530e651a3449aea6b0ef4c7048db9e22ef27"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 29 13:21:23 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:43 2011 -0800"
      },
      "message": "PCI/PM: Use pm_wakeup_event() directly for reporting wakeup events\n\nAfter recent changes related to wakeup events pm_wakeup_event()\nautomatically checks if the given device is configured to signal wakeup,\nso pci_wakeup_event() may be a static inline function calling\npm_wakeup_event() directly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ff29530e651a3449aea6b0ef4c7048db9e22ef27",
      "tree": "331a632f3fe03b1a1c97209e42ba2e4972dc5887",
      "parents": [
        "64a5fed6663edcf7e3864ed5534e42e2b9f340c7"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Wed Jan 05 10:26:41 2011 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:42 2011 -0800"
      },
      "message": "PCI: sysfs: Update ROM to include default owner write access\n\nThe PCI sysfs ROM interface requires an enabling write to access the ROM\nimage, but the default file mode is 0400.  The original proposed patch\nadding sysfs ROM support was a true read-only interface, with the\nenabling bit coming in as a feature request.  I suspect it was simply an\noversight that the file mode didn\u0027t get updated to match the API.\n\nAcked-by: Chris Wright \u003cchrisw@redhat.com\u003e\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "415e12b2379239973feab91850b0dce985c6058a",
      "tree": "aa79c7a87fd30ac13ae3fd146aad5a44e854c4bc",
      "parents": [
        "6e8af08dfa40b747002207d3ce8e8b43a050d99f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 07 00:55:09 2011 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:41 2011 -0800"
      },
      "message": "PCI/ACPI: Request _OSC control once for each root bridge (v3)\n\nMove the evaluation of acpi_pci_osc_control_set() (to request control of\nPCI Express native features) into acpi_pci_root_add() to avoid calling\nit many times for the same root complex with the same arguments.\nAdditionally, check if all of the requisite _OSC support bits are set\nbefore calling acpi_pci_osc_control_set() for a given root complex.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d20232\nReported-by: Ozan Caglayan \u003cozan@pardus.org.tr\u003e\nTested-by: Ozan Caglayan \u003cozan@pardus.org.tr\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "94d4c4cd563aeff4d498168f1c8444074160d0e7",
      "tree": "f12b08ef94db4f8510f0bdd97ca89e196ae310e9",
      "parents": [
        "2818ef50c4dc103ce52e12d14ce2dfbde5268120",
        "329620a878cf89184b28500d37fa33cc870a3357"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 12 08:37:35 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 12 08:37:35 2011 -0800"
      },
      "message": "Merge branch \u0027stable/xenbus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\n* \u0027stable/xenbus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen/xenbus: making backend support modular is too complex\n  xen/pci: Make xen-pcifront be dependent on XEN_XENBUS_FRONTEND\n  xen/xenbus: fixup checkpatch issues in xenbus_probe*\n  xen/netfront: select XEN_XENBUS_FRONTEND\n  xen/xenbus: clean up noise in xenbus_probe_frontend.c\n  xen/xenbus: clean up noise in xenbus_probe_backend.c\n  xen/xenbus: clean up noise in xenbus_probe.c\n  xen/xenbus: cleanup debug noise in xenbus_comms.c\n  xen/xenbus: clean up error handling\n  xen/xenbus: make frontend bus GPL\n  xen/xenbus: make sure backend bus is registered earlier\n  xenbus/frontend: register bus earlier\n  xen: remove xen/evtchn.h\n  xen: add backend driver support\n  xen: separate out frontend xenbus\n"
    },
    {
      "commit": "57cc7215b70856dc6bae8e55b00ecd7b1d7429b1",
      "tree": "f6dedefd41e6745a9b801166b99af7d830e41ef2",
      "parents": [
        "37721e1b0cf98cb65895f234d8c500d270546529"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Jan 10 08:18:25 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 08:51:44 2011 -0800"
      },
      "message": "headers: kobject.h redux\n\nRemove kobject.h from files which don\u0027t need it, notably,\nsched.h and fs.h.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fce263c141faca8db85acb0524bdfdfae3ec0725",
      "tree": "bfe29d4525e26f33ad79088f5fc606f7d7363bf3",
      "parents": [
        "6bac7f9f9e8e549c18ec4b77c499a45a1fae61b9"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Dec 10 22:33:15 2010 -0500"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Jan 05 16:31:12 2011 -0500"
      },
      "message": "xen/pci: Make xen-pcifront be dependent on XEN_XENBUS_FRONTEND\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "fe31e69740eddc7316071ed5165fed6703c8cd12",
      "tree": "b58f193d7176bfe19ae975fec7ff42d7e242e359",
      "parents": [
        "99a0fadf561e1f553c08f0a29f8b2578f55dd5f0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 19 15:57:16 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:54:03 2010 -0800"
      },
      "message": "PCI/PCIe: Clear Root PME Status bits early during system resume\n\nI noticed that PCI Express PMEs don\u0027t work on my Toshiba Portege R500\nafter the system has been woken up from a sleep state by a PME\n(through Wake-on-LAN).  After some investigation it turned out that\nthe BIOS didn\u0027t clear the Root PME Status bit in the root port that\nreceived the wakeup PME and since the Requester ID was also set in\nthe port\u0027s Root Status register, any subsequent PMEs didn\u0027t trigger\ninterrupts.\n\nThis problem can be avoided by clearing the Root PME Status bits in\nall PCI Express root ports during early resume.  For this purpose,\nadd an early resume routine to the PCIe port driver and make this\ndriver be always registered, even if pci_ports_disable is set (in\nwhich case the driver\u0027s only function is to provide the early\nresume callback).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "99a0fadf561e1f553c08f0a29f8b2578f55dd5f0",
      "tree": "97bf80533001e4aedf6e6e96e21c3cac4bd37641",
      "parents": [
        "9b444b36fee16d2aaae9cc91ce594ecb15d922a9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Dec 22 10:06:36 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:52 2010 -0800"
      },
      "message": "PCI: pci-stub: ignore zero-length id parameters\n\npci-stub uses strsep() to separate list of ids and generates a warning\nmessage when it fails to parse an id.  However, not specifying the\nparameter results in ids set to an empty string.  strsep() happily\nreturns the empty string as the first token and thus triggers the\nwarning message spuriously.\n\nMake the tokner ignore zero length ids.\n\nReported-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nReported-by: Prasad Joshi \u003cP.G.Joshi@student.reading.ac.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ee8abf783dd36f65440fd782ad16f9768631d998",
      "tree": "1e5946d10041d0ab3443ba7a4632a7cd663e8018",
      "parents": [
        "23ea3793fd368fd6a1ea20659699e280e2996658"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Nov 17 12:10:40 2010 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:10 2010 -0800"
      },
      "message": "PCI: Skip id checking if no id is passed\n\nWill get warning when pci stub driver is built-in kenel like:\npci-stub: invalid id string \"\"\n\nSo stop early if no id is passed.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "23ea3793fd368fd6a1ea20659699e280e2996658",
      "tree": "49c9c3178719c5b17640ed3060534f99d3b52f6f",
      "parents": [
        "1d3c16a818e992c199844954d95c17fd7ce6cbba"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Nov 18 15:02:31 2010 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:09 2010 -0800"
      },
      "message": "PCI: fix __pci_device_probe kernel-doc warning\n\nFix kernel-doc warning for __pci_device_probe():\n\nWarning(drivers/pci/pci-driver.c:341): missing initial short description on line:\n * __pci_device_probe()\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1d3c16a818e992c199844954d95c17fd7ce6cbba",
      "tree": "6f54b4153b8f7e54bdb5a8abc3ceffa7b4eec0e2",
      "parents": [
        "2f671e2dbff6eb5ef4e2600adbec550c13b8fe72"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jon.mason@exar.com",
        "time": "Tue Nov 30 17:43:26 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:09 2010 -0800"
      },
      "message": "PCI: make pci_restore_state return void\n\npci_restore_state only ever returns 0, thus there is no benefit in\nhaving it return any value.  Also, a large majority of the callers do\nnot check the return code of pci_restore_state.  Make the\npci_restore_state a void return and avoid the overhead.\n\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Jon Mason \u003cjon.mason@exar.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2f671e2dbff6eb5ef4e2600adbec550c13b8fe72",
      "tree": "fb5debb042218dcf1cbdf11eb4d8d603208c219f",
      "parents": [
        "8d805286968811223cca002134ba3d81244d5313"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Mon Dec 06 14:00:56 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:08 2010 -0800"
      },
      "message": "PCI: Disable ASPM if BIOS asks us to\n\nWe currently refuse to touch the ASPM registers if the BIOS tells us that\nASPM isn\u0027t supported. This can cause problems if the BIOS has (for any\nreason) enabled ASPM on some devices anyway. Change the code such that we\nexplicitly clear ASPM if the FADT indicates that ASPM isn\u0027t supported,\nand make sure we tidy up appropriately on device removal in order to deal\nwith the hotplug case. If ASPM is disabled because the BIOS doesn\u0027t hand\nover control then we won\u0027t touch the registers.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8d805286968811223cca002134ba3d81244d5313",
      "tree": "d67154a6c21d9b0c9b71a9cf7bfc4e636737e73e",
      "parents": [
        "00aaaef9a51a1a25c5d6d52ce510772f149a0eb0"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Thu Nov 11 15:46:55 2010 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:08 2010 -0800"
      },
      "message": "PCI: Add mask bit definition for MSI-X table\n\nThen we can use it instead of magic number 1.\n\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nCc: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "00aaaef9a51a1a25c5d6d52ce510772f149a0eb0",
      "tree": "f246945c2356f456d040a56bf8b57d36be34df9d",
      "parents": [
        "994e0b2c3646ce0ca0e4546e6b10c5cf66b976bf"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Thu Nov 11 15:46:54 2010 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:53:07 2010 -0800"
      },
      "message": "PCI: MSI: Move MSI-X entry definition to pci_regs.h\n\nThen it can be used by others.\n\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "994e0b2c3646ce0ca0e4546e6b10c5cf66b976bf",
      "tree": "9f93e8f4fc896eb4fc90dd64547e920665fc7d2a",
      "parents": [
        "e819eb8687767cefca7b6abf5ac6d5efcf581eeb"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 18 13:29:45 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 23 12:51:49 2010 -0800"
      },
      "message": "PCI hotplug: Fix unexpected driver unregister in pciehp_acpi.c\n\nIf pcie_ports_disabled is set, pcie_port_service_register() returns\nerror code and select_detection_mode() should not attempt to\nunregister dummy_driver and use dummy_slots.  It should return\nPCIEHP_DETECT_ACPI immediately instead.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "55ec86f848a5f872fd43f5d7206464a0af419110",
      "tree": "409fdf94a443468ebca6d90908752325ca177cc8",
      "parents": [
        "21228e455756be11fbbcae7e1a184ad9d842f687",
        "147dd5610c8d1bacb88a6c1dfdaceaf257946ed0",
        "d949750fed168b6553ca11ed19e4affd19d7a4d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:44:54 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:44:54 2010 -0800"
      },
      "message": "Merge branches \u0027x86-fixes-for-linus\u0027 and \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86-32: Make sure we can map all of lowmem if we need to\n  x86, vt-d: Handle previous faults after enabling fault handling\n  x86: Enable the intr-remap fault handling after local APIC setup\n  x86, vt-d: Fix the vt-d fault handling irq migration in the x2apic mode\n  x86, vt-d: Quirk for masking vtd spec errors to platform error handling logic\n  x86, xsave: Use alloc_bootmem_align() instead of alloc_bootmem()\n  bootmem: Add alloc_bootmem_align()\n  x86, gcc-4.6: Use gcc -m options when building vdso\n  x86: HPET: Chose a paranoid safe value for the ETIME check\n  x86: io_apic: Avoid unused variable warning when CONFIG_GENERIC_PENDING_IRQ\u003dn\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix off by one in perf_swevent_init()\n  perf: Fix duplicate events with multiple-pmu vs software events\n  ftrace: Have recordmcount honor endianness in fn_ELF_R_INFO\n  scripts/tags.sh: Add magic for trace-events\n  tracing: Fix panic when lseek() called on \"trace\" opened for writing\n"
    },
    {
      "commit": "6db45b76eaa08133187f2cb44d496de7e9503aa8",
      "tree": "250b40b6ab6dcf9f9187996f3f954c9ca4457eba",
      "parents": [
        "d14125ecfee05473de46f06d992db109308c57a3"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Dec 16 10:38:36 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Dec 17 10:00:54 2010 -0800"
      },
      "message": "Revert \"PCI: allocate bus resources from the top down\"\n\nThis reverts commit b126b4703afa4010b161784a43650337676dd03b.\n\nWe\u0027re going back to the old behavior of allocating from bus resources\nin _CRS order.\n\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ac57cd5ee1935d1e60de86d75f13f377775f1c96",
      "tree": "2c53e07fc33f5cd2fc95f1dfdedb2a338758c2fe",
      "parents": [
        "49c2fa08a77a7eefa4cbc73601f64984aceacfa7"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Dec 16 10:38:20 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Dec 17 10:00:38 2010 -0800"
      },
      "message": "Revert \"PCI: fix pci_bus_alloc_resource() hang, prefer positive decode\"\n\nThis reverts commit 82e3e767c21fef2b1b38868e20eb4e470a1e38e3.\n\nWe\u0027re going back to considering bus resources in the order we found\nthem (in _CRS order, when we\u0027re using _CRS), so we don\u0027t need to\ndefine any ordering.\n\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "49c2fa08a77a7eefa4cbc73601f64984aceacfa7",
      "tree": "78e9629014dcaf5922606b7ff1c6049cbed78716",
      "parents": [
        "6313e3c21743cc88bb5bd8aa72948ee1e83937b6"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Dec 08 09:47:48 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Dec 16 14:07:31 2010 -0800"
      },
      "message": "PCI: Update MCP55 quirk to not affect non HyperTransport variants\n\nI wrote this quirk awhile ago to properly setup MCP55 chips on hypertransport\nbusses so that interrupts reached whatever cpu happend to boot the kdump kernel.\nwhile that works well, it was recently shown to me that a a non-hypertransport\nvariant of the MCP55 exists, and on those system the register that this quirk\nmanipulates causes hangs if you write to it.  Since the quirk was only meant to\nhandle errors found on MCP55 chips that have a HT interface, this patch adds a\nfilter to make sure the chip is an HT capable before making the needed register\nadjustment.  This lets the broken MCP55s work with kdump while not breaking the\nnon-HT variants.\n\nResolves https://bugzilla.kernel.org/show_bug.cgi?id\u003d23952\n\nTested successfully by the reporter and myself.\n\nCc: stable@kernel.org\nReported-by: Mathieu Bérard \u003cmathieu@mberard.eu\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7f99d946e71e71d484b7543b49e990508e70d0c0",
      "tree": "e6e05d2fdb03474bf7135adb950de9a6d49519cf",
      "parents": [
        "7f7fbf45c6b748074546f7f16b9488ca71de99c1"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Tue Nov 30 22:22:29 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Dec 13 16:53:57 2010 -0800"
      },
      "message": "x86, vt-d: Handle previous faults after enabling fault handling\n\nFault handling is getting enabled after enabling the interrupt-remapping (as\nthe success of interrupt-remapping can affect the apic mode and hence the\nfault handling mode).\n\nHence there can potentially be some faults between the window of enabling\ninterrupt-remapping in the vt-d and the fault-handling of the vt-d units.\n\nHandle any previous faults after enabling the vt-d fault handling.\n\nFor v2.6.38 cleanup, need to check if we can remove the dmar_fault() in the\nenable_intr_remapping() and see if we can enable fault handling along with\nenabling intr-remapping.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLKML-Reference: \u003c20101201062244.630417138@intel.com\u003e\nCc: stable@kernel.org [v2.6.32+]\nAcked-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "254e42006c893f45bca48f313536fcba12206418",
      "tree": "4eed3ddc7c186dc7cb6087824132c8f95d032fb1",
      "parents": [
        "10340ae130fb70352eae1ae8a00b7906d91bf166"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Dec 06 12:26:30 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Dec 13 16:51:51 2010 -0800"
      },
      "message": "x86, vt-d: Quirk for masking vtd spec errors to platform error handling logic\n\nOn platforms with Intel 7500 chipset, there were some reports of system\nhang/NMI\u0027s during kexec/kdump in the presence of interrupt-remapping enabled.\n\nDuring kdump, there is a window where the devices might be still using old\nkernel\u0027s interrupt information, while the kdump kernel is coming up. This can\ncause vt-d faults as the interrupt configuration from the old kernel map to\nnull IRTE entries in the new kernel etc. (with out interrupt-remapping enabled,\nwe still have the same issue but in this case we will see benign spurious\ninterrupt hit the new kernel).\n\nBased on platform config settings, these platforms seem to generate NMI/SMI\nwhen a vt-d fault happens and there were reports that the resulting SMI causes\nthe  system to hang.\n\nFix it by masking vt-d spec defined errors to platform error reporting logic.\nVT-d spec related errors are already handled by the VT-d OS code, so need to\nreport the same error through other channels.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLKML-Reference: \u003c1291667190.2675.8.camel@sbsiddha-MOBL3.sc.intel.com\u003e\nCc: stable@kernel.org\t[v2.6.32+]\nReported-by: Max Asbock \u003cmasbock@linux.vnet.ibm.com\u003e\nReported-and-tested-by: Takao Indoh \u003cindou.takao@jp.fujitsu.com\u003e\nAcked-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "47143b094d4700842e42b0a7cc2548d7ae292690",
      "tree": "ab1e7fb7cdedd29c8a9b953e58110ff3870946e4",
      "parents": [
        "0b9466ccea3c4ec363737288dd9467bf978c9c2d",
        "f02cbbe657939489347cbda598401a56913ffcbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:03 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:03 2010 +0900"
      },
      "message": "Merge branch \u0027drivers\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* \u0027drivers\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  pci root complex: support for tile architecture\n  drivers/net/tile/: on-chip network drivers for the tile architecture\n  MAINTAINERS: add drivers/char/hvc_tile.c as maintained by tile\n"
    },
    {
      "commit": "f02cbbe657939489347cbda598401a56913ffcbd",
      "tree": "0d21e68d899958e6549f908b0c715c6f37200027",
      "parents": [
        "e5a06939736277c54a68ae275433db55b99d187c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Nov 02 12:05:10 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:13:49 2010 -0500"
      },
      "message": "pci root complex: support for tile architecture\n\nThis change enables PCI root complex support for TILEPro.  Unlike\nTILE-Gx, TILEPro has no support for memory-mapped I/O, so the PCI\nsupport consists of hypervisor upcalls for PIO, DMA, etc.  However,\nthe performance is fine for the devices we have tested with so far\n(1Gb Ethernet, SATA, etc.).\n\nThe \u003casm/io.h\u003e header was tweaked to be a little bit more aggressive\nabout disabling attempts to map/unmap IO port space.  The hacky\n\u003casm/pci-bridge.h\u003e header was rolled into the \u003casm/pci.h\u003e header\nand the result was simplified.  Both of the latter two headers were\npreliminary versions not meant for release before now - oh well.\n\nThere is one quirk for our TILEmpower platform, which accidentally\nnegotiates up to 5GT and needs to be kicked down to 2.5GT.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c05cd08a7504b855c265263e84af61aabafa329",
      "tree": "b38e0b4173c9ce2f5442911249eaccdd52efe5d3",
      "parents": [
        "e53beacd23d9cb47590da6a7a7f6d417b941a994"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Tue Nov 16 09:13:41 2010 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Nov 16 09:15:39 2010 -0800"
      },
      "message": "PCI: fix offset check for sysfs mmapped files\n\nI just loaded 2.6.37-rc2 on my machines, and I noticed that X no longer starts.\nRunning an strace of the X server shows that it\u0027s doing this:\n\nopen(\"/sys/bus/pci/devices/0000:07:00.0/resource0\", O_RDWR) \u003d 10\nmmap(NULL, 16777216, PROT_READ|PROT_WRITE, MAP_SHARED, 10, 0) \u003d -1 EINVAL (Invalid argument)\n\nThis code seems to be asking for a shared read/write mapping of 16MB worth of\nBAR0 starting at file offset 0, and letting the kernel assign a starting\naddress.  Unfortunately, this -EINVAL causes X not to start.  Looking into\ndmesg, there\u0027s a complaint like so:\n\nprocess \"Xorg\" tried to map 0x01000000 bytes at page 0x00000000 on 0000:07:00.0 BAR 0 (start 0x        96000000, size 0x         1000000)\n\n...with the following code in pci_mmap_fits:\n\n\tpci_start \u003d (mmap_api \u003d\u003d PCI_MMAP_SYSFS) ?\n\t\tpci_resource_start(pdev, resno) \u003e\u003e PAGE_SHIFT : 0;\n        if (start \u003e\u003d pci_start \u0026\u0026 start \u003c pci_start + size \u0026\u0026\n                        start + nr \u003c\u003d pci_start + size)\n\nIt looks like the logic here is set up such that when the mmap call comes via\nsysfs, the check in pci_mmap_fits wants vma-\u003evm_pgoff to be between the\nresource\u0027s start and end address, and the end of the vma to be no farther than\nthe end.  However, the sysfs PCI resource files always start at offset zero,\nwhich means that this test always fails for programs that mmap the sysfs files.\nGiven the comment in the original commit\n3b519e4ea618b6943a82931630872907f9ac2c2b, I _think_ the old procfs files\nrequire that the file offset be equal to the resource\u0027s base address when\nmmapping.\n\nI think what we want here is for pci_start to be 0 when mmap_api \u003d\u003d\nPCI_MMAP_PROCFS.  The following patch makes that change, after which the Matrox\nand Mach64 X drivers work again.\n\nAcked-by: Martin Wilck \u003cmartin.wilck@ts.fujitsu.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e5c13537b0153010b4f65b9c55faa78a4c151c93",
      "tree": "6e2d3eae7532040f070888eb6116fe917f9648e0",
      "parents": [
        "968ab1838a5d48f02f5b471aa1d0e59e2cc2ccbc",
        "e25cd062b16ed1d41a157aec5a108abd6ff2e9f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 15 14:01:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 15 14:01:33 2010 -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: sysfs: fix printk warnings\n  PCI: fix pci_bus_alloc_resource() hang, prefer positive decode\n  PCI: read current power state at enable time\n  PCI: fix size checks for mmap() on /proc/bus/pci files\n  x86/PCI: coalesce overlapping host bridge windows\n  PCI hotplug: ibmphp: Add check to prevent reading beyond mapped area\n"
    },
    {
      "commit": "e25cd062b16ed1d41a157aec5a108abd6ff2e9f9",
      "tree": "2cda9188eda2221b9402845ca81fe22d09c8e725",
      "parents": [
        "82e3e767c21fef2b1b38868e20eb4e470a1e38e3"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat Nov 13 08:44:33 2010 -0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Nov 15 09:34:44 2010 -0800"
      },
      "message": "PCI: sysfs: fix printk warnings\n\nCast pci_resource_start() and pci_resource_len() to u64 for printk.\n\ndrivers/pci/pci-sysfs.c:753: warning: format \u0027%16Lx\u0027 expects type \u0027long long unsigned int\u0027, but argument 9 has type \u0027resource_size_t\u0027\ndrivers/pci/pci-sysfs.c:753: warning: format \u0027%16Lx\u0027 expects type \u0027long long unsigned int\u0027, but argument 10 has type \u0027resource_size_t\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "82e3e767c21fef2b1b38868e20eb4e470a1e38e3",
      "tree": "b1d25853445115cc580fafc4b1d664bc3219c16b",
      "parents": [
        "97c145f7c87453cec90e91238fba5fe2c1561b32"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Wed Nov 10 10:26:07 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Nov 12 09:16:08 2010 -0800"
      },
      "message": "PCI: fix pci_bus_alloc_resource() hang, prefer positive decode\n\nWhen a PCI bus has two resources with the same start/end, e.g.,\n\n    pci_bus 0000:04: resource 2 [mem 0xd0000000-0xd7ffffff pref]\n    pci_bus 0000:04: resource 7 [mem 0xd0000000-0xd7ffffff]\n\nthe previous pci_bus_find_resource_prev() implementation would alternate\nbetween them forever:\n\n    pci_bus_find_resource_prev(... [mem 0xd0000000-0xd7ffffff pref])\n        returns [mem 0xd0000000-0xd7ffffff]\n    pci_bus_find_resource_prev(... [mem 0xd0000000-0xd7ffffff])\n        returns [mem 0xd0000000-0xd7ffffff pref]\n    pci_bus_find_resource_prev(... [mem 0xd0000000-0xd7ffffff pref])\n        returns [mem 0xd0000000-0xd7ffffff]\n    ...\n\nThis happened because there was no ordering between two resources with the\nsame start and end.  A resource that had the same start and end as the\ncursor, but was not itself the cursor, was considered to be before the\ncursor.\n\nThis patch fixes the hang by making a fixed ordering between any two\nresources.\n\nIn addition, it tries to allocate from positively decoded regions before\nusing any subtractively decoded resources.  This means we will use a\npositive decode region before a subtractive decode one, even if it means\nusing a smaller address.\n\nReference: https://bugzilla.kernel.org/show_bug.cgi?id\u003d22062\nReported-by: Borislav Petkov \u003cbp@amd64.org\u003e\nTested-by: Borislav Petkov \u003cbp@amd64.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "97c145f7c87453cec90e91238fba5fe2c1561b32",
      "tree": "e69b486547e713b6a9358ad780dcdf7b697a7912",
      "parents": [
        "3b519e4ea618b6943a82931630872907f9ac2c2b"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Nov 05 15:16:36 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Nov 11 09:38:14 2010 -0800"
      },
      "message": "PCI: read current power state at enable time\n\nWhen we enable a PCI device, we avoid doing a lot of the initial setup\nwork if the device\u0027s enable count is non-zero.  If we don\u0027t fetch the\npower state though, we may later fail to set up MSI due to the unknown\nstatus.  So pick it up before we short circuit the rest due to a\npre-existing enable or mismatched enable/disable pair (as happens with\nVGA devices, which are special in a special way).\n\nTested-by: Jesse Brandeburg \u003cjesse.brandeburg@gmail.com\u003e\nReported-by: Dave Airlie \u003cairlied@linux.ie\u003e\nTested-by: Dave Airlie \u003cairlied@linux.ie\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3b519e4ea618b6943a82931630872907f9ac2c2b",
      "tree": "55ef8d5305a028dcada03945b3322143446ad9d0",
      "parents": [
        "4723d0f2f96e6c910f951d595067eb31e0dd2d01"
      ],
      "author": {
        "name": "Martin Wilck",
        "email": "martin.wilck@ts.fujitsu.com",
        "time": "Wed Nov 10 11:03:21 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Nov 11 09:34:32 2010 -0800"
      },
      "message": "PCI: fix size checks for mmap() on /proc/bus/pci files\n\nThe checks for valid mmaps of PCI resources made through /proc/bus/pci files\nthat were introduced in 9eff02e2042f96fb2aedd02e032eca1c5333d767 have several\nproblems:\n\n1. mmap() calls on /proc/bus/pci files are made with real file offsets \u003e 0,\nwhereas under /sys/bus/pci/devices, the start of the resource corresponds\nto offset 0. This may lead to false negatives in pci_mmap_fits(), which\nimplicitly assumes the /sys/bus/pci/devices layout.\n\n2. The loop in proc_bus_pci_mmap doesn\u0027t skip empty resouces. This leads\nto false positives, because pci_mmap_fits() doesn\u0027t treat empty resources\ncorrectly (the calculated size is 1 \u003c\u003c (8*sizeof(resource_size_t)-PAGE_SHIFT)\nin this case!).\n\n3. If a user maps resources with BAR \u003e 0, pci_mmap_fits will emit bogus\nWARNINGS for the first resources that don\u0027t fit until the correct one is found.\n\nOn many controllers the first 2-4 BARs are used, and the others are empty.\nIn this case, an mmap attempt will first fail on the non-empty BARs\n(including the \"right\" BAR because of 1.) and emit bogus WARNINGS because\nof 3., and finally succeed on the first empty BAR because of 2.\nThis is certainly not the intended behaviour.\n\nThis patch addresses all 3 issues.\nUpdated with an enum type for the additional parameter for pci_mmap_fits().\n\nCc: stable@kernel.org\nSigned-off-by: Martin Wilck \u003cmartin.wilck@ts.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ac3abf2c37a9b0be604ea9825705a8510a9a6ba3",
      "tree": "52cc5f8a785dc3890f20f46e6f514170d692ed6a",
      "parents": [
        "f6614b7bb405a9b35dd28baea989a749492c46b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Nov 08 23:20:27 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Nov 11 09:34:31 2010 -0800"
      },
      "message": "PCI hotplug: ibmphp: Add check to prevent reading beyond mapped area\n\nWhile testing various randconfigs with ktest.pl, I hit the following panic:\n\nBUG: unable to handle kernel paging request at f7e54b03\nIP: [\u003cc0d63409\u003e] ibmphp_access_ebda+0x101/0x19bb\n\nAdding printks, I found that the loop that reads the ebda blocks\ncan move out of the mapped section.\n\nibmphp_access_ebda: start\u003df7e44c00 size\u003d5120 end\u003df7e46000\nibmphp_access_ebda: io_mem\u003df7e44d80 offset\u003d384\nibmphp_access_ebda: io_mem\u003df7e54b03 offset\u003d65283\n\nThe start of the iomap was at f7e44c00 and had a size of 5120,\nmaking the end f7e46000. We start with an offset of 0x180 or\n384, giving the first read at 0xf7e44d80. Reading that location\nyields 65283, which is much bigger than the 5120 that was allocated\nand makes the next read at f7e54b03 which is outside the mapped area.\n\nPerhaps this is a bug in the driver, or buggy hardware, but this patch\nis more about not crashing my box on start up and just giving a warning\nif it detects this error.\n\nThis patch at least lets my box boot with just a warning.\n\nCc: Chandru Siddalingappa \u003cchandru@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2a63dd7275b2278bd7e9203f74b9aa4f07e82a7a",
      "tree": "ee4de02c580b1e41eed25242b0e978d2a1ed1359",
      "parents": [
        "c8ac3902fb7a98c45ed54d98ad6f1c8168f47021"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Thu Nov 04 15:31:30 2010 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Nov 08 11:41:15 2010 -0500"
      },
      "message": "xen-pcifront: fix PCI reference leak\n\nStanse found that when pdev is found and has no driver a reference is\nleaked in pcifront_common_process. So add pci_dev_put there. For the\npdev \u003d\u003d NULL case, pci_dev_put(NULL) is fine.\n\n[v2: Updated to not dereference pcidev-\u003edev per Milton\u0027s observation]\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "c8ac3902fb7a98c45ed54d98ad6f1c8168f47021",
      "tree": "36f22113a94303fffcbf5fed627bc74d9d3dab62",
      "parents": [
        "07cf2a64c2ad3408a0e12aa4cd6040b30c09381d"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sat Oct 30 14:51:30 2010 +0200"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Nov 08 11:30:01 2010 -0500"
      },
      "message": "xen-pcifront: Remove duplicate inclusion of headers.\n\nIn drivers/pci/xen-pcifront.c the xen/xenbus.h header is included twice -\nonce is enough.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "18cb657ca1bafe635f368346a1676fb04c512edf",
      "tree": "b0eb6a4ceddf98e7bf820be7ff24bf131ff56b0c",
      "parents": [
        "2301b65b86df8b80e6779ce9885ad62a5c4adc38",
        "e28c31a96b1570f17731b18e8efabb7308d0c22c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 17:11:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 17:11:17 2010 -0700"
      },
      "message": "Merge branch \u0027stable/xen-pcifront-0.8.2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n  and branch \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm\n\n* \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm:\n  xen: register xen pci notifier\n  xen: initialize cpu masks for pv guests in xen_smp_init\n  xen: add a missing #include to arch/x86/pci/xen.c\n  xen: mask the MTRR feature from the cpuid\n  xen: make hvc_xen console work for dom0.\n  xen: add the direct mapping area for ISA bus access\n  xen: Initialize xenbus for dom0.\n  xen: use vcpu_ops to setup cpu masks\n  xen: map a dummy page for local apic and ioapic in xen_set_fixmap\n  xen: remap MSIs into pirqs when running as initial domain\n  xen: remap GSIs as pirqs when running as initial domain\n  xen: introduce XEN_DOM0 as a silent option\n  xen: map MSIs into pirqs\n  xen: support GSI -\u003e pirq remapping in PV on HVM guests\n  xen: add xen hvm acpi_register_gsi variant\n  acpi: use indirect call to register gsi in different modes\n  xen: implement xen_hvm_register_pirq\n  xen: get the maximum number of pirqs from xen\n  xen: support pirq !\u003d irq\n\n* \u0027stable/xen-pcifront-0.8.2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: (27 commits)\n  X86/PCI: Remove the dependency on isapnp_disable.\n  xen: Update Makefile with CONFIG_BLOCK dependency for biomerge.c\n  MAINTAINERS: Add myself to the Xen Hypervisor Interface and remove Chris Wright.\n  x86: xen: Sanitse irq handling (part two)\n  swiotlb-xen: On x86-32 builts, select SWIOTLB instead of depending on it.\n  MAINTAINERS: Add myself for Xen PCI and Xen SWIOTLB maintainer.\n  xen/pci: Request ACS when Xen-SWIOTLB is activated.\n  xen-pcifront: Xen PCI frontend driver.\n  xenbus: prevent warnings on unhandled enumeration values\n  xenbus: Xen paravirtualised PCI hotplug support.\n  xen/x86/PCI: Add support for the Xen PCI subsystem\n  x86: Introduce x86_msi_ops\n  msi: Introduce default_[teardown|setup]_msi_irqs with fallback.\n  x86/PCI: Export pci_walk_bus function.\n  x86/PCI: make sure _PAGE_IOMAP it set on pci mappings\n  x86/PCI: Clean up pci_cache_line_size\n  xen: fix shared irq device passthrough\n  xen: Provide a variant of xen_poll_irq with timeout.\n  xen: Find an unbound irq number in reverse order (high to low).\n  xen: statically initialize cpu_evtchn_mask_p\n  ...\n\nFix up trivial conflicts in drivers/pci/Makefile\n"
    },
    {
      "commit": "e9f29c9a56ca06d0effa557823a737cbe7ec09f7",
      "tree": "c331c4aa741a8f384ee13d0b08bd340c23164b16",
      "parents": [
        "800416f799e0723635ac2d720ad4449917a1481c",
        "1af3c2e45e7a641e774bbb84fa428f2f0bf2d9c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 11:59:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 11:59:52 2010 -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: (27 commits)\n  x86: allocate space within a region top-down\n  x86: update iomem_resource end based on CPU physical address capabilities\n  x86/PCI: allocate space from the end of a region, not the beginning\n  PCI: allocate bus resources from the top down\n  resources: support allocating space within a region from the top down\n  resources: handle overflow when aligning start of available area\n  resources: ensure callback doesn\u0027t allocate outside available space\n  resources: factor out resource_clip() to simplify find_resource()\n  resources: add a default alignf to simplify find_resource()\n  x86/PCI: MMCONFIG: fix region end calculation\n  PCI: Add support for polling PME state on suspended legacy PCI devices\n  PCI: Export some PCI PM functionality\n  PCI: fix message typo\n  PCI: log vendor/device ID always\n  PCI: update Intel chipset names and defines\n  PCI: use new ccflags variable in Makefile\n  PCI: add PCI_MSIX_TABLE/PBA defines\n  PCI: add PCI vendor id for STmicroelectronics\n  x86/PCI: irq and pci_ids patch for Intel Patsburg DeviceIDs\n  PCI: OLPC: Only enable PCI configuration type override on XO-1\n  ...\n"
    },
    {
      "commit": "0b2d8d9e562de3ee2476f549549e4fefbb7a4213",
      "tree": "20e025254b430efc647e7403a4168e4487619b92",
      "parents": [
        "22cdbd1d5789cc16c37102eb6f62c3ae377b849e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:34:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:34:59 2010 -0700"
      },
      "message": "proc_bus_pci_ioctl: remove pointless BKL usage\n\nThe BKL was pushed into this function when it was converted to use the\nunlocked_ioctl interface, but nothing that the function touches is\nactually protected by the BKL.  So just remove the BKL entirely, so that\nwe finally can get a realistic system build without the BKL being\nenabled at all.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b126b4703afa4010b161784a43650337676dd03b",
      "tree": "63c03638d5724fc8a26bc40a12ab5621af94fb15",
      "parents": [
        "e7f8567db9a7f6b3151b0b275e245c1cef0d9c70"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Tue Oct 26 15:41:39 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Oct 26 15:33:37 2010 -0700"
      },
      "message": "PCI: allocate bus resources from the top down\n\nAllocate space from the highest-address PCI bus resource first, then work\ndownward.\n\nPreviously, we looked for space in PCI host bridge windows in the order\nwe discovered the windows.  For example, given the following windows\n(discovered via an ACPI _CRS method):\n\n    pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff]\n    pci_root PNP0A03:00: host bridge window [mem 0x000c0000-0x000effff]\n    pci_root PNP0A03:00: host bridge window [mem 0x000f0000-0x000fffff]\n    pci_root PNP0A03:00: host bridge window [mem 0xbff00000-0xf7ffffff]\n    pci_root PNP0A03:00: host bridge window [mem 0xff980000-0xff980fff]\n    pci_root PNP0A03:00: host bridge window [mem 0xff97c000-0xff97ffff]\n    pci_root PNP0A03:00: host bridge window [mem 0xfed20000-0xfed9ffff]\n\nwe attempted to allocate from [mem 0x000a0000-0x000bffff] first, then\n[mem 0x000c0000-0x000effff], and so on.\n\nWith this patch, we allocate from [mem 0xff980000-0xff980fff] first, then\n[mem 0xff97c000-0xff97ffff], [mem 0xfed20000-0xfed9ffff], etc.\n\nAllocating top-down follows Windows practice, so we\u0027re less likely to\ntrip over BIOS defects in the _CRS description.\n\nOn the machine above (a Dell T3500), the [mem 0xbff00000-0xbfffffff] region\ndoesn\u0027t actually work and is likely a BIOS defect.  The symptom is that we\nmove the AHCI controller to 0xbff00000, which leads to \"Boot has failed,\nsleeping forever,\" a BUG in ahci_stop_engine(), or some other boot failure.\n\nReference: https://bugzilla.kernel.org/show_bug.cgi?id\u003d16228#c43\nReference: https://bugzilla.redhat.com/show_bug.cgi?id\u003d620313\nReference: https://bugzilla.redhat.com/show_bug.cgi?id\u003d629933\nReported-by: Brian Bloniarz \u003cphunge0@hotmail.com\u003e\nReported-and-tested-by: Stefan Becker \u003cchemobejk@gmail.com\u003e\nReported-by: Denys Vlasenko \u003cdvlasenk@redhat.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "229aebb873e29726b91e076161649cf45154b0bf",
      "tree": "acc02a3702215bce8d914f4c8cc3d7a1382b1c67",
      "parents": [
        "8de547e1824437f3c6af180d3ed2162fa4b3f389",
        "50a23e6eec6f20d55a3a920e47adb455bff6046e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  Update broken web addresses in arch directory.\n  Update broken web addresses in the kernel.\n  Revert \"drivers/usb: Remove unnecessary return\u0027s from void functions\" for musb gadget\n  Revert \"Fix typo: configuation \u003d\u003e configuration\" partially\n  ida: document IDA_BITMAP_LONGS calculation\n  ext2: fix a typo on comment in ext2/inode.c\n  drivers/scsi: Remove unnecessary casts of private_data\n  drivers/s390: Remove unnecessary casts of private_data\n  net/sunrpc/rpc_pipe.c: Remove unnecessary casts of private_data\n  drivers/infiniband: Remove unnecessary casts of private_data\n  drivers/gpu/drm: Remove unnecessary casts of private_data\n  kernel/pm_qos_params.c: Remove unnecessary casts of private_data\n  fs/ecryptfs: Remove unnecessary casts of private_data\n  fs/seq_file.c: Remove unnecessary casts of private_data\n  arm: uengine.c: remove C99 comments\n  arm: scoop.c: remove C99 comments\n  Fix typo configue \u003d\u003e configure in comments\n  Fix typo: configuation \u003d\u003e configuration\n  Fix typo interrest[ing|ed] \u003d\u003e interest[ing|ed]\n  Fix various typos of valid in comments\n  ...\n\nFix up trivial conflicts in:\n\tdrivers/char/ipmi/ipmi_si_intf.c\n\tdrivers/usb/gadget/rndis.c\n\tnet/irda/irnet/irnet_ppp.c\n"
    },
    {
      "commit": "91b745016c12d440386c40fb76ab69c8e08cbc06",
      "tree": "881a26a43b3ee924c0979a54b38c7a87d79d7f1a",
      "parents": [
        "04cc69768e7d1f40d98b79d23d203674553b4da2",
        "daaae6b010ac0f60c9c35e481589966f9f1fcc22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:13:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:13:10 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: remove in_workqueue_context()\n  workqueue: Clarify that schedule_on_each_cpu is synchronous\n  memory_hotplug: drop spurious calls to flush_scheduled_work()\n  shpchp: update workqueue usage\n  pciehp: update workqueue usage\n  isdn/eicon: don\u0027t call flush_scheduled_work() from diva_os_remove_soft_isr()\n  workqueue: add and use WQ_MEM_RECLAIM flag\n  workqueue: fix HIGHPRI handling in keep_working()\n  workqueue: add queue_work and activate_work trace points\n  workqueue: prepare for more tracepoints\n  workqueue: implement flush[_delayed]_work_sync()\n  workqueue: factor out start_flush_work()\n  workqueue: cleanup flush/cancel functions\n  workqueue: implement alloc_ordered_workqueue()\n\nFix up trivial conflict in fs/gfs2/main.c as per Tejun\n"
    },
    {
      "commit": "67ba37293e938208795d6a3562201bdb0cf43393",
      "tree": "3522e949ff19f3809583bfb3fa3973ddf264689d",
      "parents": [
        "cd07202cc8262e1669edff0d97715f3dd9260917",
        "5bba6c56dc99ff88f79a79572e29ecf445710878"
      ],
      "author": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri Oct 22 21:24:06 2010 +0100"
      },
      "committer": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri Oct 22 21:24:06 2010 +0100"
      },
      "message": "Merge commit \u0027konrad/stable/xen-pcifront-0.8.2\u0027 into 2.6.36-rc8-initial-domain-v6\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "c37927d4359e81b85de644f8fb08878717cf5f3f",
      "tree": "25dabf2d905e1410819d1bdaba0bf5f779100d3c",
      "parents": [
        "5704e44d283e907623e3775c1262f206a2c48cf3",
        "2a48fc0ab24241755dc93bfd4f01d68efab47f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  block: autoconvert trivial BKL users to private mutex\n  drivers: autoconvert trivial BKL users to private mutex\n  ipmi: autoconvert trivial BKL users to private mutex\n  mac: autoconvert trivial BKL users to private mutex\n  mtd: autoconvert trivial BKL users to private mutex\n  scsi: autoconvert trivial BKL users to private mutex\n\nFix up trivial conflicts (due to addition of private mutex right next to\ndeletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c\n"
    },
    {
      "commit": "157b6ceb13e4b4148ee03dd517dbe88748943125",
      "tree": "f0f0f50bef7ce0be2e86465881c518fbb5ddb0de",
      "parents": [
        "4a60cfa9457749f7987fd4f3c956dbba5a281129",
        "6e9636693373d938aa3b13427be3d212f172ac06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:23:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:23:48 2010 -0700"
      },
      "message": "Merge branch \u0027x86-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, iommu: Update header comments with appropriate naming\n  ia64, iommu: Add a dummy iommu_table.h file in IA64.\n  x86, iommu: Fix IOMMU_INIT alignment rules\n  x86, doc: Adding comments about .iommu_table and its neighbors.\n  x86, iommu: Utilize the IOMMU_INIT macros functionality.\n  x86, VT-d: Make Intel VT-d IOMMU use IOMMU_INIT_* macros.\n  x86, GART/AMD-VI: Make AMD GART and IOMMU use IOMMU_INIT_* macros.\n  x86, calgary: Make Calgary IOMMU use IOMMU_INIT_* macros.\n  x86, xen-swiotlb: Make Xen-SWIOTLB use IOMMU_INIT_* macros.\n  x86, swiotlb: Make SWIOTLB use IOMMU_INIT_* macros.\n  x86, swiotlb: Simplify SWIOTLB pci_swiotlb_detect routine.\n  x86, iommu: Add proper dependency sort routine (and sanity check).\n  x86, iommu: Make all IOMMU\u0027s detection routines return a value.\n  x86, iommu: Add IOMMU_INIT macros, .iommu_table section, and iommu_table_entry structure\n"
    },
    {
      "commit": "14d4962dc863ab42e898d66d4837aa6c3afedc3b",
      "tree": "780cb53645b781dfd33b6d0ad21e0596f2ad1a1a",
      "parents": [
        "9717967c4b704ce344c954afb5bb160aa9c01c34",
        "2b666ca4a68cbc22483b0f2e1ba3c0e59b01ae9e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 20 04:38:56 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 20 04:38:59 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/core\n\nMerge reason: update to almost-final-.36\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "956a9202cd1220397933a07beda9f96b3df1fa24",
      "tree": "49d6ac9b43c16a9363b6ceff81ec62ef81aca0a7",
      "parents": [
        "b78c9512563780d86a178f11b648bcf73b8d87ec"
      ],
      "author": {
        "name": "Ryan Wilson",
        "email": "hap9@epoch.ncsc.mil",
        "time": "Mon Aug 02 21:31:05 2010 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 18 10:49:37 2010 -0400"
      },
      "message": "xen-pcifront: Xen PCI frontend driver.\n\nThis is a port of the 2.6.18 Xen PCI front driver with fixes\nto make it build under 2.6.34 and later (for the full list of\nchanges: git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git\nhistoric/xen-pcifront-0.1). It also includes the fixes\nto make it work properly.\n\n[v2: Updated Kconfig, removed crud, added Reviewed-by]\n[v3: Added \u0027static\u0027, fixed grant table leak, redid Kconfig]\n[v4: Added one more \u0027static\u0027 and removed comments]\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nReviewed-by: Jan Beulich \u003cJBeulich@novell.com\u003e\n"
    },
    {
      "commit": "1525bf0d8f059a38c6e79353583854e1981b2e67",
      "tree": "e9ffaebc5f2726dd57c0d427996af033af71ab6c",
      "parents": [
        "7c94def89aa5091706e03b98047c074d7ac74af0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 06 16:05:35 2010 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 18 10:49:33 2010 -0400"
      },
      "message": "msi: Introduce default_[teardown|setup]_msi_irqs with fallback.\n\nIntroduce an override for the arch_[teardown|setup]_msi_irqs\nthat can be utilized to fallback to the default arch_* code.\n\nIf a platform wants to utilize the code paths defined\nin driver/pci/msi.c it has to define HAVE_DEFAULT_MSI_TEARDOWN_IRQS\nor HAVE_DEFAULT_MSI_SETUP_IRQS. Otherwise the old mechanism\nof over-ridding the arch_* works fine.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: x86@kernel.org\n"
    },
    {
      "commit": "7c94def89aa5091706e03b98047c074d7ac74af0",
      "tree": "564a390f24ec1ad25147219c25b2a5925683a61b",
      "parents": [
        "5ee01f49c963d5e0b530344f86535ecb7f672064"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Tue Dec 22 14:49:45 2009 -0500"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 18 10:49:32 2010 -0400"
      },
      "message": "x86/PCI: Export pci_walk_bus function.\n\nIn preperation of modularizing Xen-pcifront the pci_walk_bus\nneeds to be exported so that the xen-pcifront module can walk\ncall the pci subsystem to walk the PCI devices and claim them.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e [http://marc.info/?l\u003dlinux-pci\u0026m\u003d126149958010298\u0026w\u003d2]\n"
    },
    {
      "commit": "631dd1a885b6d7e9f6f51b4e5b311c2bb04c323c",
      "tree": "c431fa3479c1d35842fb5635ed7ccd487d063a62",
      "parents": [
        "d7eccbbae84b2ee7dbb756e60287c4b47071444e"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "message": "Update broken web addresses in the kernel.\n\nThe patch below updates broken web addresses in the kernel\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCc: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Dimitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nAcked-by: Ben Pfaff \u003cblp@cs.stanford.edu\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nReviewed-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "e24dcbef93dbbf529fbedfc6ce8ab22d2cef35f0",
      "tree": "6ab3a2004ed8d21a48ce2eeda6c5b733b76599e4",
      "parents": [
        "a827ea307b147aeb050803433b3f6842582c6ced"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:33:02 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:33:02 2010 +0200"
      },
      "message": "shpchp: update workqueue usage\n\n* Rename shpchp_wq to shpchp_ordered_wq and add non-ordered shpchp_wq\n  which is used instead of the system workqueue.  This is to remove\n  the use of flush_scheduled_work() which is deprecated and scheduled\n  for removal.\n\n* With cmwq in place, there\u0027s no point in creating workqueues lazily.\n  Create both shpchp_wq and shpchp_ordered_wq upfront.\n\n* Include workqueue.h from shpchp.h.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a827ea307b147aeb050803433b3f6842582c6ced",
      "tree": "d87c0e0b2acd5a966d402597e9d94af5c527118e",
      "parents": [
        "7bf4a5ddc9fbff52855cad8d4d74bf5344fe8093"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:31:02 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:31:02 2010 +0200"
      },
      "message": "pciehp: update workqueue usage\n\n* Rename pciehp_wq to pciehp_ordered_wq and add non-ordered pciehp_wq\n  which is used instead of the system workqueue.  This is to remove\n  the use of flush_scheduled_work() which is deprecated and scheduled\n  for removal.\n\n* With cmwq in place, there\u0027s no point in creating workqueues lazily.\n  Create both pciehp_wq and pciehp_ordered_wq upfront.\n\n* Include workqueue.h from pciehp.h.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "df17e62e5bff60aeefd0e81165c62f9e46f33217",
      "tree": "12f612592ae274330455c2206ce2d17c10082ab2",
      "parents": [
        "bf4d29086972ceaeaf72544d8f64933c2cfdc992"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Mon Oct 04 14:22:29 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:06 2010 -0700"
      },
      "message": "PCI: Add support for polling PME state on suspended legacy PCI devices\n\nNot all hardware vendors hook up the PME line for legacy PCI devices,\nmeaning that wakeup events get lost. The only way around this is to poll\nthe devices to see if their state has changed, so add support for doing\nthat on legacy PCI devices that aren\u0027t part of the core chipset.\n\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bf4d29086972ceaeaf72544d8f64933c2cfdc992",
      "tree": "301ee83217bc9a19cef5c7569801095b4d6f89b4",
      "parents": [
        "1bcd495be9ed3194f618e8af0446459dc52a1423"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Mon Oct 04 14:22:26 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:06 2010 -0700"
      },
      "message": "PCI: Export some PCI PM functionality\n\nIt\u0027s helpful to have some extra PCI power management functions available to\nplatform code, so move the declarations to an exported header.\n\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1bcd495be9ed3194f618e8af0446459dc52a1423",
      "tree": "02de0143c2aebbf6941327c04b00557140028123",
      "parents": [
        "2c6413aee215a43b1f95e218067abcde50ccbc5e"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Wed Sep 29 12:23:54 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:05 2010 -0700"
      },
      "message": "PCI: fix message typo\n\nI missed the closing parenthesis on \"(PCI address ...)\".\n\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nReported-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2c6413aee215a43b1f95e218067abcde50ccbc5e",
      "tree": "c36c18db030ee0af60642aaac4df78973ab7be97",
      "parents": [
        "cb04e95bdd0bfd618ab731c84a3ab56b56974df8"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Wed Sep 29 12:23:21 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:05 2010 -0700"
      },
      "message": "PCI: log vendor/device ID always\n\nPreviously we had to have CONFIG_PCI_DEBUG\u003dy or CONFIG_DYNAMIC_DEBUG\u003dy\nto turn on this printk, but I think the IDs are valuable enough that it\u0027s\nworth putting them in the log always.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "350a55e9ff6005032407d3234af800f413b03af5",
      "tree": "38249a85dbae6828ceab1a1164b11d3df174c94d",
      "parents": [
        "db5004195481fcb500c929bd3a0e1c0c48eec527"
      ],
      "author": {
        "name": "matt mooney",
        "email": "mfm@muteddisk.com",
        "time": "Fri Sep 24 12:17:26 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:04 2010 -0700"
      },
      "message": "PCI: use new ccflags variable in Makefile\n\nReplace EXTRA_CFLAGS with ccflags-y.\n\nSigned-off-by: matt mooney \u003cmfm@muteddisk.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "db5004195481fcb500c929bd3a0e1c0c48eec527",
      "tree": "a0b1ae770128ac51ca1e2096ac180d1a44f5ef8c",
      "parents": [
        "7473fbf4a016301bfa3faa4f81c9a9c978330359"
      ],
      "author": {
        "name": "Hidetoshi Seto",
        "email": "seto.hidetoshi@jp.fujitsu.com",
        "time": "Wed Oct 13 15:00:23 2010 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Sun Oct 17 20:03:03 2010 -0700"
      },
      "message": "PCI: add PCI_MSIX_TABLE/PBA defines\n\nThese are already defined in pcilib\u0027s pci/header.h but not in kernel\u0027s\nlinux/pci_regs.h.  Copy them to avoid using magic numbers.\n\nSigned-off-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "66db60eaf158aa953651d03e43e931e757e87262",
      "tree": "ac095123c1c92b4a646d8e908cbca835b63ac611",
      "parents": [
        "b22c3d82757109fa107ce17ba9484d45273eed05"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Sep 21 13:54:39 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:50 2010 -0700"
      },
      "message": "PCI: add quirk for non-symmetric-mode irq routing to versions 0 and 4 of the MCP55 northbridge\n\nA long time ago I worked on a RHEL5 bug in which kdump hung during boot\non a set of systems.  The systems hung because they never received timer\ninterrupts during calibrate_delay.  These systems also all had Opteron\nprocessors on a hypertransport bus, bridged to a pci bus via an Nvidia\nMCP55 northbridge chip.  After much wrangling I managed to learn from\nNvidia that they have an undocumented register in some versions of that\nchip which control how legacy interrupts are send to the cpu complex\nwhen the ioapic isn\u0027t active.  Nvidia defaults this register to only\nsend legacy interrupts to the BSP, so if kdump happens to boot on an AP,\nwe never get timer interrupts and boom.  I had initially used this quirk\nas a workaround, with my intent being to move apic initalization to an\nearlier point in the boot process, so the setting of the register would\nbe irrelevant.  Given the work involved in doing that however, the\nfragile nature of the apic initalization code, and the fact that, over\nthe 2 years since we found this bug, the MCP55 is the only chip which\nseems to have this issue, I\u0027ve figure at this point its likely safer to\njust carry the quirk around.  By setting the referenced bits in this\nhidden register, interrupts will be broadcast to all cpus when the\nioapic isn\u0027t active on the above described systems.\n\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "b22c3d82757109fa107ce17ba9484d45273eed05",
      "tree": "a8652b72298487d7938baec4836abc44dee22dbc",
      "parents": [
        "42b219322a97ccef347388b233aceaafe3fa517d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 20 18:50:00 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:50 2010 -0700"
      },
      "message": "PCI/PCIe/AER: Disable native AER service if BIOS has precedence\n\nThere is a design issue related to PCIe AER and _OSC that the BIOS\nmay be asked to grant control of the AER service even if some\nHardware Error Source Table (HEST) entries contain information\nmeaning that the BIOS really should control it.  Namely,\npcie_port_acpi_setup() calls pcie_aer_get_firmware_first() that\ndetermines whether or not the AER service should be controlled by\nthe BIOS on the basis of the HEST information for the given PCIe\nport.  The BIOS is asked to grant control of the AER service for\na PCIe Root Complex if pcie_aer_get_firmware_first() returns \u0027false\u0027\nfor at least one root port in that complex, even if all of the other\nroot ports\u0027 HEST entries have the FIRMWARE_FIRST flag set (and none\nof them has the GLOBAL flag set).  However, if the AER service is\ncontrolled by the kernel, that may interfere with the BIOS\u0027 handling\nof the error sources having the FIRMWARE_FIRST flag.  Moreover,\nthere may be PCIe endpoints that have the FIRMWARE_FIRST flag set in\nHEST and are attached to the root ports in question, in which case it\nalso may be unsafe to ask the BIOS for control of the AER service.\n\nFor this reason, introduce a function checking if there\u0027s at least\none PCIe-related HEST entry with the FIRMWARE_FIRST flag set and\ndisable the native AER service altogether if this function returns\n\u0027true\u0027.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5a37f1381f1d8625fa458360c9b5d17f0c5f1dea",
      "tree": "864084823661c558594dc08d9bf89e5280aecfc4",
      "parents": [
        "50c1126ee1990920705a067a6f3f9bb892369b08"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 07 14:32:38 2010 +0000"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:48 2010 -0700"
      },
      "message": "PCI hotplug: ibmphp-hpc: semaphore cleanup\n\nGet rid of init_MUTEX[_LOCKED]() and use sema_init() instead.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "50c1126ee1990920705a067a6f3f9bb892369b08",
      "tree": "fc03a50f887a8bd72329e49f01b347b9df5b23a2",
      "parents": [
        "991f739544a0923b70fb69b115edb880ff9fcc4a"
      ],
      "author": {
        "name": "Bill Pemberton",
        "email": "wfp5p@virginia.edu",
        "time": "Tue Aug 03 15:18:43 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:48 2010 -0700"
      },
      "message": "PCI: aerdrv: fix uninitialized variable warning\n\nquiet the warning about use of uninitialized e_src in\naer_isr()  e_src is initialized by get_e_source()\n\nSigned-off-by: Bill Pemberton \u003cwfp5p@virginia.edu\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "991f739544a0923b70fb69b115edb880ff9fcc4a",
      "tree": "74ebd40122d120e058d9f245ac5e3c989c40ef3a",
      "parents": [
        "93e75faba3982767d425323aec5726282d3ad7a2"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Jul 04 00:02:28 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:47 2010 -0700"
      },
      "message": "PCI: kill BKL in /proc/pci\n\nAll operations in the pci procfs ioctl functions are\natomic, so no lock is needed here.\n\nAlso add a compat_ioctl method, since all the commands\nare compatible in 32 bit mode.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: linux-pci@vger.kernel.org\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "93e75faba3982767d425323aec5726282d3ad7a2",
      "tree": "afe0d48677a09c71357293f612fb495983193c37",
      "parents": [
        "8fd01d6cfbf75465d84a4e533ed70c5f57b3ff51"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Aug 05 22:23:16 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Oct 15 13:09:46 2010 -0700"
      },
      "message": "PCI: Adjust confusing if indentation in pcie_get_readrq\n\nIndent the branch of an if.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r disable braces4@\nposition p1,p2;\nstatement S1,S2;\n@@\n\n(\nif (...) { ... }\n|\nif (...) S1@p1 S2@p2\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\n@@\n\nif (p1[0].column \u003d\u003d p2[0].column):\n  cocci.print_main(\"branch\",p1)\n  cocci.print_secs(\"after\",p2)\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": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "1a0730d6649113c820217387a011a17dd4aff3ad",
      "tree": "3b5240cb87605a72179885d1503f8f7297e4e224",
      "parents": [
        "d585d060b42bd36f6f0b23ff327d3b91f80c7139"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 11 11:55:37 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:42 2010 +0200"
      },
      "message": "x86: Speed up the irq_remapped check in hot pathes\n\nirq_2_iommu is in struct irq_cfg, so we can do the irq_remapped check\nbased on irq_cfg instead of going through a lookup function. That\u0027s\nespecially interesting in the eoi_ioapic_irq() hotpath.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d585d060b42bd36f6f0b23ff327d3b91f80c7139",
      "tree": "0fc66dae7c0c9dd8b9c4498c03a158fd3ce71e9b",
      "parents": [
        "349d67673c08cbc299a69086b0f5447cf1094e9b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 12:34:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:42 2010 +0200"
      },
      "message": "intr_remap: Simplify the code further\n\nHaving irq_2_iommu in struct irq_cfg allows further simplifications.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "349d67673c08cbc299a69086b0f5447cf1094e9b",
      "tree": "6598e36307508626d8c8e6661787f6b9e842cdaf",
      "parents": [
        "423f085952fd7253407cb92984cc2d495a564481"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 12:29:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "intr_remap: Use irq_2_iommu in struct irq_cfg\n\nSwitch the intr_remapping code to use the irq_2_iommu struct in\nirg_cfg.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "423f085952fd7253407cb92984cc2d495a564481",
      "tree": "3cd1d0d986d2136a5a4083cdf72c424881ca754f",
      "parents": [
        "d0ad63927c6d4d511e172c78ba4a623539ef6901"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 11:39:09 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "x86: Embedd irq_2_iommu into irq_cfg\n\nThat interrupt remapping code is x86 specific and tied to the io_apic\ncode. No need for separate allocator functions in the interrupt\nremapping code. This allows to simplify the code and irq_2_iommu is\nsmall (13 bytes on 64bit) so it\u0027s not a real problem even if interrupt\nremapping is runtime disabled. If it\u0027s compile time disabled the\nimpact is zero.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d0ad63927c6d4d511e172c78ba4a623539ef6901",
      "tree": "f82d2f5b27f5c260c5e2cb3b2cb7b31be5c0f7c4",
      "parents": [
        "a8ef54aeb4308d3730ff31807c495390b98de16a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 18:41:37 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr_remap: Remove unused functions\n\nNo users.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a8ef54aeb4308d3730ff31807c495390b98de16a",
      "tree": "09e6af4cb4af33edf141585f539be6a6e787b9ba",
      "parents": [
        "0e1e367aab873becf3e21d9b0cf46d11154ebc3f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 16:51:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr_remap: Use irq_data\n\nNo need to dereference irq_desc.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0e1e367aab873becf3e21d9b0cf46d11154ebc3f",
      "tree": "b7a5e766ed9325dca8c0e62708fb082c7d10107a",
      "parents": [
        "bc5fdf9f3aad37406b3c8d635a7940cd65de0c12"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 16:20:16 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr-remap: Free irte memory if SPARSE_IRQ\u003dy\n\nWith SPARSE_IRQ\u003dy the irte descriptors are dynamically allocated, but not\nfreed in free_irte().\n\nThat was ok as long as the sparse irq core was not freeing irq descriptors on\ndestroy_irq(). Now we leak the irte descriptor. Free it in free_irte().\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e9f7ac664bfc36685a8eb3315ec21c067d0cee36",
      "tree": "91d89ce151996d8a1e508a17f9b8a461ef545afd",
      "parents": [
        "5c2837fbaa609e615ef9a1c58a4cd26ce90be35b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 17:22:09 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:37 2010 +0200"
      },
      "message": "ht: Convert to new irq_chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5c2837fbaa609e615ef9a1c58a4cd26ce90be35b",
      "tree": "0284a243fce7607a8f01ed0189e2164efdaa5bc8",
      "parents": [
        "d0fbca8f9304d1760fdc906b35b06e89fbdbb51f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 17:15:11 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:37 2010 +0200"
      },
      "message": "dmar: Convert to new irq chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "39431acb1a4c464e62471cb3058b8ffffb9244db",
      "tree": "ae655b4763f5a801b67b98d9131df534bcdd58d8",
      "parents": [
        "1c9db52534a2c0e9776788cd34ccc193289fc18c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 19:09:51 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:34 2010 +0200"
      },
      "message": "pci: Cleanup the irq_desc mess in msi\n\nHanding down irq_desc to msi just so that msi can access\nirq_desc.irq_data.msi_desc is a pretty stupid idea. The calling code\ncan hand down a pointer to msi_desc so msi code does not need to know\nabout the irq descriptor at all.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1c9db52534a2c0e9776788cd34ccc193289fc18c",
      "tree": "5cca6ab7d72bee784c425879a5f17b4c6fe1c5d8",
      "parents": [
        "7c5f13519a67aa7ba3a99155f128d4bdef87d087"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 16:46:51 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:34 2010 +0200"
      },
      "message": "pci: Convert msi to new irq_chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "613655fa39ff6957754fa8ceb8559980920eb8ee",
      "tree": "ad19600cb81207b24188683d7fc4ae88013339d1",
      "parents": [
        "609146fdb319cebce93be550938ab852f7bade90"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:04 2010 +0200"
      },
      "message": "drivers: autoconvert trivial BKL users to private mutex\n\nAll these files use the big kernel lock in a trivial\nway to serialize their private file operations,\ntypically resulting from an earlier semi-automatic\npushdown from VFS.\n\nNone of these drivers appears to want to lock against\nother code, and they all use the BKL as the top-level\nlock in their file operations, meaning that there\nis no lock-order inversion problem.\n\nConsequently, we can remove the BKL completely,\nreplacing it with a per-file mutex in every case.\nUsing a scripted approach means we can avoid\ntypos.\n\nThese drivers do not seem to be under active\nmaintainance from my brief investigation. Apologies\nto those maintainers that I have missed.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "9587a678fa56ea6d7f39b048f24f5d03a89bf9b3",
      "tree": "5d56bd510b235188fc7243cce23b48211dd30777",
      "parents": [
        "e9a64ed4994db04c9963495b03d8a86538e3ad55",
        "4731fdcf6f7bdab3e369a3f844d4ea4d4017284d"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 23:30:58 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 23:30:58 2010 -0400"
      },
      "message": "Merge branch \u0027meego-7093\u0027 into idle-release\n"
    },
    {
      "commit": "0d70397bc72f2122f9702093cce3039ec3ae7575",
      "tree": "777ed3793d6fa999cbe700ae09181efec8d076a4",
      "parents": [
        "a2724f28d9f99b7b42e800b528902f0e3321873b",
        "0e52247a2ed1f211f0c4f682dc999610a368903f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:02:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:02:22 2010 -0700"
      },
      "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: fix pci_resource_alignment prototype\n"
    },
    {
      "commit": "bc5fbd9cc8b72ea591557c1277237a43c65ce775",
      "tree": "804e63e1ac08c4e3324cc1b456f71cf286db98e4",
      "parents": [
        "6a6aa2b7e47c725b5256ff0f7462fe1247cabf5a",
        "eecfd57f6429d9d8e10be186566ef99fced55163"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:25:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:25:10 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: Use symbolic values instead of magic numbers in Lenovo w/a\n  intel-iommu: Abort IOMMU setup for igfx if BIOS gave no shadow GTT space\n"
    },
    {
      "commit": "4731fdcf6f7bdab3e369a3f844d4ea4d4017284d",
      "tree": "0073886d3be72f38143f9d1909cc4204dd64c03f",
      "parents": [
        "2422084a94fcd5038406261b331672a13c92c050"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Sep 24 21:02:27 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Sep 24 21:09:19 2010 -0400"
      },
      "message": "intel_idle: PCI quirk to prevent Lenovo Ideapad s10-3 boot hang\n\nWhen the Lenovo Ideapad S10-3 is booted with HT enabled,\nit hits a boot hang in the intel_idle driver.\n\nThis occurs when entering ATM-C4 for the first time,\nunless BM_STS is first cleared.\n\nacpi_idle doesn\u0027t see this because it first checks\nand clears BM_STS, but it would hit the same hang\nif that check were disabled.\n\nhttp://bugs.meego.com/show_bug.cgi?id\u003d7093\nhttps://bugs.launchpad.net/ubuntu/+source/linux/+bug/634702\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "df08cdc7ef606509debe7677c439be0ca48790e4",
      "tree": "f97031deaba02e5c464871568604e908df7fe209",
      "parents": [
        "e85bfd3aa7a34fa963bb268a676b41694e6dcf96"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Sep 22 13:05:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 22 17:22:39 2010 -0700"
      },
      "message": "drivers/pci/intel-iommu.c: fix build with older gcc\u0027s\n\ndrivers/pci/intel-iommu.c: In function `__iommu_calculate_agaw\u0027:\ndrivers/pci/intel-iommu.c:437: sorry, unimplemented: inlining failed in call to \u0027width_to_agaw\u0027: function body not available\ndrivers/pci/intel-iommu.c:445: sorry, unimplemented: called from here\n\nMove the offending function (and its siblings) to top-of-file, remove the\nforward declaration.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d17441\n\nReported-by: Martin Mokrejs \u003cmmokrejs@ribosome.natur.cuni.cz\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eecfd57f6429d9d8e10be186566ef99fced55163",
      "tree": "35551f0505dbd39820ffd618d225efa058882f3e",
      "parents": [
        "9eecabcb9a924f1e11ba670365fd4babe423045c"
      ],
      "author": {
        "name": "Adam Jackson",
        "email": "ajax@redhat.com",
        "time": "Wed Aug 25 21:17:34 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:35:28 2010 +0100"
      },
      "message": "intel-iommu: Use symbolic values instead of magic numbers in Lenovo w/a\n\nCommit 9eecabcb9a924f1e11ba670365fd4babe423045c (\"intel-iommu: Abort \nIOMMU setup for igfx if BIOS gave no shadow GTT space\") uses a bunch of \nmagic numbers. Provide #defines for those to make it look slightly saner.\n\nSigned-off-by: Adam Jackson \u003cajax@redhat.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "9eecabcb9a924f1e11ba670365fd4babe423045c",
      "tree": "860699db6130f062fdbb94da94e352029c145e40",
      "parents": [
        "b30a3f6257ed2105259b404d419b4964e363928c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:28:23 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:28:23 2010 +0100"
      },
      "message": "intel-iommu: Abort IOMMU setup for igfx if BIOS gave no shadow GTT space\n\nYet another BIOS bug; Lenovo this time (X201). Red Hat bug #593516.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "0e52247a2ed1f211f0c4f682dc999610a368903f",
      "tree": "32fcfe3f8590856c5a3d994604890412b164b3c6",
      "parents": [
        "d56557af19867edb8c0e96f8e26399698a08857f"
      ],
      "author": {
        "name": "Cam Macdonell",
        "email": "cam@cs.ualberta.ca",
        "time": "Tue Sep 07 17:25:20 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 09 13:41:25 2010 -0700"
      },
      "message": "PCI: fix pci_resource_alignment prototype\n\nThis fixes the prototype for both pci_resource_alignment() and\npci_sriov_resource_alignment().\n\nPatch started as debugging effort from Cam Macdonell.\n\nCc: Cam Macdonell \u003ccam@cs.ualberta.ca\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\n[chrisw: add iov bits]\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d56557af19867edb8c0e96f8e26399698a08857f",
      "tree": "2d98f87962a5a08839371ed90b9eaa7f256bea36",
      "parents": [
        "fa2925cf90e612cb9c10c45d0cb8a7c7332e56a7",
        "17134d96735115644cc2f0e2b1bab51ca6e3ab95"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "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: bus speed strings should be const\n  PCI hotplug: Fix build with CONFIG_ACPI unset\n  PCI: PCIe: Remove the port driver module exit routine\n  PCI: PCIe: Move PCIe PME code to the pcie directory\n  PCI: PCIe: Disable PCIe port services during port initialization\n  PCI: PCIe: Ask BIOS for control of all native services at once\n  ACPI/PCI: Negotiate _OSC control bits before requesting them\n  ACPI/PCI: Do not preserve _OSC control bits returned by a query\n  ACPI/PCI: Make acpi_pci_query_osc() return control bits\n  ACPI/PCI: Reorder checks in acpi_pci_osc_control_set()\n  PCI: PCIe: Introduce commad line switch for disabling port services\n  PCI: PCIe AER: Introduce pci_aer_available()\n  x86/PCI: only define pci_domain_nr if PCI and PCI_DOMAINS are set\n  PCI: provide stub pci_domain_nr function for !CONFIG_PCI configs\n"
    },
    {
      "commit": "17134d96735115644cc2f0e2b1bab51ca6e3ab95",
      "tree": "887e91efc6f9618c8fad82a5ecb9d0820ad233dc",
      "parents": [
        "6e63e80d88521a176989ed14b420f42dc418e46a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Aug 31 15:25:55 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 31 15:28:00 2010 -0700"
      },
      "message": "PCI: bus speed strings should be const\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4db77ff3237a88ea74f691dd776e92b2f86a8f3f",
      "tree": "eeafdd3213e4a54674c241ea57bb0a4431755ea5",
      "parents": [
        "22e6daf41ba28ddc06295e42859b266f737b3e99"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Aug 26 13:58:04 2010 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Aug 26 15:14:40 2010 -0700"
      },
      "message": "x86, VT-d: Make Intel VT-d IOMMU use IOMMU_INIT_* macros.\n\nWe utilize the IOMMU_INIT macros to create this dependency:\n\n               [null]\n                 |\n       [pci_xen_swiotlb_detect]\n                 |\n       [pci_swiotlb_detect_override]\n                 |\n       [pci_swiotlb_detect_4gb]\n                 |\n         +-------+--------+---------------------+\n        /                  \\                     \\\n[detect_calgary]    [gart_iommu_hole_init]   [detect_intel_iommu]\n                            |\n                    [amd_iommu_detect]\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLKML-Reference: \u003c1282845485-8991-10-git-send-email-konrad.wilk@oracle.com\u003e\nCC: Fujita Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCC: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCC: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCC: Len Brown \u003clen.brown@intel.com\u003e\nCC: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCC: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "480125ba49ba62be93beea37770f266846e077ab",
      "tree": "6e4437d77e352f5b03d1e00171bd77086378b01a",
      "parents": [
        "0444ad93ea2449963132d68753020a6a24d69895"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Aug 26 13:57:57 2010 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Aug 26 15:13:13 2010 -0700"
      },
      "message": "x86, iommu: Make all IOMMU\u0027s detection routines return a value.\n\nWe return 1 if the IOMMU has been detected. Zero or an error number\nif we failed to find it. This is in preperation of using the IOMMU_INIT\nso that we can detect whether an IOMMU is present. I have not\ntested this for regression on Calgary, nor on AMD Vi chipsets as\nI don\u0027t have that hardware.\n\nCC: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCC: \"Jon D. Mason\" \u003cjdmason@kudzu.us\u003e\nCC: \"Darrick J. Wong\" \u003cdjwong@us.ibm.com\u003e\nCC: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCC: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCC: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCC: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCC: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nCC: H. Peter Anvin \u003chpa@zytor.com\u003e\nCC: Fujita Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLKML-Reference: \u003c1282845485-8991-3-git-send-email-konrad.wilk@oracle.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "6e63e80d88521a176989ed14b420f42dc418e46a",
      "tree": "09f41fcc62e314806deaf7761cfad24e3667959e",
      "parents": [
        "a9d2a6df11f5b9dc19ad4147374e8b67c4438158"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Aug 25 21:33:29 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Aug 25 12:54:03 2010 -0700"
      },
      "message": "PCI hotplug: Fix build with CONFIG_ACPI unset\n\nOne of the recent changes caused complilation of\ndrivers/pci/hotplug/pciehp_core.c to fail.  Fix this issue.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a9d2a6df11f5b9dc19ad4147374e8b67c4438158",
      "tree": "44595bbe685feb81e3730895e1edfbc8e3a9572a",
      "parents": [
        "271fb719cc472af3b1e96d8c527bb0da7060a172"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Sat Aug 21 01:59:10 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:49 2010 -0700"
      },
      "message": "PCI: PCIe: Remove the port driver module exit routine\n\nThe PCIe port driver\u0027s module exit routine is never used, so drop it.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "271fb719cc472af3b1e96d8c527bb0da7060a172",
      "tree": "7ca665285206b6868040f41bba7693d2de157c0a",
      "parents": [
        "2bd50dd800b52245294cfceb56be62020cdc7515"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:58:22 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:48 2010 -0700"
      },
      "message": "PCI: PCIe: Move PCIe PME code to the pcie directory\n\nThe PCIe PME code only consists of one file, so it doesn\u0027t need to\noccupy its own directory.  Move it to drivers/pci/pcie/pme.c and\nremove the contents of drivers/pci/pcie/pme .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2bd50dd800b52245294cfceb56be62020cdc7515",
      "tree": "ffefb8e50f9e454f332f318c415085ca2911991b",
      "parents": [
        "28eb5f274a305bf3a13b2c80c4804d4515d05c64"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:57:39 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:47 2010 -0700"
      },
      "message": "PCI: PCIe: Disable PCIe port services during port initialization\n\nIn principle PCIe port services may be enabled by the BIOS, so it\u0027s\nbetter to disable them during port initialization to avoid spurious\nevents from being generated.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "28eb5f274a305bf3a13b2c80c4804d4515d05c64",
      "tree": "c878c8a90a8f8e59b90460eb2f47bbbddfbd5483",
      "parents": [
        "75fb60f26befb59dbfa05cb122972642b7bdd219"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 22:02:38 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:33 2010 -0700"
      },
      "message": "PCI: PCIe: Ask BIOS for control of all native services at once\n\nAfter commit 852972acff8f10f3a15679be2059bb94916cba5d (ACPI: Disable\nASPM if the platform won\u0027t provide _OSC control for PCIe) control of\nthe PCIe Capability Structure is unconditionally requested by\nacpi_pci_root_add(), which in principle may cause problems to\nhappen in two ways.  First, the BIOS may refuse to give control of\nthe PCIe Capability Structure if it is not asked for any of the\n_OSC features depending on it at the same time.  Second, the BIOS may\nassume that control of the _OSC features depending on the PCIe\nCapability Structure will be requested in the future and may behave\nincorrectly if that doesn\u0027t happen.  For this reason, control of\nthe PCIe Capability Structure should always be requested along with\ncontrol of any other _OSC features that may depend on it (ie. PCIe\nnative PME, PCIe native hot-plug, PCIe AER).\n\nRework the PCIe port driver so that (1) it checks which native PCIe\nport services can be enabled, according to the BIOS, and (2) it\nrequests control of all these services simultaneously.  In\nparticular, this causes pcie_portdrv_probe() to fail if the BIOS\nrefuses to grant control of the PCIe Capability Structure, which\nmeans that no native PCIe port services can be enabled for the PCIe\nRoot Complex the given port belongs to.  If that happens, ASPM is\ndisabled to avoid problems with mishandling it by the part of the\nPCIe hierarchy for which control of the PCIe Capability Structure\nhas not been received.\n\nMake it possible to override this behavior using \u0027pcie_ports\u003dnative\u0027\n(use the PCIe native services regardless of the BIOS response to the\ncontrol request), or \u0027pcie_ports\u003dcompat\u0027 (do not use the PCIe native\nservices at all).\n\nAccordingly, rework the existing PCIe port service drivers so that\nthey don\u0027t request control of the services directly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "75fb60f26befb59dbfa05cb122972642b7bdd219",
      "tree": "be015dd00e7748e45f3691f04a16c204546b3026",
      "parents": [
        "2b8fd9186d9275b07aef43e5bb4e98cd571f9a7d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Aug 23 23:53:11 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:44:40 2010 -0700"
      },
      "message": "ACPI/PCI: Negotiate _OSC control bits before requesting them \n\nIt is possible that the BIOS will not grant control of all _OSC\nfeatures requested via acpi_pci_osc_control_set(), so it is\nrecommended to negotiate the final set of _OSC features with the\nquery flag set before calling _OSC to request control of these\nfeatures.\n\nTo implement it, rework acpi_pci_osc_control_set() so that the caller\ncan specify the mask of _OSC control bits to negotiate and the mask\nof _OSC control bits that are absolutely necessary to it.  Then,\nacpi_pci_osc_control_set() will run _OSC queries in a loop until\nthe mask of _OSC control bits returned by the BIOS is equal to the\nmask passed to it.  Also, before running the _OSC request\nacpi_pci_osc_control_set() will check if the caller\u0027s required\ncontrol bits are present in the final mask.\n\nUsing this mechanism we will be able to avoid situations in which the\nBIOS doesn\u0027t grant control of certain _OSC features, because they\ndepend on some other _OSC features that have not been requested.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "79dd9182db2072d63ccf160bb9a3463b1c952723",
      "tree": "89069b3803a4e07924c6fd4414bbd2a771a432e9",
      "parents": [
        "f1a7bfaf6bb9cb195577e674c0ab2fd0a55d9014"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:51:44 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:43:15 2010 -0700"
      },
      "message": "PCI: PCIe: Introduce commad line switch for disabling port services\n\nIntroduce kernel command line switch pcie_ports\u003d allowing one to\ndisable all of the native PCIe port services, so that PCIe ports\nare treated like PCI-to-PCI bridges.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f1a7bfaf6bb9cb195577e674c0ab2fd0a55d9014",
      "tree": "8150335e1d70d026704f39c28921615d5af9701e",
      "parents": [
        "23b90cfd7bcf8ae1c0711df1cae7dfec3c01aec8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:50:52 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:43:08 2010 -0700"
      },
      "message": "PCI: PCIe AER: Introduce pci_aer_available()\n\nIntroduce a function allowing the caller to check whether to try to\nenable PCIe AER.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e2e96c663639a3361bb1a84e666887d308c6c87e",
      "tree": "7c28b1e5baaff4741d974193ba30f1c53992596f",
      "parents": [
        "7355a5a654ccbbfd2fd11bb1e2389910f786ea92",
        "1a8bd481bfba30515b54368d90a915db3faf302f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:34:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:34:20 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: Fix 32-bit build warning with __cmpxchg()\n  intr-remap: allow disabling source id checking\n"
    },
    {
      "commit": "dcded10f6dce10411b16134ce9cc87bfdf75c13f",
      "tree": "da6d0face147072c9eadc8a01af4e49958769138",
      "parents": [
        "9e0ba741aabdf129d561e62d207c75146adef5e8",
        "b0ebeb9c09cb5b84bb2f33927c84c7648845fcec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 21:00:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 21:00:07 2010 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (30 commits)\n  DMAENGINE: at_hdmac: locking fixlet\n  DMAENGINE: pch_dma: kill another usage of __raw_{read|write}l\n  dma: dmatest: fix potential sign bug\n  ioat2: catch and recover from broken vtd configurations v6\n  DMAENGINE: add runtime slave control to COH 901 318 v3\n  DMAENGINE: add runtime slave config to DMA40 v3\n  DMAENGINE: generic slave channel control v3\n  dmaengine: Driver for Topcliff PCH DMA controller\n  intel_mid: Add Mrst \u0026 Mfld DMA Drivers\n  drivers/dma: Eliminate a NULL pointer dereference\n  dma/timb_dma: compile warning on 32 bit\n  DMAENGINE: ste_dma40: support older silicon\n  DMAENGINE: ste_dma40: support disabling physical channels\n  DMAENGINE: ste_dma40: no disabled phy channels on ux500\n  DMAENGINE: ste_dma40: fix suspend bug\n  DMAENGINE: ste_dma40: add DB8500 memcpy channels\n  DMAENGINE: ste_dma40: no flow control on memcpy\n  DMAENGINE: ste_dma40: arch updates for LCLA and LCPA\n  DMAENGINE: ste_dma40: allocate LCLA dynamically\n  DMAENGINE: ste_dma40: no premature stop\n  ...\n\nFix up trivial conflicts in arch/arm/mach-ux500/devices-db8500.c\n"
    },
    {
      "commit": "1a8bd481bfba30515b54368d90a915db3faf302f",
      "tree": "e90098ad46912fbe78fbbd09a2715cc3d6daf36a",
      "parents": [
        "d1423d5679875ebbbc2fc63b33d465baceee0430"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 10 01:38:53 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 10 01:38:53 2010 +0100"
      },
      "message": "intel-iommu: Fix 32-bit build warning with __cmpxchg()\n\ndrivers/pci/intel-iommu.c: In function \u0027dma_pte_addr\u0027:\ndrivers/pci/intel-iommu.c:239: warning: passing argument 1 of \u0027__cmpxchg64\u0027 from incompatible pointer type\n\nIt seems that __cmpxchg64() now cares about the type of its pointer argument,\nso give it a (uint64_t *) instead of a pointer to a structure which contains\nonly that.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    }
  ],
  "next": "d1423d5679875ebbbc2fc63b33d465baceee0430"
}
