)]}'
{
  "log": [
    {
      "commit": "f991fae5c6d42dfc5029150b05a78cf3f6c18cc9",
      "tree": "d140deb437bde0631778b4984eeb72c1f4ee0c1d",
      "parents": [
        "d4141531f63a29bb2a980092b6f2828c385e6edd",
        "2c843bd92ec276ecb68504b3b5ffa7066183f032"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 14:35:40 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 14:35:40 2013 -0700"
      },
      "message": "Merge tag \u0027pm+acpi-3.11-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management and ACPI updates from Rafael Wysocki:\n \"This time the total number of ACPI commits is slightly greater than\n  the number of cpufreq commits, but Viresh Kumar (who works on cpufreq)\n  remains the most active patch submitter.\n\n  To me, the most significant change is the addition of offline/online\n  device operations to the driver core (with the Greg\u0027s blessing) and\n  the related modifications of the ACPI core hotplug code.  Next are the\n  freezer updates from Colin Cross that should make the freezing of\n  tasks a bit less heavy weight.\n\n  We also have a couple of regression fixes, a number of fixes for\n  issues that have not been identified as regressions, two new drivers\n  and a bunch of cleanups all over.\n\n  Highlights:\n\n   - Hotplug changes to support graceful hot-removal failures.\n\n     It sometimes is necessary to fail device hot-removal operations\n     gracefully if they cannot be carried out completely.  For example,\n     if memory from a memory module being hot-removed has been allocated\n     for the kernel\u0027s own use and cannot be moved elsewhere, it\u0027s\n     desirable to fail the hot-removal operation in a graceful way\n     rather than to crash the kernel, but currenty a success or a kernel\n     crash are the only possible outcomes of an attempted memory\n     hot-removal.  Needless to say, that is not a very attractive\n     alternative and it had to be addressed.\n\n     However, in order to make it work for memory, I first had to make\n     it work for CPUs and for this purpose I needed to modify the ACPI\n     processor driver.  It\u0027s been split into two parts, a resident one\n     handling the low-level initialization/cleanup and a modular one\n     playing the actual driver\u0027s role (but it binds to the CPU system\n     device objects rather than to the ACPI device objects representing\n     processors).  That\u0027s been sort of like a live brain surgery on a\n     patient who\u0027s riding a bike.\n\n     So this is a little scary, but since we found and fixed a couple of\n     regressions it caused to happen during the early linux-next testing\n     (a month ago), nobody has complained.\n\n     As a bonus we remove some duplicated ACPI hotplug code, because the\n     ACPI-based CPU hotplug is now going to use the common ACPI hotplug\n     code.\n\n   - Lighter weight freezing of tasks.\n\n     These changes from Colin Cross and Mandeep Singh Baines are\n     targeted at making the freezing of tasks a bit less heavy weight\n     operation.  They reduce the number of tasks woken up every time\n     during the freezing, by using the observation that the freezer\n     simply doesn\u0027t need to wake up some of them and wait for them all\n     to call refrigerator().  The time needed for the freezer to decide\n     to report a failure is reduced too.\n\n     Also reintroduced is the check causing a lockdep warining to\n     trigger when try_to_freeze() is called with locks held (which is\n     generally unsafe and shouldn\u0027t happen).\n\n   - cpufreq updates\n\n     First off, a commit from Srivatsa S Bhat fixes a resume regression\n     introduced during the 3.10 cycle causing some cpufreq sysfs\n     attributes to return wrong values to user space after resume.  The\n     fix is kind of fresh, but also it\u0027s pretty obvious once Srivatsa\n     has identified the root cause.\n\n     Second, we have a new freqdomain_cpus sysfs attribute for the\n     acpi-cpufreq driver to provide information previously available via\n     related_cpus.  From Lan Tianyu.\n\n     Finally, we fix a number of issues, mostly related to the\n     CPUFREQ_POSTCHANGE notifier and cpufreq Kconfig options and clean\n     up some code.  The majority of changes from Viresh Kumar with bits\n     from Jacob Shin, Heiko Stübner, Xiaoguang Chen, Ezequiel Garcia,\n     Arnd Bergmann, and Tang Yuantian.\n\n   - ACPICA update\n\n     A usual bunch of updates from the ACPICA upstream.\n\n     During the 3.4 cycle we introduced support for ACPI 5 extended\n     sleep registers, but they are only supposed to be used if the\n     HW-reduced mode bit is set in the FADT flags and the code attempted\n     to use them without checking that bit.  That caused suspend/resume\n     regressions to happen on some systems.  Fix from Lv Zheng causes\n     those registers to be used only if the HW-reduced mode bit is set.\n\n     Apart from this some other ACPICA bugs are fixed and code cleanups\n     are made by Bob Moore, Tomasz Nowicki, Lv Zheng, Chao Guan, and\n     Zhang Rui.\n\n   - cpuidle updates\n\n     New driver for Xilinx Zynq processors is added by Michal Simek.\n\n     Multidriver support simplification, addition of some missing\n     kerneldoc comments and Kconfig-related fixes come from Daniel\n     Lezcano.\n\n   - ACPI power management updates\n\n     Changes to make suspend/resume work correctly in Xen guests from\n     Konrad Rzeszutek Wilk, sparse warning fix from Fengguang Wu and\n     cleanups and fixes of the ACPI device power state selection\n     routine.\n\n   - ACPI documentation updates\n\n     Some previously missing pieces of ACPI documentation are added by\n     Lv Zheng and Aaron Lu (hopefully, that will help people to\n     uderstand how the ACPI subsystem works) and one outdated doc is\n     updated by Hanjun Guo.\n\n   - Assorted ACPI updates\n\n     We finally nailed down the IA-64 issue that was the reason for\n     reverting commit 9f29ab11ddbf (\"ACPI / scan: do not match drivers\n     against objects having scan handlers\"), so we can fix it and move\n     the ACPI scan handler check added to the ACPI video driver back to\n     the core.\n\n     A mechanism for adding CMOS RTC address space handlers is\n     introduced by Lan Tianyu to allow some EC-related breakage to be\n     fixed on some systems.\n\n     A spec-compliant implementation of acpi_os_get_timer() is added by\n     Mika Westerberg.\n\n     The evaluation of _STA is added to do_acpi_find_child() to avoid\n     situations in which a pointer to a disabled device object is\n     returned instead of an enabled one with the same _ADR value.  From\n     Jeff Wu.\n\n     Intel BayTrail PCH (Platform Controller Hub) support is added to\n     the ACPI driver for Intel Low-Power Subsystems (LPSS) and that\n     driver is modified to work around a couple of known BIOS issues.\n     Changes from Mika Westerberg and Heikki Krogerus.\n\n     The EC driver is fixed by Vasiliy Kulikov to use get_user() and\n     put_user() instead of dereferencing user space pointers blindly.\n\n     Code cleanups are made by Bjorn Helgaas, Nicholas Mazzuca and Toshi\n     Kani.\n\n   - Assorted power management updates\n\n     The \"runtime idle\" helper routine is changed to take the return\n     values of the callbacks executed by it into account and to call\n     rpm_suspend() if they return 0, which allows us to reduce the\n     overall code bloat a bit (by dropping some code that\u0027s not\n     necessary any more after that modification).\n\n     The runtime PM documentation is updated by Alan Stern (to reflect\n     the \"runtime idle\" behavior change).\n\n     New trace points for PM QoS are added by Sahara\n     (\u003ckeun-o.park@windriver.com\u003e).\n\n     PM QoS documentation is updated by Lan Tianyu.\n\n     Code cleanups are made and minor issues are addressed by Bernie\n     Thompson, Bjorn Helgaas, Julius Werner, and Shuah Khan.\n\n   - devfreq updates\n\n     New driver for the Exynos5-bus device from Abhilash Kesavan.\n\n     Minor cleanups, fixes and MAINTAINERS update from MyungJoo Ham,\n     Abhilash Kesavan, Paul Bolle, Rajagopal Venkat, and Wei Yongjun.\n\n   - OMAP power management updates\n\n     Adaptive Voltage Scaling (AVS) SmartReflex voltage control driver\n     updates from Andrii Tseglytskyi and Nishanth Menon.\"\n\n* tag \u0027pm+acpi-3.11-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (162 commits)\n  cpufreq: Fix cpufreq regression after suspend/resume\n  ACPI / PM: Fix possible NULL pointer deref in acpi_pm_device_sleep_state()\n  PM / Sleep: Warn about system time after resume with pm_trace\n  cpufreq: don\u0027t leave stale policy pointer in cdbs-\u003ecur_policy\n  acpi-cpufreq: Add new sysfs attribute freqdomain_cpus\n  cpufreq: make sure frequency transitions are serialized\n  ACPI: implement acpi_os_get_timer() according the spec\n  ACPI / EC: Add HP Folio 13 to ec_dmi_table in order to skip DSDT scan\n  ACPI: Add CMOS RTC Operation Region handler support\n  ACPI / processor: Drop unused variable from processor_perflib.c\n  cpufreq: tegra: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: s3c64xx: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: omap: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: imx6q: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: exynos: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: dbx500: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: davinci: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: arm-big-little: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: powernow-k8: call CPUFREQ_POSTCHANGE notfier in error cases\n  cpufreq: pcc: call CPUFREQ_POSTCHANGE notfier in error cases\n  ...\n"
    },
    {
      "commit": "bfd63cd24df69120585c22e09fda78723772ee2a",
      "tree": "e81b06eb3b5f9b4270d995bdf15758e9895cd62b",
      "parents": [
        "6a2c123427ffece4174db0792c3009e7df770d9a"
      ],
      "author": {
        "name": "Michael Opdenacker",
        "email": "michael.opdenacker@free-electrons.com",
        "time": "Wed Jun 26 05:57:06 2013 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Jun 25 21:20:41 2013 -0700"
      },
      "message": "driver core: device.h: fix doc compilation warnings\n\nThis patch fixes the below 3 warnings running \"make htmldocs\",\nby adding descriptions for recently added structure members:\n\nDOCPROC Documentation/DocBook/device-drivers.xml\nWarning(/work/git.free-electrons.com/users/michael-opdenacker/linux//include/linux/device.h:116): No description found for parameter \u0027lock_key\u0027\nWarning(/work/git.free-electrons.com/users/michael-opdenacker/linux//include/linux/device.h:723): No description found for parameter \u0027cma_area\u0027\nWarning(/work/git.free-electrons.com/users/michael-opdenacker/linux//include/linux/device.h:723): No description found for parameter \u0027iommu_group\u0027\n\nDon\u0027t hesitate to propose better descriptions!\n\nSigned-off-by: Michael Opdenacker \u003cmichael.opdenacker@free-electrons.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "4f3549d72d1b5c90ecc7e673402f38f4486d22c2",
      "tree": "bec88e98010e129f4105cab3ff0e490166e1cbe3",
      "parents": [
        "dd3652ed1a5328a91352409fe81af3e7d629e44b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Thu May 02 22:15:29 2013 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Sun May 12 14:14:09 2013 +0200"
      },
      "message": "Driver core: Add offline/online device operations\n\nIn some cases, graceful hot-removal of devices is not possible,\nalthough in principle the devices in question support hotplug.\nFor example, that may happen for the last CPU in the system or\nfor memory modules holding kernel memory.\n\nIn those cases it is nice to be able to check if the given device\ncan be gracefully hot-removed before triggering a removal procedure\nthat cannot be aborted or reversed.  Unfortunately, however, the\nkernel currently doesn\u0027t provide any support for that.\n\nTo address that deficiency, introduce support for offline and\nonline operations that can be performed on devices, respectively,\nbefore a hot-removal and in case when it is necessary (or convenient)\nto put a device back online after a successful offline (that has not\nbeen followed by removal).  The idea is that the offline will fail\nwhenever the given device cannot be gracefully removed from the\nsystem and it will not be allowed to use the device after a\nsuccessful offline (until a subsequent online) in analogy with the\nexisting CPU offline/online mechanism.\n\nFor now, the offline and online operations are introduced at the\nbus type level, as that should be sufficient for the most urgent use\ncases (CPUs and memory modules).  In the future, however, the\napproach may be extended to cover some more complicated device\noffline/online scenarios involving device drivers etc.\n\nThe lock_device_hotplug() and unlock_device_hotplug() functions are\nintroduced because subsequent patches need to put larger pieces of\ncode under device_hotplug_lock to prevent race conditions between\ndevice offline and removal from happening.\n\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nReviewed-by: Toshi Kani \u003ctoshi.kani@hp.com\u003e\n"
    },
    {
      "commit": "251df49db3327c64bf917bfdba94491fde2b4ee0",
      "tree": "71eef72e1c393057f7b14cc4d8da5e48c7728336",
      "parents": [
        "8a72f3820c4d14b27ad5336aed00063a7a7f1bef",
        "bf61c8840efe60fd8f91446860b63338fb424158"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 13:20:04 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 13:20:04 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull input updates from Dmitry Torokhov:\n \"Assorted fixes and cleanups to the existing drivers plus a new driver\n  for IMS Passenger Control Unit device they use for ther in-flight\n  entertainment system.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (44 commits)\n  Input: trackpoint - Optimize trackpoint init to use power-on reset\n  Input: apbps2 - convert to devm_ioremap_resource()\n  Input: ALPS - use %ph to print buffers\n  ARM - shmobile: Armadillo800EVA: Move st1232 reset pin handling\n  Input: st1232 - add reset pin handling\n  Input: st1232 - convert to devm_* infrastructure\n  Input: MT - handle semi-mt devices in core\n  Input: adxl34x - use spi_get_drvdata()\n  Input: ad7877 - use spi_get_drvdata() and spi_set_drvdata()\n  Input: ads7846 - use spi_get_drvdata() and spi_set_drvdata()\n  Input: ims-pcu - fix a memory leak on error\n  Input: sysrq - supplement reset sequence with timeout functionality\n  Input: tegra-kbc - support for defining row/columns based on SoC\n  Input: imx_keypad - switch to using managed resources\n  Input: arc_ps2 - add support for device tree\n  Input: mma8450 - fix signed 12bits to 32bits conversion\n  Input: eeti_ts - remove redundant null check\n  Input: edt-ft5x06 - remove redundant null check before kfree\n  Input: ad714x - add CONFIG_PM_SLEEP to suspend/resume functions\n  Input: adxl34x - add CONFIG_PM_SLEEP to suspend/resume functions\n  ...\n"
    },
    {
      "commit": "46d9be3e5eb01f71fc02653755d970247174b400",
      "tree": "01534c9ebfa5f52a7133e34354d2831fe6704f15",
      "parents": [
        "ce8aa48929449b491149b6c87861ac69cb797a42",
        "cece95dfe5aa56ba99e51b4746230ff0b8542abd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 19:07:40 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 19:07:40 2013 -0700"
      },
      "message": "Merge branch \u0027for-3.10\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull workqueue updates from Tejun Heo:\n \"A lot of activities on workqueue side this time.  The changes achieve\n  the followings.\n\n   - WQ_UNBOUND workqueues - the workqueues which are per-cpu - are\n     updated to be able to interface with multiple backend worker pools.\n     This involved a lot of churning but the end result seems actually\n     neater as unbound workqueues are now a lot closer to per-cpu ones.\n\n   - The ability to interface with multiple backend worker pools are\n     used to implement unbound workqueues with custom attributes.\n     Currently the supported attributes are the nice level and CPU\n     affinity.  It may be expanded to include cgroup association in\n     future.  The attributes can be specified either by calling\n     apply_workqueue_attrs() or through /sys/bus/workqueue/WQ_NAME/* if\n     the workqueue in question is exported through sysfs.\n\n     The backend worker pools are keyed by the actual attributes and\n     shared by any workqueues which share the same attributes.  When\n     attributes of a workqueue are changed, the workqueue binds to the\n     worker pool with the specified attributes while leaving the work\n     items which are already executing in its previous worker pools\n     alone.\n\n     This allows converting custom worker pool implementations which\n     want worker attribute tuning to use workqueues.  The writeback pool\n     is already converted in block tree and there are a couple others\n     are likely to follow including btrfs io workers.\n\n   - WQ_UNBOUND\u0027s ability to bind to multiple worker pools is also used\n     to make it NUMA-aware.  Because there\u0027s no association between work\n     item issuer and the specific worker assigned to execute it, before\n     this change, using unbound workqueue led to unnecessary cross-node\n     bouncing and it couldn\u0027t be helped by autonuma as it requires tasks\n     to have implicit node affinity and workers are assigned randomly.\n\n     After these changes, an unbound workqueue now binds to multiple\n     NUMA-affine worker pools so that queued work items are executed in\n     the same node.  This is turned on by default but can be disabled\n     system-wide or for individual workqueues.\n\n     Crypto was requesting NUMA affinity as encrypting data across\n     different nodes can contribute noticeable overhead and doing it\n     per-cpu was too limiting for certain cases and IO throughput could\n     be bottlenecked by one CPU being fully occupied while others have\n     idle cycles.\n\n  While the new features required a lot of changes including\n  restructuring locking, it didn\u0027t complicate the execution paths much.\n  The unbound workqueue handling is now closer to per-cpu ones and the\n  new features are implemented by simply associating a workqueue with\n  different sets of backend worker pools without changing queue,\n  execution or flush paths.\n\n  As such, even though the amount of change is very high, I feel\n  relatively safe in that it isn\u0027t likely to cause subtle issues with\n  basic correctness of work item execution and handling.  If something\n  is wrong, it\u0027s likely to show up as being associated with worker pools\n  with the wrong attributes or OOPS while workqueue attributes are being\n  changed or during CPU hotplug.\n\n  While this creates more backend worker pools, it doesn\u0027t add too many\n  more workers unless, of course, there are many workqueues with unique\n  combinations of attributes.  Assuming everything else is the same,\n  NUMA awareness costs an extra worker pool per NUMA node with online\n  CPUs.\n\n  There are also a couple things which are being routed outside the\n  workqueue tree.\n\n   - block tree pulled in workqueue for-3.10 so that writeback worker\n     pool can be converted to unbound workqueue with sysfs control\n     exposed.  This simplifies the code, makes writeback workers\n     NUMA-aware and allows tuning nice level and CPU affinity via sysfs.\n\n   - The conversion to workqueue means that there\u0027s no 1:1 association\n     between a specific worker, which makes writeback folks unhappy as\n     they want to be able to tell which filesystem caused a problem from\n     backtrace on systems with many filesystems mounted.  This is\n     resolved by allowing work items to set debug info string which is\n     printed when the task is dumped.  As this change involves unifying\n     implementations of dump_stack() and friends in arch codes, it\u0027s\n     being routed through Andrew\u0027s -mm tree.\"\n\n* \u0027for-3.10\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (84 commits)\n  workqueue: use kmem_cache_free() instead of kfree()\n  workqueue: avoid false negative WARN_ON() in destroy_workqueue()\n  workqueue: update sysfs interface to reflect NUMA awareness and a kernel param to disable NUMA affinity\n  workqueue: implement NUMA affinity for unbound workqueues\n  workqueue: introduce put_pwq_unlocked()\n  workqueue: introduce numa_pwq_tbl_install()\n  workqueue: use NUMA-aware allocation for pool_workqueues\n  workqueue: break init_and_link_pwq() into two functions and introduce alloc_unbound_pwq()\n  workqueue: map an unbound workqueues to multiple per-node pool_workqueues\n  workqueue: move hot fields of workqueue_struct to the end\n  workqueue: make workqueue-\u003ename[] fixed len\n  workqueue: add workqueue-\u003eunbound_attrs\n  workqueue: determine NUMA node of workers accourding to the allowed cpumask\n  workqueue: drop \u0027H\u0027 from kworker names of unbound worker pools\n  workqueue: add wq_numa_tbl_len and wq_numa_possible_cpumask[]\n  workqueue: move pwq_pool_locking outside of get/put_unbound_pool()\n  workqueue: fix memory leak in apply_workqueue_attrs()\n  workqueue: fix unbound workqueue attrs hashing / comparison\n  workqueue: fix race condition in unbound workqueue free path\n  workqueue: remove pwq_lock which is no longer used\n  ...\n"
    },
    {
      "commit": "4e4098a3e08783cfd75f9fcdab276dc1d46931da",
      "tree": "d0befddb4d6f999a443ef60ae8af327bed046fd5",
      "parents": [
        "d81c8d19da8fb6514c75d5c19334f4236856c561"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Apr 11 11:43:29 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Apr 11 11:43:29 2013 -0700"
      },
      "message": "driver core: handle user namespaces properly with the uid/gid devtmpfs change\n\nNow that devtmpfs is caring about uid/gid, we need to use the correct\ninternal types so users who have USER_NS enabled will have things work\nproperly for them.\n\nThanks to Eric for pointing this out, and the patch review.\n\nReported-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Kay Sievers \u003ckay@vrfy.org\u003e\nCc: Ming Lei \u003cming.lei@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "3c2670e6515cf584810f417db9b00992c8b2d75a",
      "tree": "bc13c7babc6c8f08b6a82d0b3848778b264d9651",
      "parents": [
        "bb2b0051d7b0772ea9d0b4be900c2d965093f5d7"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay@vrfy.org",
        "time": "Sat Apr 06 09:56:00 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Apr 08 08:21:48 2013 -0700"
      },
      "message": "driver core: add uid and gid to devtmpfs\n\nSome drivers want to tell userspace what uid and gid should be used for\ntheir device nodes, so allow that information to percolate through the\ndriver core to userspace in order to make this happen.  This means that\nsome systems (i.e.  Android and friends) will not need to even run a\nudev-like daemon for their device node manager and can just rely in\ndevtmpfs fully, reducing their footprint even more.\n\nSigned-off-by: Kay Sievers \u003ckay@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "688d794c4c3f8b08c814381ee2edd3ede5856056",
      "tree": "ef680add71e2a9588d07d8b594edbc1b5cd127d7",
      "parents": [
        "16142655269aaf580488e074eabfdcf0fb4e3687",
        "a937536b868b8369b98967929045f1df54234323"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Mar 17 19:40:50 2013 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Mar 17 19:40:50 2013 -0700"
      },
      "message": "Merge tag \u0027v3.9-rc3\u0027 into next\n\nMerge with mainline to bring in module_platform_driver_probe() and\ndevm_ioremap_resource().\n"
    },
    {
      "commit": "be871b7e54711479d3b9d3617d49898770830db2",
      "tree": "9d15f0b2ec2cbe3d431ee540f6d651b504e9b179",
      "parents": [
        "f6161aa153581da4a3867a2d1a7caf4be19b6ec9"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Tue Mar 12 17:21:19 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Mar 13 08:48:28 2013 -0700"
      },
      "message": "device: separate all subsys mutexes\n\nca22e56d (driver-core: implement \u0027sysdev\u0027 functionality for regular\ndevices and buses) has introduced bus_register macro with a static\nkey to distinguish different subsys mutex classes.\n\nThis however doesn\u0027t work for different subsys which use a common\nregistering function. One example is subsys_system_register (and\nmce_device and cpu_device).\n\nIn the end this leads to the following lockdep splat:\n[  207.271924] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[  207.271932] [ INFO: possible circular locking dependency detected ]\n[  207.271942] 3.9.0-rc1-0.7-default+ #34 Not tainted\n[  207.271948] -------------------------------------------------------\n[  207.271957] bash/10493 is trying to acquire lock:\n[  207.271963]  (subsys mutex){+.+.+.}, at: [\u003cffffffff8134af27\u003e] bus_remove_device+0x37/0x1c0\n[  207.271987]\n[  207.271987] but task is already holding lock:\n[  207.271995]  (cpu_hotplug.lock){+.+.+.}, at: [\u003cffffffff81046ccf\u003e] cpu_hotplug_begin+0x2f/0x60\n[  207.272012]\n[  207.272012] which lock already depends on the new lock.\n[  207.272012]\n[  207.272023]\n[  207.272023] the existing dependency chain (in reverse order) is:\n[  207.272033]\n[  207.272033] -\u003e #4 (cpu_hotplug.lock){+.+.+.}:\n[  207.272044]        [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.272056]        [\u003cffffffff814ad807\u003e] mutex_lock_nested+0x37/0x360\n[  207.272069]        [\u003cffffffff81046ba9\u003e] get_online_cpus+0x29/0x40\n[  207.272082]        [\u003cffffffff81185210\u003e] drain_all_stock+0x30/0x150\n[  207.272094]        [\u003cffffffff811853da\u003e] mem_cgroup_reclaim+0xaa/0xe0\n[  207.272104]        [\u003cffffffff8118775e\u003e] __mem_cgroup_try_charge+0x51e/0xcf0\n[  207.272114]        [\u003cffffffff81188486\u003e] mem_cgroup_charge_common+0x36/0x60\n[  207.272125]        [\u003cffffffff811884da\u003e] mem_cgroup_newpage_charge+0x2a/0x30\n[  207.272135]        [\u003cffffffff81150531\u003e] do_wp_page+0x231/0x830\n[  207.272147]        [\u003cffffffff8115151e\u003e] handle_pte_fault+0x19e/0x8d0\n[  207.272157]        [\u003cffffffff81151da8\u003e] handle_mm_fault+0x158/0x1e0\n[  207.272166]        [\u003cffffffff814b6153\u003e] do_page_fault+0x2a3/0x4e0\n[  207.272178]        [\u003cffffffff814b2578\u003e] page_fault+0x28/0x30\n[  207.272189]\n[  207.272189] -\u003e #3 (\u0026mm-\u003emmap_sem){++++++}:\n[  207.272199]        [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.272208]        [\u003cffffffff8114c5ad\u003e] might_fault+0x6d/0x90\n[  207.272218]        [\u003cffffffff811a11e3\u003e] filldir64+0xb3/0x120\n[  207.272229]        [\u003cffffffffa013fc19\u003e] call_filldir+0x89/0x130 [ext3]\n[  207.272248]        [\u003cffffffffa0140377\u003e] ext3_readdir+0x6b7/0x7e0 [ext3]\n[  207.272263]        [\u003cffffffff811a1519\u003e] vfs_readdir+0xa9/0xc0\n[  207.272273]        [\u003cffffffff811a15cb\u003e] sys_getdents64+0x9b/0x110\n[  207.272284]        [\u003cffffffff814bb599\u003e] system_call_fastpath+0x16/0x1b\n[  207.272296]\n[  207.272296] -\u003e #2 (\u0026type-\u003ei_mutex_dir_key#3){+.+.+.}:\n[  207.272309]        [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.272319]        [\u003cffffffff814ad807\u003e] mutex_lock_nested+0x37/0x360\n[  207.272329]        [\u003cffffffff8119c254\u003e] link_path_walk+0x6f4/0x9a0\n[  207.272339]        [\u003cffffffff8119e7fa\u003e] path_openat+0xba/0x470\n[  207.272349]        [\u003cffffffff8119ecf8\u003e] do_filp_open+0x48/0xa0\n[  207.272358]        [\u003cffffffff8118d81c\u003e] file_open_name+0xdc/0x110\n[  207.272369]        [\u003cffffffff8118d885\u003e] filp_open+0x35/0x40\n[  207.272378]        [\u003cffffffff8135c76e\u003e] _request_firmware+0x52e/0xb20\n[  207.272389]        [\u003cffffffff8135cdd6\u003e] request_firmware+0x16/0x20\n[  207.272399]        [\u003cffffffffa03bdb91\u003e] request_microcode_fw+0x61/0xd0 [microcode]\n[  207.272416]        [\u003cffffffffa03bd554\u003e] microcode_init_cpu+0x104/0x150 [microcode]\n[  207.272431]        [\u003cffffffffa03bd61c\u003e] mc_device_add+0x7c/0xb0 [microcode]\n[  207.272444]        [\u003cffffffff8134a419\u003e] subsys_interface_register+0xc9/0x100\n[  207.272457]        [\u003cffffffffa04fc0f4\u003e] 0xffffffffa04fc0f4\n[  207.272472]        [\u003cffffffff81000202\u003e] do_one_initcall+0x42/0x180\n[  207.272485]        [\u003cffffffff810bbeff\u003e] load_module+0x19df/0x1b70\n[  207.272499]        [\u003cffffffff810bc376\u003e] sys_init_module+0xe6/0x130\n[  207.272511]        [\u003cffffffff814bb599\u003e] system_call_fastpath+0x16/0x1b\n[  207.272523]\n[  207.272523] -\u003e #1 (umhelper_sem){++++.+}:\n[  207.272537]        [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.272548]        [\u003cffffffff814ae9c4\u003e] down_read+0x34/0x50\n[  207.272559]        [\u003cffffffff81062bff\u003e] usermodehelper_read_trylock+0x4f/0x100\n[  207.272575]        [\u003cffffffff8135c7dd\u003e] _request_firmware+0x59d/0xb20\n[  207.272587]        [\u003cffffffff8135cdd6\u003e] request_firmware+0x16/0x20\n[  207.272599]        [\u003cffffffffa03bdb91\u003e] request_microcode_fw+0x61/0xd0 [microcode]\n[  207.272613]        [\u003cffffffffa03bd554\u003e] microcode_init_cpu+0x104/0x150 [microcode]\n[  207.272627]        [\u003cffffffffa03bd61c\u003e] mc_device_add+0x7c/0xb0 [microcode]\n[  207.272641]        [\u003cffffffff8134a419\u003e] subsys_interface_register+0xc9/0x100\n[  207.272654]        [\u003cffffffffa04fc0f4\u003e] 0xffffffffa04fc0f4\n[  207.272666]        [\u003cffffffff81000202\u003e] do_one_initcall+0x42/0x180\n[  207.272678]        [\u003cffffffff810bbeff\u003e] load_module+0x19df/0x1b70\n[  207.272690]        [\u003cffffffff810bc376\u003e] sys_init_module+0xe6/0x130\n[  207.272702]        [\u003cffffffff814bb599\u003e] system_call_fastpath+0x16/0x1b\n[  207.272715]\n[  207.272715] -\u003e #0 (subsys mutex){+.+.+.}:\n[  207.272729]        [\u003cffffffff810ae002\u003e] __lock_acquire+0x13b2/0x15f0\n[  207.272740]        [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.272751]        [\u003cffffffff814ad807\u003e] mutex_lock_nested+0x37/0x360\n[  207.272763]        [\u003cffffffff8134af27\u003e] bus_remove_device+0x37/0x1c0\n[  207.272775]        [\u003cffffffff81349114\u003e] device_del+0x134/0x1f0\n[  207.272786]        [\u003cffffffff813491f2\u003e] device_unregister+0x22/0x60\n[  207.272798]        [\u003cffffffff814a24ea\u003e] mce_cpu_callback+0x15e/0x1ad\n[  207.272812]        [\u003cffffffff814b6402\u003e] notifier_call_chain+0x72/0x130\n[  207.272824]        [\u003cffffffff81073d6e\u003e] __raw_notifier_call_chain+0xe/0x10\n[  207.272839]        [\u003cffffffff81498f76\u003e] _cpu_down+0x1d6/0x350\n[  207.272851]        [\u003cffffffff81499130\u003e] cpu_down+0x40/0x60\n[  207.272862]        [\u003cffffffff8149cc55\u003e] store_online+0x75/0xe0\n[  207.272874]        [\u003cffffffff813474a0\u003e] dev_attr_store+0x20/0x30\n[  207.272886]        [\u003cffffffff812090d9\u003e] sysfs_write_file+0xd9/0x150\n[  207.272900]        [\u003cffffffff8118e10b\u003e] vfs_write+0xcb/0x130\n[  207.272911]        [\u003cffffffff8118e924\u003e] sys_write+0x64/0xa0\n[  207.272923]        [\u003cffffffff814bb599\u003e] system_call_fastpath+0x16/0x1b\n[  207.272936]\n[  207.272936] other info that might help us debug this:\n[  207.272936]\n[  207.272952] Chain exists of:\n[  207.272952]   subsys mutex --\u003e \u0026mm-\u003emmap_sem --\u003e cpu_hotplug.lock\n[  207.272952]\n[  207.272973]  Possible unsafe locking scenario:\n[  207.272973]\n[  207.272984]        CPU0                    CPU1\n[  207.272992]        ----                    ----\n[  207.273000]   lock(cpu_hotplug.lock);\n[  207.273009]                                lock(\u0026mm-\u003emmap_sem);\n[  207.273020]                                lock(cpu_hotplug.lock);\n[  207.273031]   lock(subsys mutex);\n[  207.273040]\n[  207.273040]  *** DEADLOCK ***\n[  207.273040]\n[  207.273055] 5 locks held by bash/10493:\n[  207.273062]  #0:  (\u0026buffer-\u003emutex){+.+.+.}, at: [\u003cffffffff81209049\u003e] sysfs_write_file+0x49/0x150\n[  207.273080]  #1:  (s_active#150){.+.+.+}, at: [\u003cffffffff812090c2\u003e] sysfs_write_file+0xc2/0x150\n[  207.273099]  #2:  (x86_cpu_hotplug_driver_mutex){+.+.+.}, at: [\u003cffffffff81027557\u003e] cpu_hotplug_driver_lock+0x17/0x20\n[  207.273121]  #3:  (cpu_add_remove_lock){+.+.+.}, at: [\u003cffffffff8149911c\u003e] cpu_down+0x2c/0x60\n[  207.273140]  #4:  (cpu_hotplug.lock){+.+.+.}, at: [\u003cffffffff81046ccf\u003e] cpu_hotplug_begin+0x2f/0x60\n[  207.273158]\n[  207.273158] stack backtrace:\n[  207.273170] Pid: 10493, comm: bash Not tainted 3.9.0-rc1-0.7-default+ #34\n[  207.273180] Call Trace:\n[  207.273192]  [\u003cffffffff810ab373\u003e] print_circular_bug+0x223/0x310\n[  207.273204]  [\u003cffffffff810ae002\u003e] __lock_acquire+0x13b2/0x15f0\n[  207.273216]  [\u003cffffffff812086b0\u003e] ? sysfs_hash_and_remove+0x60/0xc0\n[  207.273227]  [\u003cffffffff810ae329\u003e] lock_acquire+0xe9/0x120\n[  207.273239]  [\u003cffffffff8134af27\u003e] ? bus_remove_device+0x37/0x1c0\n[  207.273251]  [\u003cffffffff814ad807\u003e] mutex_lock_nested+0x37/0x360\n[  207.273263]  [\u003cffffffff8134af27\u003e] ? bus_remove_device+0x37/0x1c0\n[  207.273274]  [\u003cffffffff812086b0\u003e] ? sysfs_hash_and_remove+0x60/0xc0\n[  207.273286]  [\u003cffffffff8134af27\u003e] bus_remove_device+0x37/0x1c0\n[  207.273298]  [\u003cffffffff81349114\u003e] device_del+0x134/0x1f0\n[  207.273309]  [\u003cffffffff813491f2\u003e] device_unregister+0x22/0x60\n[  207.273321]  [\u003cffffffff814a24ea\u003e] mce_cpu_callback+0x15e/0x1ad\n[  207.273332]  [\u003cffffffff814b6402\u003e] notifier_call_chain+0x72/0x130\n[  207.273344]  [\u003cffffffff81073d6e\u003e] __raw_notifier_call_chain+0xe/0x10\n[  207.273356]  [\u003cffffffff81498f76\u003e] _cpu_down+0x1d6/0x350\n[  207.273368]  [\u003cffffffff81027557\u003e] ? cpu_hotplug_driver_lock+0x17/0x20\n[  207.273380]  [\u003cffffffff81499130\u003e] cpu_down+0x40/0x60\n[  207.273391]  [\u003cffffffff8149cc55\u003e] store_online+0x75/0xe0\n[  207.273402]  [\u003cffffffff813474a0\u003e] dev_attr_store+0x20/0x30\n[  207.273413]  [\u003cffffffff812090d9\u003e] sysfs_write_file+0xd9/0x150\n[  207.273425]  [\u003cffffffff8118e10b\u003e] vfs_write+0xcb/0x130\n[  207.273436]  [\u003cffffffff8118e924\u003e] sys_write+0x64/0xa0\n[  207.273447]  [\u003cffffffff814bb599\u003e] system_call_fastpath+0x16/0x1b\n\nWhich reports a false possitive deadlock because it sees:\n1) load_module -\u003e subsys_interface_register -\u003e mc_deveice_add (*) -\u003e subsys-\u003ep-\u003emutex -\u003e link_path_walk -\u003e lookup_slow -\u003e i_mutex\n2) sys_write -\u003e _cpu_down -\u003e cpu_hotplug_begin -\u003e cpu_hotplug.lock -\u003e mce_cpu_callback -\u003e mce_device_remove(**) -\u003e device_unregister -\u003e bus_remove_device -\u003e subsys mutex\n3) vfs_readdir -\u003e i_mutex -\u003e filldir64 -\u003e might_fault -\u003e might_lock_read(mmap_sem) -\u003e page_fault -\u003e mmap_sem -\u003e drain_all_stock -\u003e cpu_hotplug.lock\n\nbut\n1) takes cpu_subsys subsys (*) but 2) takes mce_device subsys (**) so\nthe deadlock is not possible AFAICS.\n\nThe fix is quite simple. We can pull the key inside bus_type structure\nbecause they are defined per device so the pointer will be unique as\nwell. bus_register doesn\u0027t need to be a macro anymore so change it\nto the inline. We could get rid of __bus_register as there is no other\ncaller but maybe somebody will want to use a different key so keep it\naround for now.\n\nReported-by: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d73ce004225a7b2ed75f4340bb63721d55552265",
      "tree": "fa4b2ab4f064412018589307b988567a713b6d96",
      "parents": [
        "6dbe51c251a327e012439c4772097a13df43c5b8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 12 11:30:05 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 12 11:36:35 2013 -0700"
      },
      "message": "driver/base: implement subsys_virtual_register()\n\nKay tells me the most appropriate place to expose workqueues to\nuserland would be /sys/devices/virtual/workqueues/WQ_NAME which is\nsymlinked to /sys/bus/workqueue/devices/WQ_NAME and that we\u0027re lacking\na way to do that outside of driver core as virtual_device_parent()\nisn\u0027t exported and there\u0027s no inteface to conveniently create a\nvirtual subsystem.\n\nThis patch implements subsys_virtual_register() by factoring out\nsubsys_register() from subsys_system_register() and using it with\nvirtual_device_parent() as the origin directory.  It\u0027s identical to\nsubsys_system_register() other than the origin directory but we aren\u0027t\ngonna restrict the device names which should be used under it.\n\nThis will be used to expose workqueue attributes to userland.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\n"
    },
    {
      "commit": "d6b0c58048d2c8c6f4955c37f670125b2792cd14",
      "tree": "a22d3680ebcaca7681f647ac0ab050ef1f51c968",
      "parents": [
        "7241443f67bb352183bcfd7e3b807b87f2777b5d"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Feb 23 13:11:14 2013 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Feb 25 23:02:42 2013 -0800"
      },
      "message": "devres: allow adding custom actions to the stack\n\nSometimes drivers need to execute one-off actions in their error handling\nor device teardown paths. An example would be toggling a GPIO line to\nreset the controlled device into predefined state.\n\nTo allow performing such actions when using managed resources let\u0027s allow\nadding them to stack/group of devres resources.\n\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\n"
    },
    {
      "commit": "06991c28f37ad68e5c03777f5c3b679b56e3dac1",
      "tree": "4be75788e21c3c644fe6d39abf47693a171cf4f8",
      "parents": [
        "460dc1eecf37263c8e3b17685ef236f0d236facb",
        "74fef7a8fd1d2bd94f925d6638bb4c3049e7c381"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "message": "Merge tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core patches from Greg Kroah-Hartman:\n \"Here is the big driver core merge for 3.9-rc1\n\n  There are two major series here, both of which touch lots of drivers\n  all over the kernel, and will cause you some merge conflicts:\n\n   - add a new function called devm_ioremap_resource() to properly be\n     able to check return values.\n\n   - remove CONFIG_EXPERIMENTAL\n\n  Other than those patches, there\u0027s not much here, some minor fixes and\n  updates\"\n\nFix up trivial conflicts\n\n* tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)\n  base: memory: fix soft/hard_offline_page permissions\n  drivercore: Fix ordering between deferred_probe and exiting initcalls\n  backlight: fix class_find_device() arguments\n  TTY: mark tty_get_device call with the proper const values\n  driver-core: constify data for class_find_device()\n  firmware: Ignore abort check when no user-helper is used\n  firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER\n  firmware: Make user-mode helper optional\n  firmware: Refactoring for splitting user-mode helper code\n  Driver core: treat unregistered bus_types as having no devices\n  watchdog: Convert to devm_ioremap_resource()\n  thermal: Convert to devm_ioremap_resource()\n  spi: Convert to devm_ioremap_resource()\n  power: Convert to devm_ioremap_resource()\n  mtd: Convert to devm_ioremap_resource()\n  mmc: Convert to devm_ioremap_resource()\n  mfd: Convert to devm_ioremap_resource()\n  media: Convert to devm_ioremap_resource()\n  iommu: Convert to devm_ioremap_resource()\n  drm: Convert to devm_ioremap_resource()\n  ...\n"
    },
    {
      "commit": "9f3b795a626ee79574595e06d1437fe0c7d51d29",
      "tree": "1952cb2ac880c0e66f291916815c2a36b4ceb300",
      "parents": [
        "807be03cae191cb88e2f267adcd49aba785c658b"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Fri Feb 01 20:40:17 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Feb 06 12:18:56 2013 -0800"
      },
      "message": "driver-core: constify data for class_find_device()\n\nAll in-kernel users of class_find_device() don\u0027t really need mutable\ndata for match callback.\n\nIn two places (kernel/power/suspend_test.c, drivers/scsi/osd/osd_uld.c)\nthis patch changes match callbacks to use const search data.\n\nThe const is propagated to rtc_class_open() and power_supply_get_by_name()\nparameters.\n\nNote that there\u0027s a dev reference leak in suspend_test.c that\u0027s not\ntouched in this patch.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "ab78029ecc347debbd737f06688d788bd9d60c1d",
      "tree": "affc1f843abc1897ccf2723cf077be343c2845e2",
      "parents": [
        "684697cbbcd076b8fde78d8863e341700533b542"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Jan 22 10:56:14 2013 -0700"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Jan 23 16:39:51 2013 +0100"
      },
      "message": "drivers/pinctrl: grab default handles from device core\n\nThis makes the device core auto-grab the pinctrl handle and set\nthe \"default\" (PINCTRL_STATE_DEFAULT) state for every device\nthat is present in the device model right before probe. This will\naccount for the lion\u0027s share of embedded silicon devcies.\n\nA modification of the semantics for pinctrl_get() is also done:\npreviously if the pinctrl handle for a certain device was already\ntaken, the pinctrl core would return an error. Now, since the\ncore may have already default-grabbed the handle and set its\nstate to \"default\", if the handle was already taken, this will\nbe disregarded and the located, previously instanitated handle\nwill be returned to the caller.\n\nThis way all code in drivers explicitly requesting their pinctrl\nhandlers will still be functional, and drivers that want to\nexplicitly retrieve and switch their handles can still do that.\nBut if the desired functionality is just boilerplate of this\ntype in the probe() function:\n\nstruct pinctrl  *p;\n\np \u003d devm_pinctrl_get_select_default(\u0026dev);\nif (IS_ERR(p)) {\n   if (PTR_ERR(p) \u003d\u003d -EPROBE_DEFER)\n        return -EPROBE_DEFER;\n        dev_warn(\u0026dev, \"no pinctrl handle\\n\");\n}\n\nThe discussion began with the addition of such boilerplate\nto the omap4 keypad driver:\nhttp://marc.info/?l\u003dlinux-input\u0026m\u003d135091157719300\u0026w\u003d2\n\nA previous approach using notifiers was discussed:\nhttp://marc.info/?l\u003dlinux-kernel\u0026m\u003d135263661110528\u0026w\u003d2\nThis failed because it could not handle deferred probes.\n\nThis patch alone does not solve the entire dilemma faced:\nwhether code should be distributed into the drivers or\nif it should be centralized to e.g. a PM domain. But it\nsolves the immediate issue of the addition of boilerplate\nto a lot of drivers that just want to grab the default\nstate. As mentioned, they can later explicitly retrieve\nthe handle and set different states, and this could as\nwell be done by e.g. PM domains as it is only related\nto a certain struct device * pointer.\n\nChangeLog v4-\u003ev5 (Stephen):\n- Simplified the devicecore grab code.\n- Deleted a piece of documentation recommending that pins\n  be mapped to a device rather than hogged.\nChangeLog v3-\u003ev4 (Linus):\n- Drop overzealous NULL checks.\n- Move kref initialization to pinctrl_create().\n- Seeking Tested-by from Stephen Warren so we do not disturb\n  the Tegra platform.\n- Seeking ACK on this from Greg (and others who like it) so I\n  can merge it through the pinctrl subsystem.\nChangeLog v2-\u003ev3 (Linus):\n- Abstain from using IS_ERR_OR_NULL() in the driver core,\n  Russell recently sent a patch to remove it. Handle the\n  NULL case explicitly even though it\u0027s a bogus case.\n- Make sure we handle probe deferral correctly in the device\n  core file. devm_kfree() the container on error so we don\u0027t\n  waste memory for devices without pinctrl handles.\n- Introduce reference counting into the pinctrl core using\n  \u003clinux/kref.h\u003e so that we don\u0027t release pinctrl handles\n  that have been obtained for two or more places.\nChangeLog v1-\u003ev2 (Linus):\n- Only store a pointer in the device struct, and only allocate\n  this if it\u0027s really used by the device.\n\nCc: Felipe Balbi \u003cbalbi@ti.com\u003e\nCc: Benoit Cousson \u003cb-cousson@ti.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nCc: Mitch Bradley \u003cwmb@firmworks.com\u003e\nCc: Ulf Hansson \u003culf.hansson@linaro.org\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Jean-Christophe PLAGNIOL-VILLARD \u003cplagnioj@jcrosoft.com\u003e\nCc: Rickard Andersson \u003crickard.andersson@stericsson.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n[swarren: fixed and simplified error-handling in pinctrl_bind_pins(), to\ncorrectly handle deferred probe. Removed admonition from docs not to use\npinctrl hogs for devices]\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "75096579c3ac39ddc2f8b0d9a8924eba31f4d920",
      "tree": "15d50607ffc22358fdbf98ed61e0962c589779a9",
      "parents": [
        "771d394fbd3af266c01813b40a82cec6c80af98d"
      ],
      "author": {
        "name": "Thierry Reding",
        "email": "thierry.reding@avionic-design.de",
        "time": "Mon Jan 21 11:08:54 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Jan 22 09:41:43 2013 -0800"
      },
      "message": "lib: devres: Introduce devm_ioremap_resource()\n\nThe devm_request_and_ioremap() function is very useful and helps avoid a\nwhole lot of boilerplate. However, one issue that keeps popping up is\nits lack of a specific error code to determine which of the steps that\nit performs failed. Furthermore, while the function gives an example and\nsuggests what error code to return on failure, a wide variety of error\ncodes are used throughout the tree.\n\nIn an attempt to fix these problems, this patch adds a new function that\ndrivers can transition to. The devm_ioremap_resource() returns a pointer\nto the remapped I/O memory on success or an ERR_PTR() encoded error code\non failure. Callers can check for failure using IS_ERR() and determine\nits cause by extracting the error code using PTR_ERR().\n\ndevm_request_and_ioremap() is implemented as a wrapper around the new\nAPI and return NULL on failure as before. This ensures that backwards\ncompatibility is maintained until all users have been converted to the\nnew API, at which point the old devm_request_and_ioremap() function\nshould be removed.\n\nA semantic patch is included which can be used to convert from the old\ndevm_request_and_ioremap() API to the new devm_ioremap_resource() API.\nSome non-trivial cases may require manual intervention, though.\n\nSigned-off-by: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "2d9c8b5d6a5f5f7a6111cc68a050b5b44729376b",
      "tree": "9382e643df9d4115637ca320822702bb06130c1f",
      "parents": [
        "17bc14b767cf0692420c43dbe5310ae98a5a7836",
        "003db633d6f2d3649ea18652a3c55ad17d4f0e47"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 09:59:59 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 09:59:59 2012 -0800"
      },
      "message": "Merge branch \u0027x86-ras-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 RAS update from Ingo Molnar:\n \"Rework all config variables used throughout the MCA code and collect\n  them together into a mca_config struct.  This keeps them tightly and\n  neatly packed together instead of spilled all over the place.\n\n  Then, convert those which are used as booleans into real booleans and\n  save some space.  These bits are exposed via\n     /sys/devices/system/machinecheck/machinecheck*/\"\n\n* \u0027x86-ras-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, MCA: Finish mca_config conversion\n  x86, MCA: Convert the next three variables batch\n  x86, MCA: Convert rip_msr, mce_bootlog, monarch_timeout\n  x86, MCA: Convert dont_log_ce, banks and tolerant\n  drivers/base: Add a DEVICE_BOOL_ATTR macro\n"
    },
    {
      "commit": "95f8a082b9b1ead0c2859f2a7b1ac91ff63d8765",
      "tree": "b269991cc59baa25b277a873ba264bca8716f129",
      "parents": [
        "f3fd0c8a7fc1e4f3107a09a75e622781d3007b56"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Wed Nov 21 00:21:50 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Wed Nov 21 00:21:50 2012 +0100"
      },
      "message": "ACPI / driver core: Introduce struct acpi_dev_node and related macros\n\nTo avoid adding an ACPI handle pointer to struct device on\narchitectures that don\u0027t use ACPI, or generally when CONFIG_ACPI is\nnot set, in which cases that pointer is useless, define struct\nacpi_dev_node that will contain the handle pointer if CONFIG_ACPI is\nset and will be empty otherwise and use it to represent the ACPI\ndevice node field in struct device.\n\nIn addition to that define macros for reading and setting the ACPI\nhandle of a device that don\u0027t generate code when CONFIG_ACPI is\nunset.  Modify the ACPI subsystem to use those macros instead of\nreferring to the given device\u0027s ACPI handle directly.\n\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\nReviewed-by: Mika Westerberg \u003cmika.westerberg@linux.intel.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "06f64c8f239a47b359c60301914c783b56b32c13",
      "tree": "3381ac14daf445c8c07fff9d130219eb6d8f4d61",
      "parents": [
        "77b67063bb6bce6d475e910d3b886a606d0d91f7"
      ],
      "author": {
        "name": "Mika Westerberg",
        "email": "mika.westerberg@linux.intel.com",
        "time": "Wed Oct 31 22:44:33 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rafael.j.wysocki@intel.com",
        "time": "Thu Nov 15 00:28:00 2012 +0100"
      },
      "message": "driver core / ACPI: Move ACPI support to core device and driver types\n\nWith ACPI 5 we are starting to see devices that don\u0027t natively support\ndiscovery but can be enumerated with the help of the ACPI namespace.\nTypically, these devices can be represented in the Linux device driver\nmodel as platform devices or some serial bus devices, like SPI or I2C\ndevices.\n\nSince we want to re-use existing drivers for those devices, we need a\nway for drivers to specify the ACPI IDs of supported devices, so that\nthey can be matched against device nodes in the ACPI namespace.  To\nthis end, it is sufficient to add a pointer to an array of supported\nACPI device IDs, that can be provided by the driver, to struct device.\n\nMoreover, things like ACPI power management need to have access to\nthe ACPI handle of each supported device, because that handle is used\nto invoke AML methods associated with the corresponding ACPI device\nnode.  The ACPI handles of devices are now stored in the archdata\nmember structure of struct device whose definition depends on the\narchitecture and includes the ACPI handle only on x86 and ia64. Since\nthe pointer to an array of supported ACPI IDs is added to struct\ndevice_driver in an architecture-independent way, it is logical to\nmove the ACPI handle from archdata to struct device itself at the same\ntime.  This also makes code more straightforward in some places and\nfollows the example of Device Trees that have a poiter to struct\ndevice_node in there too.\n\nThis changeset is based on Mika Westerberg\u0027s work.\n\nSigned-off-by: Mika Westerberg \u003cmika.westerberg@linux.intel.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\n"
    },
    {
      "commit": "91872392f08486f692887d2f06a333f512648f22",
      "tree": "24f82690f04c3282c36bc81d60763687badf33c6",
      "parents": [
        "6f0c0580b70c89094b3422ba81118c7b959c7556"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "bp@alien8.de",
        "time": "Tue Oct 09 19:52:05 2012 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "bp@alien8.de",
        "time": "Fri Oct 26 14:37:55 2012 +0200"
      },
      "message": "drivers/base: Add a DEVICE_BOOL_ATTR macro\n\n... which, analogous to DEVICE_INT_ATTR provides functionality to\nset/clear bools. Its purpose is to be used where values need to be used\nas booleans in configuration context.\n\nNext patch uses this.\n\nSigned-off-by: Borislav Petkov \u003cbp@alien8.de\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "16642a2e7be23bbda013fc32d8f6c68982eab603",
      "tree": "346ae485f485f6901e5d8150f0d34d178a7dd448",
      "parents": [
        "51562cba98939da0a1d10fe7c25359b77a069033",
        "b9142167a2bb979b58b98ffcd928a311b55cbd9f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 18:32:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 18:32:35 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.7-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates from Rafael J Wysocki:\n\n - Improved system suspend/resume and runtime PM handling for the SH\n   TMU, CMT and MTU2 clock event devices (also used by ARM/shmobile).\n\n - Generic PM domains framework extensions related to cpuidle support\n   and domain objects lookup using names.\n\n - ARM/shmobile power management updates including improved support for\n   the SH7372\u0027s A4S power domain containing the CPU core.\n\n - cpufreq changes related to AMD CPUs support from Matthew Garrett,\n   Andre Przywara and Borislav Petkov.\n\n - cpu0 cpufreq driver from Shawn Guo.\n\n - cpufreq governor fixes related to the relaxing of limit from Michal\n   Pecio.\n\n - OMAP cpufreq updates from Axel Lin and Richard Zhao.\n\n - cpuidle ladder governor fixes related to the disabling of states from\n   Carsten Emde and me.\n\n - Runtime PM core updates related to the interactions with the system\n   suspend core from Alan Stern and Kevin Hilman.\n\n - Wakeup sources modification allowing more helper functions to be\n   called from interrupt context from John Stultz and additional\n   diagnostic code from Todd Poynor.\n\n - System suspend error code path fix from Feng Hong.\n\nFixed up conflicts in cpufreq/powernow-k8 that stemmed from the\nworkqueue fixes conflicting fairly badly with the removal of support for\nhardware P-state chips.  The changes were independent but somewhat\nintertwined.\n\n* tag \u0027pm-for-3.7-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (76 commits)\n  Revert \"PM QoS: Use spinlock in the per-device PM QoS constraints code\"\n  PM / Runtime: let rpm_resume() succeed if RPM_ACTIVE, even when disabled, v2\n  cpuidle: rename function name \"__cpuidle_register_driver\", v2\n  cpufreq: OMAP: Check IS_ERR() instead of NULL for omap_device_get_by_hwmod_name\n  cpuidle: remove some empty lines\n  PM: Prevent runtime suspend during system resume\n  PM QoS: Use spinlock in the per-device PM QoS constraints code\n  PM / Sleep: use resume event when call dpm_resume_early\n  cpuidle / ACPI : move cpuidle_device field out of the acpi_processor_power structure\n  ACPI / processor: remove pointless variable initialization\n  ACPI / processor: remove unused function parameter\n  cpufreq: OMAP: remove loops_per_jiffy recalculate for smp\n  sections: fix section conflicts in drivers/cpufreq\n  cpufreq: conservative: update frequency when limits are relaxed\n  cpufreq / ondemand: update frequency when limits are relaxed\n  properly __init-annotate pm_sysrq_init()\n  cpufreq: Add a generic cpufreq-cpu0 driver\n  PM / OPP: Initialize OPP table from device tree\n  ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp\n  cpufreq: Remove support for hardware P-state chips from powernow-k8\n  ...\n"
    },
    {
      "commit": "0a18b05043acc01d1d6a4bac459e62c79628881c",
      "tree": "e0a10c9327cb188d84bb42641a4f78a32e61abe4",
      "parents": [
        "e5445ee6a62329f6eb28b8ebd8ff4c4659ca0209"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Sep 25 18:19:57 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Sep 26 13:56:59 2012 -0700"
      },
      "message": "device.h: Add missing inline to #ifndef CONFIG_PRINTK dev_vprintk_emit\n\nAlso add __printf() verification for format string.\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "666f355f3805d68b6ed5f7013806f1f65abfbf03",
      "tree": "a04490ab9e68e4113410b7e7399edb9369545dfe",
      "parents": [
        "05e4e5b87aab74f994acf9dd4bed4a8f1367cd09"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Sep 12 20:14:11 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Sep 17 06:10:05 2012 -0700"
      },
      "message": "device and dynamic_debug: Use dev_vprintk_emit and dev_printk_emit\n\nConvert direct calls of vprintk_emit and printk_emit to the\ndev_ equivalents.\n\nMake create_syslog_header static.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "05e4e5b87aab74f994acf9dd4bed4a8f1367cd09",
      "tree": "e40c6ba66ea821556abbf73a71fa8b55ef73cb63",
      "parents": [
        "c2c5a7051c556036b7beb8f4a89eefdc91c3245b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Sep 12 20:13:37 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Sep 17 06:10:05 2012 -0700"
      },
      "message": "dev: Add dev_vprintk_emit and dev_printk_emit\n\nAdd utility functions to consolidate the use of\ncreate_syslog_header and vprintk_emit.\n\nThis allows conversion of logging functions that\ncall create_syslog_header and then call vprintk_emit\nor printk_emit to the dev_ equivalents.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "798efc60e4276825df34af0e91ecbe0781237834",
      "tree": "8ccec7118a7a76f5731fecb8507643c44936eb49",
      "parents": [
        "8f949b9a7e0bac3a9c3c29dc27c476a87e21db3e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Sep 12 20:11:29 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Sep 17 06:08:30 2012 -0700"
      },
      "message": "dev_dbg/dynamic_debug: Update to use printk_emit, optimize stack\n\ncommit c4e00daaa9\n(\"driver-core: extend dev_printk() to pass structured data\")\nchanged __dev_printk and broke dynamic-debug\u0027s ability to control the\ndynamic prefix of dev_dbg(dev,..).\n\ncommit af7f2158fd\n(\"drivers-core: make structured logging play nice with dynamic-debug\")\nmade a minimal correction.\n\nThe current dynamic debug code uses up to 3 recursion levels via %pV.\nThis can consume quite a bit of stack.  Directly call printk_emit to\nreduce the recursion depth.\n\nThese changes include:\n\ndev_dbg:\no Create and use function create_syslog_header to format the syslog\n  header for printk_emit uses.\no Call create_syslog_header and neaten __dev_printk\no Make __dev_printk static not global\no Remove include header declaration of __dev_printk\no Remove now unused EXPORT_SYMBOL() of __dev_printk\no Whitespace neatening\n\ndynamic_dev_dbg:\no Remove KERN_DEBUG from dynamic_emit_prefix\no Call create_syslog_header and printk_emit\no Whitespace neatening\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "6f586e663e3b3674cadad0d5329424b006a0a289",
      "tree": "410cdc4d25578e0b4eb33661929276b25453358f",
      "parents": [
        "44c8b25fb3b4b67442426abdc2371e750f7a393e"
      ],
      "author": {
        "name": "Hiroshi Doyu",
        "email": "hdoyu@nvidia.com",
        "time": "Tue Sep 04 06:40:40 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Sep 10 20:28:11 2012 -0700"
      },
      "message": "driver-core: Shut up dev_dbg_reatelimited() without DEBUG\n\ndev_dbg_reatelimited() without DEBUG printed \"217078 callbacks\nsuppressed\". This shouldn\u0027t print anything without DEBUG.\n\nWith CONFIG_DYNAMIC_DEBUG, the print should be configured as expected.\n\nSigned-off-by: Hiroshi Doyu \u003chdoyu@nvidia.com\u003e\nReported-by: Hin-Tak Leung \u003chtl10@users.sourceforge.net\u003e\nTested-by: Antti Palosaari \u003ccrope@iki.fi\u003e\nTested-by: Hin-Tak Leung \u003chtl10@users.sourceforge.net\u003e\nAcked-by: Hin-Tak Leung \u003chtl10@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "feb70af0e3ac6817327be70b47731039ea135dbc",
      "tree": "7df6ab174688d8bcc637af0d7a8fc7beb6a1e2aa",
      "parents": [
        "3cb6f10a4d925ec21f414bc30a8aded2830963e5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Aug 13 14:00:25 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Sep 04 01:36:05 2012 +0200"
      },
      "message": "PM: Do not use the syscore flag for runtime PM\n\nThe syscore device PM flag used to mark the devices (belonging to\nPM domains) that should never be turned off, except for the system\ncore (syscore) suspend/hibernation and resume stages, need not be\naccessed by the runtime PM core functions, because all of the devices\nit is set for need to be marked as \"irq safe\" anyway and are\nprotected from being turned off by runtime PM by ensuring that their\nusage counters are always set.\n\nFor this reason, make the syscore flag system-wide PM-specific\nand simplify the code used for manipulating it, because it need not\nacquire the device\u0027s power.lock any more.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "bddb1b9078505bb0e430c87c5015c0963f7a594f",
      "tree": "ef3d3a201dd23633d5c2dad8fb00be82a35f3023",
      "parents": [
        "f531f05ae9437df5ba1ebd90017e4dd5526048e9"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "ming.lei@canonical.com",
        "time": "Sat Aug 04 12:01:26 2012 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Aug 16 13:30:29 2012 -0700"
      },
      "message": "driver core: devres: introduce devres_for_each_res\n\nThis patch introduces one devres API of devres_for_each_res\nso that the device\u0027s driver can iterate each resource it has\ninterest in.\n\nThe firmware loader will use the API to get each firmware name\nfrom the device instance.\n\nSigned-off-by: Ming Lei \u003cming.lei@canonical.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "fa93669a1917f93b09142d4b2298329b82d7d36d",
      "tree": "7f8d6dc9d1fbb086c59a799a3a7137c46fb9959e",
      "parents": [
        "b13bc8dda81c54a66a1c84e66f60b8feba659f28",
        "6791457a090d9a234a40b501c2536f0aefaeae4b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:25:33 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:25:33 2012 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core changes from Greg Kroah-Hartman:\n \"Here\u0027s the big driver core pull request for 3.6-rc1.\n\n  Unlike 3.5, this kernel should be a lot tamer, with the printk changes\n  now settled down.  All we have here is some extcon driver updates, w1\n  driver updates, a few printk cleanups that weren\u0027t needed for 3.5, but\n  are good to have now, and some other minor fixes/changes in the driver\n  core.\n\n  All of these have been in the linux-next releases for a while now.\n\n  Signed-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\"\n\n* tag \u0027driver-core-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (38 commits)\n  printk: Export struct log size and member offsets through vmcoreinfo\n  Drivers: hv: Change the hex constant to a decimal constant\n  driver core: don\u0027t trigger uevent after failure\n  extcon: MAX77693: Add extcon-max77693 driver to support Maxim MAX77693 MUIC device\n  sysfs: fail dentry revalidation after namespace change fix\n  sysfs: fail dentry revalidation after namespace change\n  extcon: spelling of detach in function doc\n  extcon: arizona: Stop microphone detection if we give up on it\n  extcon: arizona: Update cable reporting calls and split headset\n  PM / Runtime: Do not increment device usage counts before probing\n  kmsg - do not flush partial lines when the console is busy\n  kmsg - export \"continuation record\" flag to /dev/kmsg\n  kmsg - avoid warning for CONFIG_PRINTK\u003dn compilations\n  kmsg - properly print over-long continuation lines\n  driver-core: Use kobj_to_dev instead of re-implementing it\n  driver-core: Move kobj_to_dev from genhd.h to device.h\n  driver core: Move deferred devices to the end of dpm_list before probing\n  driver core: move uevent call to driver_register\n  driver core: fix shutdown races with probe/remove(v3)\n  Extcon: Arizona: Add driver for Wolfson Arizona class devices\n  ...\n"
    },
    {
      "commit": "395e51f18d3b26619c1c462b7a1c0226846ac0a9",
      "tree": "fd0fcf5d1714ba8f634689964dd70add4eab354d",
      "parents": [
        "28a33cbc24e4256c143dce96c7d93bf423229f92",
        "2c9195e990297068d0f1f1bd8e2f1d09538009da",
        "2c0ae1720c09c6f8fc8c6bcece29dc80b08ca1af",
        "7d43c2e42cb1e436f97c1763150e4e1122ae0d57",
        "8ce44a2174c3b07950d7a8d44774e23e60518205",
        "3177bb76a8c510cbc737425a74e777a9aa253065"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jul 23 12:17:00 2012 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jul 23 12:17:00 2012 +0200"
      },
      "message": "Merge branches \u0027iommu/fixes\u0027, \u0027x86/amd\u0027, \u0027groups\u0027, \u0027arm/tegra\u0027 and \u0027api/domain-attr\u0027 into next\n\nConflicts:\n\tdrivers/iommu/iommu.c\n\tinclude/linux/iommu.h\n"
    },
    {
      "commit": "eea03c20ae38a55405c0865ed9adfccc400e4c8e",
      "tree": "09800af230cd1ef6d9d83ac5e057d8085feca601",
      "parents": [
        "e2f3b78557ff11f58d836e016900c3210f4fb1c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 18 18:15:46 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 18 18:15:46 2012 -0700"
      },
      "message": "Make wait_for_device_probe() also do scsi_complete_async_scans()\n\nCommit a7a20d103994 (\"sd: limit the scope of the async probe domain\")\nmake the SCSI device probing run device discovery in it\u0027s own async\ndomain.\n\nHowever, as a result, the partition detection was no longer synchronized\nby async_synchronize_full() (which, despite the name, only synchronizes\nthe global async space, not all of them).  Which in turn meant that\n\"wait_for_device_probe()\" would not wait for the SCSI partitions to be\nparsed.\n\nAnd \"wait_for_device_probe()\" was what the boot time init code relied on\nfor mounting the root filesystem.\n\nNow, most people never noticed this, because not only is it\ntiming-dependent, but modern distributions all use initrd.  So the root\nfilesystem isn\u0027t actually on a disk at all.  And then before they\nactually mount the final disk filesystem, they will have loaded the\nscsi-wait-scan module, which not only does the expected\nwait_for_device_probe(), but also does scsi_complete_async_scans().\n\n[ Side note: scsi_complete_async_scans() had also been partially broken,\n  but that was fixed in commit 43a8d39d0137 (\"fix async probe\n  regression\"), so that same commit a7a20d103994 had actually broken\n  setups even if you used scsi-wait-scan explicitly ]\n\nSolve this problem by just moving the scsi_complete_async_scans() call\ninto wait_for_device_probe().  Everybody who wants to wait for device\nprobing to finish really wants the SCSI probing to complete, so there\u0027s\nno reason not to do this.\n\nSo now \"wait_for_device_probe()\" really does what the name implies, and\nproperly waits for device probing to finish.  This also removes the now\nunnecessary extra calls to scsi_complete_async_scans().\n\nReported-and-tested-by: Artem S. Tashkinov \u003ct.artem@mailcity.com\u003e\nCc: Dan Williams \u003cdan.j.williams@gmail.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: Borislav Petkov \u003cbp@amd64.org\u003e\nCc: linux-scsi \u003clinux-scsi@vger.kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4232963757e62b3b97bbba07cb92c6d448f6f4b",
      "tree": "bf91e17c13821f4463fbae1dc04be0b5e4f9fe7d",
      "parents": [
        "8153584e3fdf78753bf653d5f583b6ecb86e5e70"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Tue Jul 03 18:49:35 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jul 16 18:05:45 2012 -0700"
      },
      "message": "driver-core: Move kobj_to_dev from genhd.h to device.h\n\nThis function is not really specific to the genhd layer and there are various\nre-implementations or open-coded variants of it all throughout the kernel. To\navoid further duplications move the function to a more generic place.\n\nWhile moving also convert it from a macro to a inline function.\n\nPotential users of this function can be detected and converted using the\nfollowing coccinelle patch:\n\n// \u003csmpl\u003e\n@@\nexpression k;\n@@\n-container_of(k, struct device, kobj)\n+kobj_to_dev(kobj)\n// \u003c/smpl\u003e\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "74416e1e07660798379ce10a210bf4fd35b84f9f",
      "tree": "c95498bc5c4de2d246ddf0f0a453ca930364c8ba",
      "parents": [
        "3ebb9566007083c6fd92674996d2a0be2ea79745"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Wed May 30 14:18:41 2012 -0600"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jun 25 13:47:20 2012 +0200"
      },
      "message": "driver core: Add iommu_group tracking to struct device\n\nIOMMU groups allow IOMMU drivers to represent DMA visibility\nand isolation of devices.  Multiple devices may be grouped\ntogether for the purposes of DMA.  Placing a pointer on\nstruct device enable easy access for things like streaming\nDMA programming and drivers like VFIO.\n\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "d484864dd96e1830e7689510597707c1df8cd681",
      "tree": "51551708ba3f26d05575fa91daaf0c0d970a77c3",
      "parents": [
        "be87cfb47c5c740f7b17929bcd7c480b228513e0",
        "0f51596bd39a5c928307ffcffc9ba07f90f42a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 09:18:59 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 09:18:59 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping\n\nPull CMA and ARM DMA-mapping updates from Marek Szyprowski:\n \"These patches contain two major updates for DMA mapping subsystem\n  (mainly for ARM architecture).  First one is Contiguous Memory\n  Allocator (CMA) which makes it possible for device drivers to allocate\n  big contiguous chunks of memory after the system has booted.\n\n  The main difference from the similar frameworks is the fact that CMA\n  allows to transparently reuse the memory region reserved for the big\n  chunk allocation as a system memory, so no memory is wasted when no\n  big chunk is allocated.  Once the alloc request is issued, the\n  framework migrates system pages to create space for the required big\n  chunk of physically contiguous memory.\n\n  For more information one can refer to nice LWN articles:\n\n   - \u0027A reworked contiguous memory allocator\u0027:\n\t\thttp://lwn.net/Articles/447405/\n\n   - \u0027CMA and ARM\u0027:\n\t\thttp://lwn.net/Articles/450286/\n\n   - \u0027A deep dive into CMA\u0027:\n\t\thttp://lwn.net/Articles/486301/\n\n   - and the following thread with the patches and links to all previous\n     versions:\n\t\thttps://lkml.org/lkml/2012/4/3/204\n\n  The main client for this new framework is ARM DMA-mapping subsystem.\n\n  The second part provides a complete redesign in ARM DMA-mapping\n  subsystem.  The core implementation has been changed to use common\n  struct dma_map_ops based infrastructure with the recent updates for\n  new dma attributes merged in v3.4-rc2.  This allows to use more than\n  one implementation of dma-mapping calls and change/select them on the\n  struct device basis.  The first client of this new infractructure is\n  dmabounce implementation which has been completely cut out of the\n  core, common code.\n\n  The last patch of this redesign update introduces a new, experimental\n  implementation of dma-mapping calls on top of generic IOMMU framework.\n  This lets ARM sub-platform to transparently use IOMMU for DMA-mapping\n  calls if one provides required IOMMU hardware.\n\n  For more information please refer to the following thread:\n\t\thttp://www.spinics.net/lists/arm-kernel/msg175729.html\n\n  The last patch merges changes from both updates and provides a\n  resolution for the conflicts which cannot be avoided when patches have\n  been applied on the same files (mainly arch/arm/mm/dma-mapping.c).\"\n\nAcked by Andrew Morton \u003cakpm@linux-foundation.org\u003e:\n \"Yup, this one please.  It\u0027s had much work, plenty of review and I\n  think even Russell is happy with it.\"\n\n* \u0027for-linus\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping: (28 commits)\n  ARM: dma-mapping: use PMD size for section unmap\n  cma: fix migration mode\n  ARM: integrate CMA with DMA-mapping subsystem\n  X86: integrate CMA with DMA-mapping subsystem\n  drivers: add Contiguous Memory Allocator\n  mm: trigger page reclaim in alloc_contig_range() to stabilise watermarks\n  mm: extract reclaim code from __alloc_pages_direct_reclaim()\n  mm: Serialize access to min_free_kbytes\n  mm: page_isolation: MIGRATE_CMA isolation functions added\n  mm: mmzone: MIGRATE_CMA migration type added\n  mm: page_alloc: change fallbacks array handling\n  mm: page_alloc: introduce alloc_contig_range()\n  mm: compaction: export some of the functions\n  mm: compaction: introduce isolate_freepages_range()\n  mm: compaction: introduce map_pages()\n  mm: compaction: introduce isolate_migratepages_range()\n  mm: page_alloc: remove trailing whitespace\n  ARM: dma-mapping: add support for IOMMU mapper\n  ARM: dma-mapping: use alloc, mmap, free from dma_ops\n  ARM: dma-mapping: remove redundant code and do the cleanup\n  ...\n\nConflicts:\n\tarch/x86/include/asm/dma-mapping.h\n"
    },
    {
      "commit": "c64be2bb1c6eb43c838b2c6d57b074078be208dd",
      "tree": "d0720eda4a440ff91f3296b0f90cc53ac514d4b9",
      "parents": [
        "49f223a9cd96c7293d7258ff88c2bdf83065f69c"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Thu Dec 29 13:09:51 2011 +0100"
      },
      "committer": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Mon May 21 15:09:37 2012 +0200"
      },
      "message": "drivers: add Contiguous Memory Allocator\n\nThe Contiguous Memory Allocator is a set of helper functions for DMA\nmapping framework that improves allocations of contiguous memory chunks.\n\nCMA grabs memory on system boot, marks it with MIGRATE_CMA migrate type\nand gives back to the system. Kernel is allowed to allocate only movable\npages within CMA\u0027s managed memory so that it can be used for example for\npage cache when DMA mapping do not use it. On\ndma_alloc_from_contiguous() request such pages are migrated out of CMA\narea to free required contiguous block and fulfill the request. This\nallows to allocate large contiguous chunks of memory at any time\nassuming that there is enough free memory available in the system.\n\nThis code is heavily based on earlier works by Michal Nazarewicz.\n\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nTested-by: Rob Clark \u003crob.clark@linaro.org\u003e\nTested-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nTested-by: Benjamin Gaignard \u003cbenjamin.gaignard@linaro.org\u003e\nTested-by: Robert Nelson \u003crobertcnelson@gmail.com\u003e\nTested-by: Barry Song \u003cBaohua.Song@csr.com\u003e\n"
    },
    {
      "commit": "356c05d58af05d582e634b54b40050c73609617b",
      "tree": "49fd49203678cee0e7650f1b4d55aa3f53527575",
      "parents": [
        "c836d0ab70acf7b7bd2b698278e8abae9e6d9978"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon May 14 13:30:03 2012 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon May 14 12:19:56 2012 -0700"
      },
      "message": "sysfs: get rid of some lockdep false positives\n\nThis patch (as1554) fixes a lockdep false-positive report.  The\nproblem arises because lockdep is unable to deal with the\ntree-structured locks created by the device core and sysfs.\n\nThis particular problem involves a sysfs attribute method that\nunregisters itself, not from the device it was called for, but from a\ndescendant device.  Lockdep doesn\u0027t understand the distinction and\nreports a possible deadlock, even though the operation is safe.\n\nThis is the sort of thing that would normally be handled by using a\nnested lock annotation; unfortunately it\u0027s not feasible to do that\nhere.  There\u0027s no sensible way to tell sysfs when attribute removal\noccurs in the context of a parent attribute method.\n\nAs a workaround, the patch adds a new flag to struct attribute\ntelling sysfs not to inform lockdep when it acquires a readlock on a\nsysfs_dirent instance for the attribute.  The readlock is still\nacquired, but lockdep doesn\u0027t know about it and hence does not\ncomplain about impossible deadlock scenarios.\n\nAlso added are macros for static initialization of attribute\nstructures with the ignore_lockdep flag set.  The three offending\nattributes in the USB subsystem are converted to use the new macros.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCC: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCC: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "6ca045930338485a8cdef117e74372aa1678009d",
      "tree": "b48243eeca23dc1b3b29e365d5b420ba121ff124",
      "parents": [
        "094e47e9fa79e28f0e51e37400ea6eea35a4ee1f"
      ],
      "author": {
        "name": "Hiroshi DOYU",
        "email": "hdoyu@nvidia.com",
        "time": "Mon May 14 10:47:57 2012 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon May 14 08:47:11 2012 -0700"
      },
      "message": "driver core: Add dev_*_ratelimited() family\n\nAdd dev_*_ratelimited() family, dev_* version of pr_*_ratelimited().\n\nUsing Joe Perches\u0027s proposal/implementation.\n\nSigned-off-by: Hiroshi DOYU \u003chdoyu@nvidia.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d926d0e4c74cfcb42a05e91d1cdf698b41e1e118",
      "tree": "9d7cdc794f6c56ef728c751759d8ef639ee6f38f",
      "parents": [
        "698cd2ddd851b34e7200b4f846ae68306e11bae4"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu May 03 18:15:13 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri May 04 16:33:16 2012 -0700"
      },
      "message": "devres: Add devres_release()\n\nAPIs using devres frequently want to implement a \"remove and free the\nresource\" operation so it seems sensible that they should be able to\njust have devres do the freeing for them since that\u0027s a big part of what\ndevres is all about.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "94758185689ee96694558d720d44e81b4e0abc3d",
      "tree": "756925262fd350f548cfbdaaf3296c672bb7156d",
      "parents": [
        "4ae68e7345b0d5d49e1c2c7583d15a3c177f8a2f"
      ],
      "author": {
        "name": "Michael Davidson",
        "email": "md@google.com",
        "time": "Thu May 03 16:19:02 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri May 04 16:26:20 2012 -0700"
      },
      "message": "driver-core: fix DEVICE_INT_ATTR to use correct show/store functions\n\nDEVICE_INT_ATTR() should use device_show_int() and device_store_int()\nnot device_show_ulong() and device_store_ulong()\n\nSigned-off-by: Michael Davidson \u003cmd@google.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7cd9c9bb57476167e83b7780dbc06d1dd601789d",
      "tree": "afcf43a6d5e4661306676ebcd08224906170b578",
      "parents": [
        "591bfc6bf9e5e25e464fd4c87d64afd5135667c4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Apr 19 19:17:30 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Apr 19 19:17:30 2012 -0700"
      },
      "message": "Revert \"driver core: check start node in klist_iter_init_node\"\n\nThis reverts commit a15d49fd3094cff90e5410ca454a870e0a722fe1 as that\npatch broke the build.\n\nCc: Hannes Reinecke \u003chare@suse.de\u003e\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "a15d49fd3094cff90e5410ca454a870e0a722fe1",
      "tree": "f3e458fa4ce3524f756e0faa48d5ed2400c022bf",
      "parents": [
        "97ec448aeadff55234368a89c4a07a7ef290a084"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Mon Apr 16 15:06:25 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Apr 18 15:39:52 2012 -0700"
      },
      "message": "driver core: check start node in klist_iter_init_node\n\nklist_iter_init_node() takes a node as a start argument.\nHowever, this node might not be valid anymore.\nThis patch updates the klist_iter_init_node() and\ndependent functions to return an error if so.\nAll calling functions have been audited to check\nfor a return code here.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nCc: Greg Kroah-Hartmann \u003cgregkh@linuxfoundation.org\u003e\nCc: Kay Sievers \u003ckay@vrfy.org\u003e\nCc: Stable Kernel \u003cstable@kernel.org\u003e\nCc: Linux Kernel \u003clinux-kernel@vger.kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "5375871d432ae9fc581014ac117b96aaee3cd0c7",
      "tree": "be98e8255b0f927fb920fb532a598b93fa140dbe",
      "parents": [
        "b57cb7231b2ce52d3dda14a7b417ae125fb2eb97",
        "dfbc2d75c1bd47c3186fa91f1655ea2f3825b0ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\nPull powerpc merge from Benjamin Herrenschmidt:\n \"Here\u0027s the powerpc batch for this merge window.  It is going to be a\n  bit more nasty than usual as in touching things outside of\n  arch/powerpc mostly due to the big iSeriesectomy :-) We finally got\n  rid of the bugger (legacy iSeries support) which was a PITA to\n  maintain and that nobody really used anymore.\n\n  Here are some of the highlights:\n\n   - Legacy iSeries is gone.  Thanks Stephen ! There\u0027s still some bits\n     and pieces remaining if you do a grep -ir series arch/powerpc but\n     they are harmless and will be removed in the next few weeks\n     hopefully.\n\n   - The \u0027fadump\u0027 functionality (Firmware Assisted Dump) replaces the\n     previous (equivalent) \"pHyp assisted dump\"...  it\u0027s a rewrite of a\n     mechanism to get the hypervisor to do crash dumps on pSeries, the\n     new implementation hopefully being much more reliable.  Thanks\n     Mahesh Salgaonkar.\n\n   - The \"EEH\" code (pSeries PCI error handling \u0026 recovery) got a big\n     spring cleaning, motivated by the need to be able to implement a\n     new backend for it on top of some new different type of firwmare.\n\n     The work isn\u0027t complete yet, but a good chunk of the cleanups is\n     there.  Note that this adds a field to struct device_node which is\n     not very nice and which Grant objects to.  I will have a patch soon\n     that moves that to a powerpc private data structure (hopefully\n     before rc1) and we\u0027ll improve things further later on (hopefully\n     getting rid of the need for that pointer completely).  Thanks Gavin\n     Shan.\n\n   - I dug into our exception \u0026 interrupt handling code to improve the\n     way we do lazy interrupt handling (and make it work properly with\n     \"edge\" triggered interrupt sources), and while at it found \u0026 fixed\n     a wagon of issues in those areas, including adding support for page\n     fault retry \u0026 fatal signals on page faults.\n\n   - Your usual random batch of small fixes \u0026 updates, including a bunch\n     of new embedded boards, both Freescale and APM based ones, etc...\"\n\nI fixed up some conflicts with the generalized irq-domain changes from\nGrant Likely, hopefully correctly.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (141 commits)\n  powerpc/ps3: Do not adjust the wrapper load address\n  powerpc: Remove the rest of the legacy iSeries include files\n  powerpc: Remove the remaining CONFIG_PPC_ISERIES pieces\n  init: Remove CONFIG_PPC_ISERIES\n  powerpc: Remove FW_FEATURE ISERIES from arch code\n  tty/hvc_vio: FW_FEATURE_ISERIES is no longer selectable\n  powerpc/spufs: Fix double unlocks\n  powerpc/5200: convert mpc5200 to use of_platform_populate()\n  powerpc/mpc5200: add options to mpc5200_defconfig\n  powerpc/mpc52xx: add a4m072 board support\n  powerpc/mpc5200: update mpc5200_defconfig to fit for charon board\n  Documentation/powerpc/mpc52xx.txt: Checkpatch cleanup\n  powerpc/44x: Add additional device support for APM821xx SoC and Bluestone board\n  powerpc/44x: Add support PCI-E for APM821xx SoC and Bluestone board\n  MAINTAINERS: Update PowerPC 4xx tree\n  powerpc/44x: The bug fixed support for APM821xx SoC and Bluestone board\n  powerpc: document the FSL MPIC message register binding\n  powerpc: add support for MPIC message register API\n  powerpc/fsl: Added aliased MSIIR register address to MSI node in dts\n  powerpc/85xx: mpc8548cds - add 36-bit dts\n  ...\n"
    },
    {
      "commit": "ed378a52dabf77b406b447fd3238f83ea24b71fa",
      "tree": "07e1a7ec2d1c08767ee81b9910f5912b80502632",
      "parents": [
        "843ec558f91b8e8fdb6efc908f2c0506407cc750",
        "11207b6fe05438b2e87a26435cd98db3d55e6fa7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:26:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:26:30 2012 -0700"
      },
      "message": "Merge tag \u0027usb-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb\n\nPull USB merge for 3.4-rc1 from Greg KH:\n \"Here\u0027s the big USB merge for the 3.4-rc1 merge window.\n\n  Lots of gadget driver reworks here, driver updates, xhci changes, some\n  new drivers added, usb-serial core reworking to fix some bugs, and\n  other various minor things.\n\n  There are some patches touching arch code, but they have all been\n  acked by the various arch maintainers.\"\n\n* tag \u0027usb-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (302 commits)\n  net: qmi_wwan: add support for ZTE MF820D\n  USB: option: add ZTE MF820D\n  usb: gadget: f_fs: Remove lock is held before freeing checks\n  USB: option: make interface blacklist work again\n  usb/ub: deprecate \u0026 schedule for removal the \"Low Performance USB Block\" driver\n  USB: ohci-pxa27x: add clk_prepare/clk_unprepare calls\n  USB: use generic platform driver on ath79\n  USB: EHCI: Add a generic platform device driver\n  USB: OHCI: Add a generic platform device driver\n  USB: ftdi_sio: new PID: LUMEL PD12\n  USB: ftdi_sio: add support for FT-X series devices\n  USB: serial: mos7840: Fixed MCS7820 device attach problem\n  usb: Don\u0027t make USB_ARCH_HAS_{XHCI,OHCI,EHCI} depend on USB_SUPPORT.\n  usb gadget: fix a section mismatch when compiling g_ffs with CONFIG_USB_FUNCTIONFS_ETH\n  USB: ohci-nxp: Remove i2c_write(), use smbus\n  USB: ohci-nxp: Support for LPC32xx\n  USB: ohci-nxp: Rename symbols from pnx4008 to nxp\n  USB: OHCI-HCD: Rename ohci-pnx4008 to ohci-nxp\n  usb: gadget: Kconfig: fix typo for \u0027different\u0027\n  usb: dwc3: pci: fix another failure path in dwc3_pci_probe()\n  ...\n"
    },
    {
      "commit": "cd4946188aac597d187a765127fd26fa3644c29f",
      "tree": "01833671b4891a1489ed0a6a75e37494486801d2",
      "parents": [
        "b086cf04fc1bfc89b306aab2fb0f67e3cc294037"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Sat Feb 25 11:25:58 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 16:37:56 2012 -0800"
      },
      "message": "driver-core: Allow additional parameters for module_driver\n\nAllow module_driver take additional parameters which will be passed to the\nregister and unregister function calls. This allows it to be used in cases\nwhere additional parameters are required (e.g. usb_serial_register_drivers).\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "fcd6f76202024763f2f4a348ab666240e4f7ac50",
      "tree": "823ab929d28b382d858262e791bf763fe4e2f237",
      "parents": [
        "c17a9d4c8495c3a8e724cc846240c46f660a726c"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed Mar 07 18:41:09 2012 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Mar 09 10:35:21 2012 +1100"
      },
      "message": "driver-core: remove legacy iSeries hack\n\nThe PowerPC legacy iSeries plateform is being removed along with the\n\"one looney iseries driver\", so this code can now be removed as well.\n\ncc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "ef8a3fd6e5e12e8989dae97ba5491c2e39369af9",
      "tree": "f7833cd19e036141d26bd3f3732cd4de7752a161",
      "parents": [
        "d1c3414c2a9d10ef7f0f7665f5d2947cd088c093"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:17:22 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:17:22 2012 -0800"
      },
      "message": "driver core: move the deferred probe pointer into the private area\n\nNothing outside of the driver core needs to get to the deferred probe\npointer, so move it inside the private area of \u0027struct device\u0027 so no one\ntries to mess around with it.\n\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d1c3414c2a9d10ef7f0f7665f5d2947cd088c093",
      "tree": "bd33518d50f23adc2e55e7b4c99b6b1753a41a03",
      "parents": [
        "fef37e9a47b9927ce2817fe1a0fa8cf40f6eefb6"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Mar 05 08:47:41 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 11:53:13 2012 -0800"
      },
      "message": "drivercore: Add driver probe deferral mechanism\n\nAllow drivers to report at probe time that they cannot get all the resources\nrequired by the device, and should be retried at a later time.\n\nThis should completely solve the problem of getting devices\ninitialized in the right order.  Right now this is mostly handled by\nmucking about with initcall ordering which is a complete hack, and\ndoesn\u0027t even remotely handle the case where device drivers are in\nmodules.  This approach completely sidesteps the issues by allowing\ndriver registration to occur in any order, and any driver can request\nto be retried after a few more other drivers get probed.\n\nv4: - Integrate Manjunath\u0027s addition of a separate workqueue\n    - Change -EAGAIN to -EPROBE_DEFER for drivers to trigger deferral\n    - Update comment blocks to reflect how the code really works\nv3: - Hold off workqueue scheduling until late_initcall so that the bulk\n      of driver probes are complete before we start retrying deferred devices.\n    - Tested with simple use cases.  Still needs more testing though.\n      Using it to get rid of the gpio early_initcall madness, or to replace\n      the ASoC internal probe deferral code would be ideal.\nv2: - added locking so it should no longer be utterly broken in that regard\n    - remove device from deferred list at device_del time.\n    - Still completely untested with any real use case, but has been\n      boot tested.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Dilan Lee \u003cdilee@nvidia.com\u003e\nCc: Manjunath GKondaiah \u003cmanjunath.gkondaiah@linaro.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Tony Lindgren \u003ctony@atomide.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: David Daney \u003cdavid.daney@cavium.com\u003e\nReviewed-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "bd1d462e13b278fc57752d0b9b15040e60e561a0",
      "tree": "e2fdf1c18a93aab02830bcb8a5db8cdddfbb63a8",
      "parents": [
        "d5c38b137ac8a6e3dbed13bc494d60df5b69dfc4",
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 11:24:44 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 11:24:44 2012 -0800"
      },
      "message": "Merge 3.3-rc2 into the driver-core-next branch.\n\nThis was done to resolve a merge and build problem with the\ndrivers/acpi/processor_driver.c file.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9875bb480cc89d9b690f7028aadf7e58454f0dae",
      "tree": "45116b0424af02a708abf58c56967c14dcfc06d5",
      "parents": [
        "f3ff9247088a0af0c192a28908dab76ff3d8871f"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Jan 24 13:35:37 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 16:00:36 2012 -0800"
      },
      "message": "Eliminate get_driver() and put_driver()\n\nNow that there are no users of get_driver() or put_driver(), this\npatch (as1513) removes those routines completely.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b558c96ffa53f4b3dd52b774e4fb7a52982ab52b",
      "tree": "c178b95b2f1bb9e146d4f33f287ab37c2dab119a",
      "parents": [
        "87e6f968339bcdda56b39572c7e63331192296a0"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Mon Dec 19 17:11:18 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 12:46:44 2012 -0800"
      },
      "message": "dynamic_debug: make dynamic-debug supersede DEBUG ccflag\n\nIf CONFIG_DYNAMIC_DEBUG is defined, honor it over DEBUG, so that\npr_debug()s are controllable, instead of always-on.  When DEBUG is\nalso defined, change _DPRINTK_FLAGS_DEFAULT to enable printing by\ndefault.\n\nAlso adding _DPRINTK_FLAGS_INCL_MODNAME would be nice, but there are\nnumerous cases of pr_debug(NAME \": ...), which would result in double\nprinting of module-name.  So defer this until things settle.\n\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2eda013f4894bc200124f791a56c4defb613a0cc",
      "tree": "a186229c34e0629b72d64ed767076257edcdea94",
      "parents": [
        "b5763accd3b5fc131ee06e26ce56e63ae0322c9b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:02:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:44:53 2012 -0800"
      },
      "message": "kernel-doc: fix new warnings in device.h\n\nFix new kernel-doc warnings:\n\nWarning(include/linux/device.h:299): No description found for parameter \u0027name\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027subsys\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027node\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027add_dev\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027remove_dev\u0027\nWarning(include/linux/device.h:685): No description found for parameter \u0027id\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__driver\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__register\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__unregister\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "972b2c719990f91eb3b2310d44ef8a2d38955a14",
      "tree": "b25a250ec5bec4b7b6355d214642d8b57c5cab32",
      "parents": [
        "02550d61f49266930e674286379d3601006b2893",
        "c3aa077648e147783a7a53b409578234647db853"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\n* \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits)\n  reiserfs: Properly display mount options in /proc/mounts\n  vfs: prevent remount read-only if pending removes\n  vfs: count unlinked inodes\n  vfs: protect remounting superblock read-only\n  vfs: keep list of mounts for each superblock\n  vfs: switch -\u003eshow_options() to struct dentry *\n  vfs: switch -\u003eshow_path() to struct dentry *\n  vfs: switch -\u003eshow_devname() to struct dentry *\n  vfs: switch -\u003eshow_stats to struct dentry *\n  switch security_path_chmod() to struct path *\n  vfs: prefer -\u003edentry-\u003ed_sb to -\u003emnt-\u003emnt_sb\n  vfs: trim includes a bit\n  switch mnt_namespace -\u003eroot to struct mount\n  vfs: take /proc/*/mounts and friends to fs/proc_namespace.c\n  vfs: opencode mntget() mnt_set_mountpoint()\n  vfs: spread struct mount - remaining argument of next_mnt()\n  vfs: move fsnotify junk to struct mount\n  vfs: move mnt_devname\n  vfs: move mnt_list to struct mount\n  vfs: switch pnode.h macros to struct mount *\n  ...\n"
    },
    {
      "commit": "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df",
      "tree": "d851c923f85566572112d4c0f884cff388a3cc05",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610",
        "ea04018e6bc5ddb2f0466c0e5b986bd4901b7e8e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 into Linux 3.2\n\nThis resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,\nand it fixes the build error in the arch/x86/kernel/microcode_core.c\nfile, that the merge did not catch.\n\nThe microcode_core.c patch was provided by Stephen Rothwell\n\u003csfr@canb.auug.org.au\u003e who was invaluable in the merge issues involved\nwith the large sysdev removal process in the driver-core tree.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b9d4e714a86a4e88c2f530c76597f7025e5851d6",
      "tree": "bd6636d2105de4f849160a7a435fff232d6b76d3",
      "parents": [
        "3b85e4ab2ec1dea29374f16205917b1b5589bc81"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 15:05:10 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 15:05:10 2012 -0800"
      },
      "message": "driver core: remove __must_check from device_create_file\n\nWith the conversion of the sysdev to a real struct device, more drivers\nare calling device_create_file, and some of them don\u0027t check the return\nvalue, which isn\u0027t wise.\n\nBut as they happen to be in parts of the kernel where a warning is\nconsidered an error (i.e. powerpc), this breaks the build.  So for now,\nremove the marking on the function, which fixes the build problems.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2c9ede55ecec58099b72e4bb8eab719f32f72c31",
      "tree": "8498a8c940fea97931b469fc73eb1a5022a2b28c",
      "parents": [
        "7d54fa6472609f2b0f2ea27e51ec2cf1fb27bd57"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 20:24:48 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:55 2012 -0500"
      },
      "message": "switch device_get_devnode() and -\u003edevnode() to umode_t *\n\nboth callers of device_get_devnode() are only interested in lower 16bits\nand nobody tries to return anything wider than 16bit anyway.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ca22e56debc57b47c422b749c93217ba62644be2",
      "tree": "bb2da058ddc05f8cde1161a60f7fdce9620c63ff",
      "parents": [
        "6261ddee70174372d6a75601f40719b7a5392f3f"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 14 14:29:38 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 14 14:29:38 2011 -0800"
      },
      "message": "driver-core: implement \u0027sysdev\u0027 functionality for regular devices and buses\n\nAll sysdev classes and sysdev devices will converted to regular devices\nand buses to properly hook userspace into the event processing.\n\nThere is no interesting difference between a \u0027sysdev\u0027 and \u0027device\u0027 which\nwould justify to roll an entire own subsystem with different userspace\nexport semantics. Userspace relies on events and generic sysfs subsystem\ninfrastructure from sysdev devices, which are currently not properly\navailable.\n\nEvery converted sysdev class will create a regular device with the class\nname in /sys/devices/system and all registered devices will becom a children\nof theses devices.\n\nFor compatibility reasons, the sysdev class-wide attributes are created\nat this parent device. (Do not copy that logic for anything new, subsystem-\nwide properties belong to the subsystem, not to some fake parent device\ncreated in /sys/devices.)\n\nEvery sysdev driver is implemented as a simple subsystem interface now,\nand no longer called a driver.\n\nAfter all sysdev classes are ported to regular driver core entities, the\nsysdev implementation will be entirely removed from the kernel.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0cda56962b883cd5e7aa036350e5a0283a88c590",
      "tree": "acb54a8550f3d768a45ad297761f8f6cba90d19e",
      "parents": [
        "b0d81664a0092d8f6df7742b5aee6fcfd326b36c",
        "91a13c281d7d4648c0b32dede11a0144c4e7984c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 21 20:36:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 21 20:36:26 2011 -0800"
      },
      "message": "Merge branch \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:\n  drivers/base/node.c: fix compilation error with older versions of gcc\n  uio: documentation fixups\n  device.h: Fix struct member documentation\n"
    },
    {
      "commit": "8b258cc8ac229aa7d5dcb7cc34cb35d9124498ac",
      "tree": "9615636b05b04035af0c8eb11ee9711aa2b868a6",
      "parents": [
        "af8db1508f2c9f3b6e633e2d2d906c6557c617f9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Nov 17 21:39:33 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Nov 17 21:39:33 2011 +0100"
      },
      "message": "PM Sleep: Do not extend wakeup paths to devices with ignore_children set\n\nCommit 4ca46ff3e0d8c234cb40ebb6457653b59584426c (PM / Sleep: Mark\ndevices involved in wakeup signaling during suspend) introduced\nthe power.wakeup_path field in struct dev_pm_info to mark devices\nwhose children are enabled to wake up the system from sleep states,\nso that power domains containing the parents that provide their\nchildren with wakeup power and/or relay their wakeup signals are not\nturned off.  Unfortunately, that introduced a PM regression on SH7372\nwhose power consumption in the system \"memory sleep\" state increased\nas a result of it, because it prevented the power domain containing\nthe I2C controller from being turned off when some children of that\ncontroller were enabled to wake up the system, although the\ncontroller was not necessary for them to signal wakeup.\n\nTo fix this issue use the observation that devices whose\npower.ignore_children flag is set for runtime PM should be treated\nanalogously during system suspend.  Namely, they shouldn\u0027t be\nincluded in wakeup paths going through their children.  Since the\nSH7372 I2C controller\u0027s power.ignore_children flag is set, doing so\nwill restore the previous behavior of that SOC.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "907d0ed1c84114d4e8dafd66af982515d3739c90",
      "tree": "faf964abead72d572d686e25945ec237c9e635d2",
      "parents": [
        "377195c438fc5e9e4ca59e69382c10771d817d6a"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Nov 16 10:13:35 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 17 12:05:00 2011 -0800"
      },
      "message": "drivercore: Generalize module_platform_driver\n\nThis patch generalizes the module_platform_driver macro and introduces a new\nmodule_driver macro. The module_driver macro takes a driver name, a register\nand a unregister function for this driver type. Using these it construct the\nmodule init and exit sections which register and unregister the driver. Since\nsuch init/exit sections are commonly found in drivers this macro can be used\nto eliminate a lot of boilerplate code.\n\nThe macro is not intended to be used by driver modules directly, instead it\nshould be used to generate bus specific macros for registering drivers like\nthe module_platform_driver macro.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Jonathan Cameron \u003cjic23@kernel.org\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "72f8c0bfa0de64c68ee59f40eb9b2683bffffbb0",
      "tree": "44fa0c66dbb41d9154e170d4d97455e5665a5f12",
      "parents": [
        "571806a9f70fc4a4c575ab796555dfb401c2dfc1"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Tue Oct 25 15:16:47 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 15 16:07:39 2011 -0800"
      },
      "message": "lib: devres: add convenience function to remap a resource\n\nAlmost every platform_driver does the three steps get_resource,\nrequest_mem_region, ioremap. This does not only lead to a lot of code\nduplication, but also a huge number of similar error strings and\ninconsistent error codes on failure. So, introduce a helper function\nwhich simplifies remapping a resource and make it hard to do something\nwrong and add documentation for it.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "7b08fae8fbf0c14f003be8e039ed37bcbae4415a",
      "tree": "22c86f2338b96f85584916a844dcabc921ec73c1",
      "parents": [
        "1ea6b8f48918282bdca0b32a34095504ee65bab5"
      ],
      "author": {
        "name": "Marcos Paulo de Souza",
        "email": "marcos.mage@gmail.com",
        "time": "Tue Nov 01 11:15:40 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 15 11:14:01 2011 -0800"
      },
      "message": "device.h: Fix struct member documentation\n\nFix warning of make xmldocs of documention of the struct member iommu_ops from struct bus_type.\n\nSigned-off-by: Marcos Paulo de Souza \u003cmarcos.mage@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "b9075fa968a0a4347aef35e235e2995c0e57dddd",
      "tree": "cf9f9716784e790d8a43339653256d9cf9178ff3",
      "parents": [
        "ae29bc92da01a2e9d278a9a58c3b307d41cc0254"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Oct 31 17:11:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 31 17:30:54 2011 -0700"
      },
      "message": "treewide: use __printf not __attribute__((format(printf,...)))\n\nStandardize the style for compiler based printf format verification.\nStandardized the location of __printf too.\n\nDone via script and a little typing.\n\n$ grep -rPl --include\u003d*.[ch] -w \"__attribute__\" * | \\\n  grep -vP \"^(tools|scripts|include/linux/compiler-gcc.h)\" | \\\n  xargs perl -n -i -e \u0027local $/; while (\u003c\u003e) { s/\\b__attribute__\\s*\\(\\s*\\(\\s*format\\s*\\(\\s*printf\\s*,\\s*(.+)\\s*,\\s*(.+)\\s*\\)\\s*\\)\\s*\\)/__printf($1, $2)/g ; print; }\u0027\n\n[akpm@linux-foundation.org: revert arch bits]\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de47725421ad5627a5c905f4e40bb844ebc06d29",
      "tree": "bc23b0405d4a79dcc866a8b2877f128ee0ea9ffc",
      "parents": [
        "eb5589a8f0dab7e29021344228856339e6a1249c"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 26 13:46:22 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:32 2011 -0400"
      },
      "message": "include: replace linux/module.h with \"struct module\" wherever possible\n\nThe \u003clinux/module.h\u003e pretty much brings in the kitchen sink along\nwith it, so it should be avoided wherever reasonably possible in\nterms of being included from other commonly used \u003clinux/something.h\u003e\nfiles, as it results in a measureable increase on compile times.\n\nThe worst culprit was probably device.h since it is used everywhere.\nThis file also had an implicit dependency/usage of mutex.h which was\nmasked by module.h, and is also fixed here at the same time.\n\nThere are over a dozen other headers that simply declare the\nstruct instead of pulling in the whole file, so follow their lead\nand simply make it a few more.\n\nMost of the implicit dependencies on module.h being present by\nthese headers pulling it in have been now weeded out, so we can\nfinally make this change with hopefully minimal breakage.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "eb5589a8f0dab7e29021344228856339e6a1249c",
      "tree": "d83790e5ac7feacba5b1832fbe7f8d2a39d76f65",
      "parents": [
        "7c926402a7e8c9b279968fd94efec8700ba3859e"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri May 27 09:02:11 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:32 2011 -0400"
      },
      "message": "include: convert various register fcns to macros to avoid include chaining\n\nThe original implementations reference THIS_MODULE in an inline.\nWe could include \u003clinux/export.h\u003e, but it is better to avoid chaining.\n\nFortunately someone else already thought of this, and made a similar\ninline into a #define in \u003clinux/device.h\u003e for device_schedule_callback(),\n[see commit 523ded71de0] so follow that precedent here.\n\nAlso bubble up any __must_check that were used on the prev. wrapper inline\nfunctions up one to the real __register functions, to preserve any prev.\nsanity checks that were used in those instances.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "0cfdc724390fb9370f27bb9a133eadf69114dd21",
      "tree": "2abfb0112c46c837c6b42007eadfc389293b7710",
      "parents": [
        "b48aeab65e9fc4b0c9757c5fbc1d722544eb8786",
        "1abb4ba596a91a839f82e0c9c837b777d574e83d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 30 15:46:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 30 15:46:19 2011 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (33 commits)\n  iommu/core: Remove global iommu_ops and register_iommu\n  iommu/msm: Use bus_set_iommu instead of register_iommu\n  iommu/omap: Use bus_set_iommu instead of register_iommu\n  iommu/vt-d: Use bus_set_iommu instead of register_iommu\n  iommu/amd: Use bus_set_iommu instead of register_iommu\n  iommu/core: Use bus-\u003eiommu_ops in the iommu-api\n  iommu/core: Convert iommu_found to iommu_present\n  iommu/core: Add bus_type parameter to iommu_domain_alloc\n  Driver core: Add iommu_ops to bus_type\n  iommu/core: Define iommu_ops and register_iommu only with CONFIG_IOMMU_API\n  iommu/amd: Fix wrong shift direction\n  iommu/omap: always provide iommu debug code\n  iommu/core: let drivers know if an iommu fault handler isn\u0027t installed\n  iommu/core: export iommu_set_fault_handler()\n  iommu/omap: Fix build error with !IOMMU_SUPPORT\n  iommu/omap: Migrate to the generic fault report mechanism\n  iommu/core: Add fault reporting mechanism\n  iommu/core: Use PAGE_SIZE instead of hard-coded value\n  iommu/core: use the existing IS_ALIGNED macro\n  iommu/msm: -\u003eunmap() should return order of unmapped page\n  ...\n\nFixup trivial conflicts in drivers/iommu/Makefile: \"move omap iommu to\ndedicated iommu folder\" vs \"Rename the DMAR and INTR_REMAP config\noptions\" just happened to touch lines next to each other.\n"
    },
    {
      "commit": "7e0bb71e75020348bee523720a0c2f04cc72f540",
      "tree": "1a22d65bbce34e8cc0f82c543c9486ffb58332f7",
      "parents": [
        "b9e2780d576a010d4aba1e69f247170bf3718d6b",
        "0ab1e79b825a5cd8aeb3b34d89c9a89dea900056"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "message": "Merge branch \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (63 commits)\n  PM / Clocks: Remove redundant NULL checks before kfree()\n  PM / Documentation: Update docs about suspend and CPU hotplug\n  ACPI / PM: Add Sony VGN-FW21E to nonvs blacklist.\n  ARM: mach-shmobile: sh7372 A4R support (v4)\n  ARM: mach-shmobile: sh7372 A3SP support (v4)\n  PM / Sleep: Mark devices involved in wakeup signaling during suspend\n  PM / Hibernate: Improve performance of LZO/plain hibernation, checksum image\n  PM / Hibernate: Do not initialize static and extern variables to 0\n  PM / Freezer: Make fake_signal_wake_up() wake TASK_KILLABLE tasks too\n  PM / Hibernate: Add resumedelay kernel param in addition to resumewait\n  MAINTAINERS: Update linux-pm list address\n  PM / ACPI: Blacklist Vaio VGN-FW520F machine known to require acpi_sleep\u003dnonvs\n  PM / ACPI: Blacklist Sony Vaio known to require acpi_sleep\u003dnonvs\n  PM / Hibernate: Add resumewait param to support MMC-like devices as resume file\n  PM / Hibernate: Fix typo in a kerneldoc comment\n  PM / Hibernate: Freeze kernel threads after preallocating memory\n  PM: Update the policy on default wakeup settings\n  PM / VT: Cleanup #if defined uglyness and fix compile error\n  PM / Suspend: Off by one in pm_suspend()\n  PM / Hibernate: Include storage keys in hibernation image on s390\n  ...\n"
    },
    {
      "commit": "8a9ea3237e7eb5c25f09e429ad242ae5a3d5ea22",
      "tree": "a0a63398a9983667d52cbbbf4e2405b4f22b1d83",
      "parents": [
        "1be025d3cb40cd295123af2c394f7229ef9b30ca",
        "8b3408f8ee994973869d8ba32c5bf482bc4ddca4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1745 commits)\n  dp83640: free packet queues on remove\n  dp83640: use proper function to free transmit time stamping packets\n  ipv6: Do not use routes from locally generated RAs\n  |PATCH net-next] tg3: add tx_dropped counter\n  be2net: don\u0027t create multiple RX/TX rings in multi channel mode\n  be2net: don\u0027t create multiple TXQs in BE2\n  be2net: refactor VF setup/teardown code into be_vf_setup/clear()\n  be2net: add vlan/rx-mode/flow-control config to be_setup()\n  net_sched: cls_flow: use skb_header_pointer()\n  ipv4: avoid useless call of the function check_peer_pmtu\n  TCP: remove TCP_DEBUG\n  net: Fix driver name for mdio-gpio.c\n  ipv4: tcp: fix TOS value in ACK messages sent from TIME_WAIT\n  rtnetlink: Add missing manual netlink notification in dev_change_net_namespaces\n  ipv4: fix ipsec forward performance regression\n  jme: fix irq storm after suspend/resume\n  route: fix ICMP redirect validation\n  net: hold sock reference while processing tx timestamps\n  tcp: md5: add more const attributes\n  Add ethtool -g support to virtio_net\n  ...\n\nFix up conflicts in:\n - drivers/net/Kconfig:\n\tThe split-up generated a trivial conflict with removal of a\n\tstale reference to Documentation/networking/net-modules.txt.\n\tRemove it from the new location instead.\n - fs/sysfs/dir.c:\n\tFairly nasty conflicts with the sysfs rb-tree usage, conflicting\n\twith Eric Biederman\u0027s changes for tagged directories.\n"
    },
    {
      "commit": "ff21776d12ff7993a6b236b8273ef62777d25dfb",
      "tree": "e4775ee5c1f5f5e7e6975c0887766a3b886c1258",
      "parents": [
        "39d4ebb95925046863dc0ef2698dfcf2c1f1dcbe"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Aug 26 16:48:26 2011 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Oct 21 14:37:19 2011 +0200"
      },
      "message": "Driver core: Add iommu_ops to bus_type\n\nThis is the starting point to make the iommu_ops used for\nthe iommu-api a per-bus-type structure. It is required to\neasily implement bus-specific setup in the iommu-layer.\nThe first user will be the iommu-group attribute in sysfs.\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "672d82c18d222e51b40ff47e660fc54ec3e3e0a9",
      "tree": "4b16b21bc0bcf0c7f9b21c7389e551cbd83e06a7",
      "parents": [
        "487505c257021fc06a7d05753cf27b011487f1dc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Oct 12 21:55:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 19:24:15 2011 -0400"
      },
      "message": "class: Implement support for class attrs in tagged sysfs directories.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c095a0e0d600d5a5a4207eaadabd18db46395ce",
      "tree": "18163d773234898e71c22d83b265a1eccfba11d9",
      "parents": [
        "111058c3ff29a6a25216b31789046c2a330baa7d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 25 15:33:50 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 25 15:33:50 2011 +0200"
      },
      "message": "PM: Introduce struct pm_subsys_data\n\nIntroduce struct pm_subsys_data that may be subclassed by subsystems\nto store subsystem-specific information related to the device.  Move\nthe clock management fields accessed through the power.subsys_data\npointer in struct device to the new strucutre.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "cbc4663552ee476f57933920d782222d94878e7e",
      "tree": "7fa60ec28e53114d239137b7cea65c66da15040c",
      "parents": [
        "25b8a88c10770e8c3f14bf2e222691dc6e79de78"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Aug 11 14:36:21 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 22 18:23:04 2011 -0700"
      },
      "message": "dynamic_debug: Add __dynamic_dev_dbg\n\nUnlike dynamic_pr_debug, dynamic uses of dev_dbg can not\ncurrently add task_pid/KBUILD_MODNAME/__func__/__LINE__\nto selected debug output.\n\nAdd a new function similar to dynamic_pr_debug to\noptionally emit these prefixes.\n\nCc: Aloisio Almeida \u003caloisio.almeida@openbossa.org\u003e\nNoticed-by: Aloisio Almeida \u003caloisio.almeida@openbossa.org\u003e\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "60063497a95e716c9a689af3be2687d261f115b4",
      "tree": "6ce0d68db76982c53df46aee5f29f944ebf2c320",
      "parents": [
        "148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Tue Jul 26 16:09:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 16:49:47 2011 -0700"
      },
      "message": "atomic: use \u003clinux/atomic.h\u003e\n\nThis allows us to move duplicated code in \u003casm/atomic.h\u003e\n(atomic_inc_not_zero() for now) to \u003clinux/atomic.h\u003e\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nReviewed-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "564b905ab10d17fb42f86aa8b7b9b796276d1336",
      "tree": "b191c000e55ae1a354bd67876ca6945d2ad87c93",
      "parents": [
        "f5da24dbed213d103f00aa9ef26e010b50d2db24"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jun 23 01:52:55 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jul 02 14:29:54 2011 +0200"
      },
      "message": "PM / Domains: Rename struct dev_power_domain to struct dev_pm_domain\n\nThe naming convention used by commit 7538e3db6e015e890825fbd9f86599b\n(PM: Add support for device power domains), which introduced the\nstruct dev_power_domain type for representing device power domains,\nevidently confuses some developers who tend to think that objects\nof this type must correspond to \"power domains\" as defined by\nhardware, which is not the case.  Namely, at the kernel level, a\nstruct dev_power_domain object can represent arbitrary set of devices\nthat are mutually dependent power management-wise and need not belong\nto one hardware power domain.  To avoid that confusion, rename struct\ndev_power_domain to struct dev_pm_domain and rename the related\npointers in struct device and struct pm_clk_notifier_block from\npwr_domain to pm_domain.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "4d258b25d947521c8b913154db61ec55198243f8",
      "tree": "4f74f744797e92a0555705dc121ac8aaa041e750",
      "parents": [
        "a64227b0855c42b5c037011afa80580ca3228527"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jun 27 19:07:08 2011 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 16:06:19 2011 -0700"
      },
      "message": "Fix some kernel-doc warnings\n\nFix \u0027make htmldocs\u0027 warnings:\n\n  Warning(/include/linux/hrtimer.h:153): No description found for parameter \u0027clockid\u0027\n  Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member \u0027of_match\u0027 description in \u0027device\u0027\n  Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member \u0027sk_rmem_alloc\u0027 description in \u0027sock\u0027\n\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f76b168b6f117a49d36307053e1acbe30580ea5b",
      "tree": "2aa0cc19b27764d8eb55ce85eaf226a60ce27756",
      "parents": [
        "78420884e680da8fbc3240de2d3106437042381e"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sat Jun 18 20:22:23 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jun 21 23:19:50 2011 +0200"
      },
      "message": "PM: Rename dev_pm_info.in_suspend to is_prepared\n\nThis patch (as1473) renames the \"in_suspend\" field in struct\ndev_pm_info to \"is_prepared\", in preparation for an upcoming change.\nThe new name is more descriptive of what the field really means.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "39ab05c8e0b519ff0a04a869f065746e6e8c3d95",
      "tree": "e73f0ba74c4ea7a80dff9b2dd9445a3a74190e28",
      "parents": [
        "1477fcc290b3d5c2614bde98bf3b1154c538860d",
        "c42d2237143fcf35cff642cefe2bcf7786aae312"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits)\n  debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n  sysfs: remove \"last sysfs file:\" line from the oops messages\n  drivers/base/memory.c: fix warning due to \"memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\"\n  memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\n  SYSFS: Fix erroneous comments for sysfs_update_group().\n  driver core: remove the driver-model structures from the documentation\n  driver core: Add the device driver-model structures to kerneldoc\n  Translated Documentation/email-clients.txt\n  RAW driver: Remove call to kobject_put().\n  reboot: disable usermodehelper to prevent fs access\n  efivars: prevent oops on unload when efi is not enabled\n  Allow setting of number of raw devices as a module parameter\n  Introduce CONFIG_GOOGLE_FIRMWARE\n  driver: Google Memory Console\n  driver: Google EFI SMI\n  x86: Better comments for get_bios_ebda()\n  x86: get_bios_ebda_length()\n  misc: fix ti-st build issues\n  params.c: Use new strtobool function to process boolean inputs\n  debugfs: move to new strtobool\n  ...\n\nFix up trivial conflicts in fs/debugfs/file.c due to the same patch\nbeing applied twice, and an unrelated cleanup nearby.\n"
    },
    {
      "commit": "51509a283a908d73b20371addc67ee3ae7189934",
      "tree": "bb920f09799cc47d496f26f7deb78a315351150d",
      "parents": [
        "75f5076b12924f53340209d2cde73b98ed3b3095",
        "6538df80194e305f1b78cafb556f4bb442f808b3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (34 commits)\n  PM: Introduce generic prepare and complete callbacks for subsystems\n  PM: Allow drivers to allocate memory from .prepare() callbacks safely\n  PM: Remove CONFIG_PM_VERBOSE\n  Revert \"PM / Hibernate: Reduce autotuned default image size\"\n  PM / Hibernate: Add sysfs knob to control size of memory for drivers\n  PM / Wakeup: Remove useless synchronize_rcu() call\n  kmod: always provide usermodehelper_disable()\n  PM / ACPI: Remove acpi_sleep\u003ds4_nonvs\n  PM / Wakeup: Fix build warning related to the \"wakeup\" sysfs file\n  PM: Print a warning if firmware is requested when tasks are frozen\n  PM / Runtime: Rework runtime PM handling during driver removal\n  Freezer: Use SMP barriers\n  PM / Suspend: Do not ignore error codes returned by suspend_enter()\n  PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset\n  PM: Revert \"driver core: platform_bus: allow runtime override of dev_pm_ops\"\n  OMAP1 / PM: Use generic clock manipulation routines for runtime PM\n  PM: Remove sysdev suspend, resume and shutdown operations\n  PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM\n  PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM\n  PM / AVR32: Use struct syscore_ops instead of sysdevs for PM\n  ...\n"
    },
    {
      "commit": "b1608d69cb804e414d0887140ba08a9398e4e638",
      "tree": "8999cd827e7fb4138ff83f7829d8fdcf44ee653d",
      "parents": [
        "01294d82622d6d9d64bde8e4530c7e2c6dbb6ee6"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed May 18 11:19:24 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed May 18 12:32:23 2011 -0600"
      },
      "message": "drivercore: revert addition of of_match to struct device\n\nCommit b826291c, \"drivercore/dt: add a match table pointer to struct\ndevice\" added an of_match pointer to struct device to cache the\nof_match_table entry discovered at driver match time.  This was unsafe\nbecause matching is not an atomic operation with probing a driver.  If\ntwo or more drivers are attempted to be matched to a driver at the\nsame time, then the cached matching entry pointer could get\noverwritten.\n\nThis patch reverts the of_match cache pointer and reworks all users to\ncall of_match_device() directly instead.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "2e711c04dbbf7a7732a3f7073b1fc285d12b369d",
      "tree": "dbc06a3fff744144d7937a205a91fd8ce71585d4",
      "parents": [
        "f5a592f7d74e38c5007876c731e6bf5580072e63"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 26 19:15:07 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:37:15 2011 +0200"
      },
      "message": "PM: Remove sysdev suspend, resume and shutdown operations\n\nSince suspend, resume and shutdown operations in struct sysdev_class\nand struct sysdev_driver are not used any more, remove them.  Also\ndrop sysdev_suspend(), sysdev_resume() and sysdev_shutdown() used\nfor executing those operations and modify all of their users\naccordingly.  This reduces kernel code size quite a bit and reduces\nits complexity.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "880ffb5c6c5c8c8c6efd9efe9355317322b4603b",
      "tree": "14dcec29fec290e480adec042bfcbb4ede12b005",
      "parents": [
        "3ccff540070b5adde7eec443676cfee1dd6b89fd"
      ],
      "author": {
        "name": "Wanlong Gao",
        "email": "wanlong.gao@gmail.com",
        "time": "Thu May 05 07:55:36 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 06 18:01:05 2011 -0700"
      },
      "message": "driver core: Add the device driver-model structures to kerneldoc\n\nAdd the comments to the structure bus_type, device_driver, device,\nclass to device.h for generating the driver-model kerneldoc. With another patch\nthese all removed from the files in Documentation/driver-model/ since\nthey are out of date. That will keep things up to date and provide a better way\nto document this stuff.\n\nSigned-off-by: Wanlong Gao \u003cwanlong.gao@gmail.com\u003e\nAcked-by: Harry Wei \u003charryxiyou@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c8705082404823a5bb3e02a32ba0764399b9e6f2",
      "tree": "1853345f3c0ca963365ff9a07fd2d92e09454799",
      "parents": [
        "4a03d6f7c863a039b937649a93341615f531358e"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Apr 20 09:44:46 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 22 17:09:13 2011 -0700"
      },
      "message": "driver core: let dev_set_drvdata return int instead of void as it can fail\n\nBefore commit\n\n\tb402843 (Driver core: move dev_get/set_drvdata to drivers/base/dd.c)\n\ncalling dev_set_drvdata with dev\u003dNULL was an unchecked error. After some\ndiscussion about what to return in this case removing the check (and so\nproducing a null pointer exception) seems fine.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "aed65af1cc2f6fc9ded5a8158f1405a02cf6d2ff",
      "tree": "fd7051c0d25a6f463db9593a981ca3e558d17b4f",
      "parents": [
        "695cca8763078c743417886e80af8ccb78bec9f2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Mar 28 09:12:52 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 19 16:45:51 2011 -0700"
      },
      "message": "drivers: make device_type const\n\nThe device_type structure does not contain data that changes\nduring usage and should be const. This allows devices to declare\nthe struct const.\n\nI have patches to change all the subsystems, but need the infra\nstructure change first.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bcdd323b893ad3c9b7ef26b5e4a0bef974238501",
      "tree": "3a107018f470ec4d7e021d1421ba3688770f473f",
      "parents": [
        "f0e615c3cb72b42191b558c130409335812621d8"
      ],
      "author": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Wed Mar 16 15:59:35 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 19 16:45:50 2011 -0700"
      },
      "message": "device: add dev_WARN_ONCE\n\nit\u0027s quite useful to print the device name\non the stack dump caused by WARN(), but\nthere are other cases where we might want\nto use WARN_ONCE.\n\nIntroduce a helper similar to dev_WARN() for\nthat case too.\n\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d47d81c0e9abdc3c88653fabff5beae82c949b09",
      "tree": "1745f3316996e3cb0a02dcd7af90b88d836b6d17",
      "parents": [
        "e00e56dfd3cf1d209ce630a2b440c91e4a30bbd3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 23 22:16:41 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 23 22:16:41 2011 +0100"
      },
      "message": "Introduce ARCH_NO_SYSDEV_OPS config option (v2)\n\nIntroduce Kconfig option allowing architectures where sysdev\noperations used during system suspend, resume and shutdown have been\ncompletely replaced with struct sycore_ops operations to avoid\nbuilding sysdev code that will never be used.\n\nMake callbacks in struct sys_device and struct sysdev_driver depend\non ARCH_NO_SYSDEV_OPS to allows us to verify if all of the references\nhave been actually removed from the code the given architecture\ndepends on.\n\nMake x86 select ARCH_NO_SYSDEV_OPS.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4c5811bf463b0ef82fabbd1708f8bb2d753aeb18",
      "tree": "ff37d31217c3804ca05de21a55a9b5ca1ca818b2",
      "parents": [
        "f74b9444192c60603020c61d7915b72893137edc",
        "9f15444fefdb33509132ff5c9be60cb315c44cb2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "message": "Merge branch \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6: (21 commits)\n  tty: serial: altera_jtaguart: Add device tree support\n  tty: serial: altera_uart: Add devicetree support\n  dt: eliminate of_platform_driver shim code\n  dt: Eliminate of_platform_{,un}register_driver\n  dt/serial: Eliminate users of of_platform_{,un}register_driver\n  dt/usb: Eliminate users of of_platform_{,un}register_driver\n  dt/video: Eliminate users of of_platform_{,un}register_driver\n  dt/net: Eliminate users of of_platform_{,un}register_driver\n  dt/sound: Eliminate users of of_platform_{,un}register_driver\n  dt/spi: Eliminate users of of_platform_{,un}register_driver\n  dt: uartlite: merge platform and of_platform driver bindings\n  dt: xilinx_hwicap: merge platform and of_platform driver bindings\n  ipmi: convert OF driver to platform driver\n  leds/leds-gpio: merge platform_driver with of_platform_driver\n  dt/sparc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: move of_bus_type infrastructure to ibmebus\n  drivercore/dt: add a match table pointer to struct device\n  dt: Typo fix.\n  altera_ps2: Add devicetree support\n  ...\n"
    },
    {
      "commit": "fc82e1d59a24cbac01c49d4eb3b28d6abc26a5f4",
      "tree": "5e01479d69e69dbbe483044b39afd2aa99d4f2b2",
      "parents": [
        "48d5f6731837f0ec9a0e19ca763aa17d58385a98",
        "bea3864fb627d110933cfb8babe048b63c4fc76e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:24:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:24:44 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (21 commits)\n  PM / Hibernate: Reduce autotuned default image size\n  PM / Core: Introduce struct syscore_ops for core subsystems PM\n  PM QoS: Make pm_qos settings readable\n  PM / OPP: opp_find_freq_exact() documentation fix\n  PM: Documentation/power/states.txt: fix repetition\n  PM: Make system-wide PM and runtime PM treat subsystems consistently\n  PM: Simplify kernel/power/Kconfig\n  PM: Add support for device power domains\n  PM: Drop pm_flags that is not necessary\n  PM: Allow pm_runtime_suspend() to succeed during system suspend\n  PM: Clean up PM_TRACE dependencies and drop unnecessary Kconfig option\n  PM: Remove CONFIG_PM_OPS\n  PM: Reorder power management Kconfig options\n  PM: Make CONFIG_PM depend on (CONFIG_PM_SLEEP || CONFIG_PM_RUNTIME)\n  PM / ACPI: Remove references to pm_flags from bus.c\n  PM: Do not create wakeup sysfs files for devices that cannot wake up\n  USB / Hub: Do not call device_set_wakeup_capable() under spinlock\n  PM: Use appropriate printk() priority level in trace.c\n  PM / Wakeup: Don\u0027t update events_check_enabled in pm_get_wakeup_count()\n  PM / Wakeup: Make pm_save_wakeup_count() work as documented\n  ...\n"
    },
    {
      "commit": "7538e3db6e015e890825fbd9f8659952896ddd5b",
      "tree": "01a6d8c97599474d9c5fc1ed0eb6f0addaec5652",
      "parents": [
        "6831c6edc7b272a08dd2a6c71bb183a48fe98ae6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 16 21:53:17 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 15 00:43:16 2011 +0100"
      },
      "message": "PM: Add support for device power domains\n\nThe platform bus type is often used to handle Systems-on-a-Chip (SoC)\nwhere all devices are represented by objects of type struct\nplatform_device.  In those cases the same \"platform\" device driver\nmay be used with multiple different system configurations, but the\nactions needed to put the devices it handles into a low-power state\nand back into the full-power state may depend on the design of the\ngiven SoC.  The driver, however, cannot possibly include all the\ninformation necessary for the power management of its device on all\nthe systems it is used with.  Moreover, the device hierarchy in its\ncurrent form also is not suitable for representing this kind of\ninformation.\n\nThe patch below attempts to address this problem by introducing\nobjects of type struct dev_power_domain that can be used for\nrepresenting power domains within a SoC.  Every struct\ndev_power_domain object provides a sets of device power\nmanagement callbacks that can be used to perform what\u0027s needed for\ndevice power management in addition to the operations carried out by\nthe device\u0027s driver and subsystem.\n\nNamely, if a struct dev_power_domain object is pointed to by the\npwr_domain field in a struct device, the callbacks provided by its\nops member will be executed in addition to the corresponding\ncallbacks provided by the device\u0027s subsystem and driver during all\npower transitions.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-and-acked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "b826291c14c396e7aa5d84523aafac117f430902",
      "tree": "ebabdbe338cfef0d31fc3f5d77c23f264215eede",
      "parents": [
        "3d6b88282751a3329d7b041a8d18db87641db9e8"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Feb 17 02:37:15 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Feb 28 01:36:38 2011 -0700"
      },
      "message": "drivercore/dt: add a match table pointer to struct device\n\nAdd a new .of_match field to struct device which points at the\nmatching device driver .of_match_table entry when a device is probed\nvia the device tree\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c9e358dfc4a8cb2227172ef77908c2e0ee17bcb9",
      "tree": "0bba0d79151fc7fab5feb6f9507ec9748b2ba587",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jan 21 09:24:48 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jan 21 09:24:48 2011 -0700"
      },
      "message": "driver-core: remove conditionals around devicetree pointers\n\nHaving conditional around the of_match_table and the of_node pointers\nturns out to make driver code use ugly #ifdef blocks.  Drop the\nconditionals and remove the #ifdef blocks from the affected drivers.\n\nAlso tidy up minor whitespace issues within the same hunks.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e54be894eae10eca9892e965cc9532f5d5a11767",
      "tree": "27ace4446e42058ef4813a34bf63b55a870e7a12",
      "parents": [
        "949f6711b83d2809d1ccb9d830155a65fdacdff9",
        "c6c0ac664c86ff6408fadbed4913938c8a732e26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 16:10:33 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 16:10:33 2011 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  driver core: Document that device_rename() is only for networking\n  sysfs: remove useless test from sysfs_merge_group\n  driver-core: merge private parts of class and bus\n  driver core: fix whitespace in class_attr_string\n"
    },
    {
      "commit": "facc7a96d443d84060a8679c3fcc51d20d4981c3",
      "tree": "e2d633b07766609aedac0708adcde2bc2e37e68a",
      "parents": [
        "c8940eca75e6d1ea57f6c491a30bd1023c64c9ad",
        "4ead36407b41eae942c8c9f70ef963cd369c90e2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 08:15:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 08:15:37 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (34 commits)\n  HID: roccat: Update sysfs attribute doc\n  HID: roccat: don\u0027t use #pragma pack\n  HID: roccat: Add support for Roccat Kone[+] v2\n  HID: roccat: reduce number of functions in kone and pyra drivers\n  HID: roccat: declare meaning of pack pragma usage in driver headers\n  HID: roccat: use class for char device for sysfs attribute creation\n  sysfs: Introducing binary attributes for struct class\n  HID: hidraw: add compatibility ioctl() for 32-bit applications.\n  HID: hid-picolcd: Fix memory leak in picolcd_debug_out_report()\n  HID: picolcd: fix misuse of logical operation in place of bitop\n  HID: usbhid: base runtime PM on modern API\n  HID: replace offsets values with their corresponding BTN_* defines\n  HID: hid-mosart: support suspend/resume\n  HID: hid-mosart: ignore buttons report\n  HID: hid-picolcd: don\u0027t use flush_scheduled_work()\n  HID: simplify an index check in hid_lookup_collection\n  HID: Hoist assigns from ifs\n  HID: Remove superfluous __inline__\n  HID: Use vzalloc for vmalloc/memset(,0...)\n  HID: Add and use hid_\u003clevel\u003e: dev_\u003clevel\u003e equivalents\n  ...\n"
    },
    {
      "commit": "c97415a72521071c235e0879f9a600014afd87b1",
      "tree": "4b71de5a0074f93daf4ddea07888c70c3bcc0eaf",
      "parents": [
        "a7153258b70ccbe3922fcee9ca4271d4f4c2bc55"
      ],
      "author": {
        "name": "Stefan Achatz",
        "email": "erazor_de@users.sourceforge.net",
        "time": "Fri Nov 26 19:57:29 2010 +0000"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Sat Jan 08 01:09:21 2011 +0100"
      },
      "message": "sysfs: Introducing binary attributes for struct class\n\nAdded dev_bin_attrs to struct class similar to existing dev_attrs.\n\nSigned-off-by: Stefan Achatz \u003cerazor_de@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b8c76f6aed0ab7df73a6410f3f82de2c831bb144",
      "tree": "1194ded4c23f62ab253a2e0712cfdd436aa2365b",
      "parents": [
        "5b219a51fdceaf76e0e18da57c7efb9e5586e567"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 16 00:51:21 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 24 15:02:44 2010 +0100"
      },
      "message": "PM: Replace the device power.status field with a bit field\n\nThe device power.status field is too complicated for its purpose\n(storing the information about whether or not the device is in the\n\"active\" state from the PM core\u0027s point of view), so replace it with\na bit field and modify all of its users accordingly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "6b6e39a6a8da7234c538d14c43d3583da8875f9c",
      "tree": "cef5d25998665559ecc0cad2bcdb947cfa401b67",
      "parents": [
        "14c05aa399e30f343f25158c9adfc44631378a96"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Mon Nov 15 23:13:18 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Nov 17 14:21:08 2010 -0800"
      },
      "message": "driver-core: merge private parts of class and bus\n\nAs classes and busses are pretty much the same thing, and we want to\nmerge them together into a \u0027subsystem\u0027 in the future, let us share the\nsame private data parts to make that merge easier.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e52eec13cd6b7f30ab19081b387813e03e592ae5",
      "tree": "7b327e0b9283c578fb10922edcf6e10b3b8fd943",
      "parents": [
        "39aba963d937edb20db7d9d93e6dda5d2adfdcdd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 08 16:54:17 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:43 2010 -0700"
      },
      "message": "SYSFS: Allow boot time switching between deprecated and modern sysfs layout\n\nI have some systems which need legacy sysfs due to old tools that are\nmaking assumptions that a directory can never be a symlink to another\ndirectory, and it\u0027s a big hazzle to compile separate kernels for them.\n\nThis patch turns CONFIG_SYSFS_DEPRECATED into a run time option\nthat can be switched on/off the kernel command line. This way\nthe same binary can be used in both cases with just a option\non the command line.\n\nThe old CONFIG_SYSFS_DEPRECATED_V2 option is still there to set\nthe default. I kept the weird name to not break existing\nconfig files.\n\nAlso the compat code can be still completely disabled by undefining\nCONFIG_SYSFS_DEPRECATED_SWITCH -- just the optimizer takes\ncare of this now instead of lots of ifdefs. This makes the code\nlook nicer.\n\nv2: This is an updated version on top of Kay\u0027s patch to only\nhandle the block devices. I tested it on my old systems\nand that seems to work.\n\nCc: axboe@kernel.dk\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6937e8f8c0135f2325194c372ada6dc655499992",
      "tree": "436ede36f95f1cb40d5b9bd8f6711ca26faf0045",
      "parents": [
        "6fd69dc578fa0b1bbc3aad70ae3af9a137211707"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 05 17:38:18 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:35 2010 -0700"
      },
      "message": "driver core: device_rename\u0027s new_name can be const\n\nThe new_name argument to device_rename() can be\nconst as kobject_rename\u0027s new_name argument is.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "45daef0fdcc44f6af86fdebc4fc7eb7c79375398",
      "tree": "95005210c9d1c726b5d2d36689b218be0255ce5c",
      "parents": [
        "600c20f34f645adf7884277302b10601583aa7d5"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@opensource.se",
        "time": "Fri Jul 23 19:56:18 2010 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:35 2010 -0700"
      },
      "message": "Driver core: Add BUS_NOTIFY_BIND_DRIVER\n\nAdd BUS_NOTIFY_BIND_DRIVER as a bus notifier event.\n\nFor driver binding/unbinding we with this in\nplace have the following bus notifier events:\n - BUS_NOTIFY_BIND_DRIVER - before -\u003eprobe()\n - BUS_NOTIFY_BOUND_DRIVER - after -\u003eprobe()\n - BUS_NOTIFY_UNBIND_DRIVER - before -\u003eremove()\n - BUS_NOTIFY_UNBOUND_DRIVER - after -\u003eremove()\n\nThe event BUS_NOTIFY_BIND_DRIVER allows bus code\nto be notified that -\u003eprobe() is about to be called.\n\nUseful for bus code that needs to setup hardware before\nthe driver gets to run. With this in place platform\ndrivers can be loaded and unloaded as modules and the\nnew BIND event allows bus code to control for instance\ndevice clocks that must be enabled before the driver\ncan be executed.\n\nWithout this patch there is no way for the bus code to\nget notified that a modular driver is about to be probed.\n\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cc7447a5fa92759b0856d6a83ba2539c6a94e67e",
      "tree": "18539a44c9767e90eea18f532509b8222b0a750d",
      "parents": [
        "ed1d218c95c6846416ddb39085b20a5b3c0872e4"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Wed Jun 16 11:44:18 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:33 2010 -0700"
      },
      "message": "Driver core: Drop __must_check from bus_for_each_drv()\n\nThere is little rationale for marking bus_for_each_drv() __must_check.\nIt is more of an iteration helper than a real function. You don\u0027t know\nin advance which callback it will be used on, so you have no clue how\nimportant it can be to check the returned value. In practice, this\nhelper function can be used for best-effort tasks.\n\nAs a matter of fact, bus_for_each_dev() is not marked __must_check.\nSo remove it from bus_for_each_drv() as well. This is the same that\nwas done back in October 2006 by Russell King for\ndevice_for_each_child(), for exactly the same reasons.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "99bcf217183e02ebae46373896fba7f12d588001",
      "tree": "03210a8c57e33b2b5073f80f9a7f818c84f4c83a",
      "parents": [
        "7db6f5fb65a82af03229eef104dc9899c5eecf33"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jun 27 01:02:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 04 10:40:17 2010 -0700"
      },
      "message": "device.h drivers/base/core.c Convert dev_\u003clevel\u003e logging macros to functions\n\nReduces an x86 defconfig text and data ~55k, .6% smaller.\n\n$ size vmlinux*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n7205273\t 716016\t1366288\t9287577\t 8db799\tvmlinux\n7258890\t 719768\t1366288\t9344946\t 8e97b2\tvmlinux.master\n\nUses %pV and struct va_format\nFormat arguments are verified before printk\n\nThe dev_info macro is converted to _dev_info because there are\nexisting uses of variables named dev_info in the kernel tree\nlike drivers/net/pcmcia/pcnet_cs.c\n\nA dev_info macro is created to call _dev_info\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf9b59e9d3e008591d1f54830f570982bb307a0d",
      "tree": "113478ce8fd8c832ba726ffdf59b82cb46356476",
      "parents": [
        "44504b2bebf8b5823c59484e73096a7d6574471d",
        "f4b87dee923342505e1ddba8d34ce9de33e75050"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "message": "Merge remote branch \u0027origin\u0027 into secretlab/next-devicetree\n\nMerging in current state of Linus\u0027 tree to deal with merge conflicts and\nbuild failures in vio.c after merge.\n\nConflicts:\n\tdrivers/i2c/busses/i2c-cpm.c\n\tdrivers/i2c/busses/i2c-mpc.c\n\tdrivers/net/gianfar.c\n\nAlso fixed up one line in arch/powerpc/kernel/vio.c to use the\ncorrect node pointer.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    }
  ],
  "next": "597b9d1e44e9ba69f2454a5318bbe7a6d5e6930a"
}
