)]}'
{
  "log": [
    {
      "commit": "b2094ef840697bc8ca5d17a83b7e30fad5f1e9fa",
      "tree": "64e5f7253b6a85b6d5d36f95c0d3c67c1798918d",
      "parents": [
        "424a6f6ef990b7e9f56f6627bfc6c46b493faeb4",
        "6681bc0deba495fad0d6fb349e40524abd1b1732"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "message": "Merge tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound\n\nPull updates of sound stuff from Takashi Iwai:\n \"Here is the first big update chunk of sound stuff for 3.4-rc1.\n\n  In the common sound infrastructure, there are a few changes for\n  dynamic PCM support (used in ASoC) and a few clean-ups.  Majority of\n  changes are found, as usual, in HD-audio and ASoC.\n\n  Some highlights of HD-audio changes:\n\n   - All the long-standing static quirk codes for Realtek codec were\n     finally removed by fixing and extending the Realtek auto-parser.\n\n   - The mute-LED control is standardized over all HD-audio codec\n     drivers using the extended vmaster hook.\n\n   - The vmaster slave mixer elements are initialized to 0dB as default\n     so that the user won\u0027t be annoyed by the silent output after\n     updates, e.g.  due to the additions of new elements.\n\n   - Other many fix-ups for the misc HD-audio devices.\n\n  In the ASoC side, this is a very active release, including a quite a\n  few framework enhancements.  Some highlights:\n\n   - Support for widgets not associated with a CODEC, an important part\n     of the dynamic PCM framework.\n\n   - A library factoring out the common code shared by dmaengine based\n     DMA drivers contributed by Lars-Peter Clausen.  This will save a\n     lot of code and make it much easier to deploy enhancements to\n     dmaengine.\n\n   - Support for binary controls, used for providing runtime\n     configuration of algorithm coefficients.\n\n   - A new DAPM widget type for regulator supplies allowing drivers for\n     devices that can power down unused supplies while active to do\n     without any per-driver code.\n\n   - DAPM widgets for DAIs, initially giving a speed boost for playback\n     startup and shutdown and also the basis for CODEC\u003c-\u003eCODEC DAI link\n     support.\n\n   - Support for specifying the number of significant bits on audio\n     interfaces, useful for allowing applications to know how much\n     effort to put into generating data for a larger sample format.\n\n   - Conversion of the FSI driver used on some SH processors to\n     DMAEngine.\n\n   - Conversion of EP93xx drivers to DMAEngine.\n\n   - New CODEC drivers for Maxim MAX9768 and Wolfson Microelectronics\n     WM2200.\n\n   - Move audmux driver from arc/arm to sound/soc\n\n   - McBSP move from arch/ to sound/ and updates\n\n  Also, a few small updates and fixes for other drivers like au88x0,\n  ymfpci, USB 6fire, USB usx2yaudio are included.\"\n\n* tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (446 commits)\n  ASoC: wm8994: Provide VMID mode control and fix default sequence\n  ASoC: wm8994: Add missing break in resume\n  ASoC: wm_hubs: Don\u0027t actively manage LINEOUT_VMID_BUF\n  ASoC: pxa-ssp: atomically set stream active masks\n  ASoC: fsl: p1022ds: tell the WM8776 codec driver that it\u0027s the master\n  ASoC: Samsung: Added to support mono recording\n  ALSA: hda - Fix build with CONFIG_PM\u003dn\n  ALSA: au88x0 - Avoid possible Oops at unbinding\n  ALSA: usb-audio - Fix build error by consitification of rate list\n  ASoC: core: Fix obscure leak of runtime array\n  ALSA: pcm - Avoid GFP_ATOMIC in snd_pcm_link()\n  ALSA: pcm: Constify the list in snd_pcm_hw_constraint_list\n  ASoC: wm8996: Add 44.1kHz support\n  ALSA: hda - Fix build of patch_sigmatel.c without CONFIG_SND_HDA_POWER_SAVE\n  ASoC: mx27vis-aic32x4: Convert it to platform driver\n  ALSA: hda - fix printing of high HDMI sample rates\n  ALSA: ymfpci - Fix legacy registers on S3/S4 resume\n  ALSA: control - Fixe a trailing white space error\n  ALSA: hda - Add expose_enum_ctl flag to snd_hda_add_vmaster_hook()\n  ALSA: hda - Add \"Mute-LED Mode\" enum control\n  ...\n"
    },
    {
      "commit": "754b9800779402924fffe456b49d557e15260cbf",
      "tree": "0e0441eca766616fccd8fc37a3885397efc6063a",
      "parents": [
        "35cb8d9e18c0bb33b90d7e574abadbe23b65427d",
        "ea281a9ebaba3287130dbe15bb0aad6f798bb06b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "message": "Merge branch \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull MCE changes from Ingo Molnar.\n\n* \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/mce: Fix return value of mce_chrdev_read() when erst is disabled\n  x86/mce: Convert static array of pointers to per-cpu variables\n  x86/mce: Replace hard coded hex constants with symbolic defines\n  x86/mce: Recognise machine check bank signature for data path error\n  x86/mce: Handle \"action required\" errors\n  x86/mce: Add mechanism to safely save information in MCE handler\n  x86/mce: Create helper function to save addr/misc when needed\n  HWPOISON: Add code to handle \"action required\" errors.\n  HWPOISON: Clean up memory_failure() vs. __memory_failure()\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": "f8974cb71310a05632aada76be6a27576d61e609",
      "tree": "c0b6f59333796c95aa2de9a2eb755e9b68599b71",
      "parents": [
        "c207f3a43194e108dda43dc9a1ce507335cff6b9",
        "0f22dd395fc473cee252b9af50249b8e0f32fde7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:30:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:30:03 2012 -0700"
      },
      "message": "Merge tag \u0027dt-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull core device tree changes for Linux v3.4 from Grant Likely:\n \"This branch contains a minor documentation addition, a utility\n  function for parsing string properties needed by some of the new ARM\n  platforms, disables dynamic DT code that isn\u0027t used anywhere but on a\n  few PPC machines, and exports DT node compatible data to userspace via\n  UEVENT properties.  Nothing earth shattering here.\"\n\n* tag \u0027dt-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  of: Only compile OF_DYNAMIC on PowerPC pseries and iseries\n  arm/dts: OMAP3: Add omap3evm and am335xevm support\n  drivercore: Output common devicetree information in uevent\n  of: Add of_property_match_string() to find index into a string list\n"
    },
    {
      "commit": "c7c66c0cb0c77b1a8edf09bca57d922312d58030",
      "tree": "77277103c5f16aa4dee64978a060933d92e14776",
      "parents": [
        "9f3938346a5c1fa504647670edb5fea5756cfb00",
        "98e8bdafeb4728a6af7bbcbcc3984967d1cf2bc1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates for 3.4 from Rafael Wysocki:\n \"Assorted extensions and fixes including:\n\n  * Introduction of early/late suspend/hibernation device callbacks.\n  * Generic PM domains extensions and fixes.\n  * devfreq updates from Axel Lin and MyungJoo Ham.\n  * Device PM QoS updates.\n  * Fixes of concurrency problems with wakeup sources.\n  * System suspend and hibernation fixes.\"\n\n* tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (43 commits)\n  PM / Domains: Check domain status during hibernation restore of devices\n  PM / devfreq: add relation of recommended frequency.\n  PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()\n  PM / Domains: Introduce \"always on\" device flag\n  PM / Domains: Fix hibernation restore of devices, v2\n  PM / Domains: Fix handling of wakeup devices during system resume\n  sh_mmcif / PM: Use PM QoS latency constraint\n  tmio_mmc / PM: Use PM QoS latency constraint\n  PM / QoS: Make it possible to expose PM QoS latency constraints\n  PM / Sleep: JBD and JBD2 missing set_freezable()\n  PM / Domains: Fix include for PM_GENERIC_DOMAINS\u003dn case\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  ...\n"
    },
    {
      "commit": "98e8bdafeb4728a6af7bbcbcc3984967d1cf2bc1",
      "tree": "8c8df356d14b88998d20a32b5fee225c958cd95a",
      "parents": [
        "0f0cc1687d7e41ac59e4eaf057aa2fb9e48a9dd3",
        "18dd2ece3cde14cfd42e95a89eb14016699a5f15"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:39:04 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:39:04 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / Domains: Check domain status during hibernation restore of devices\n"
    },
    {
      "commit": "18dd2ece3cde14cfd42e95a89eb14016699a5f15",
      "tree": "1897c7ac0337254058e4bfc7709bb8b19996da24",
      "parents": [
        "57d13370cfaf6017c68981e66ff5b3bf20a2705c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:38:14 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:38:14 2012 +0100"
      },
      "message": "PM / Domains: Check domain status during hibernation restore of devices\n\nPower domains that were off before hibernation shouldn\u0027t be turned on\nduring device restore, so prevent that from happening.\n\nThis change fixes up commit 65533bbf63b4f37723fdfedc73d0653958973323\n\n    PM / Domains: Fix hibernation restore of devices, v2\n\nthat didn\u0027t include it by mistake.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "62dc7c02c31c2cc66c46cc8761d421c60bb07a6f",
      "tree": "73068d760963dc8e154a4e54025e41a529c67b83",
      "parents": [
        "cf3bbcaf09cb158590d1a9e0c0a6796d4fe92452",
        "57d13370cfaf6017c68981e66ff5b3bf20a2705c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:50:08 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:50:08 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()\n  PM / Domains: Introduce \"always on\" device flag\n  PM / Domains: Fix hibernation restore of devices, v2\n  PM / Domains: Fix handling of wakeup devices during system resume\n"
    },
    {
      "commit": "59fb53ea75eef4aa029cf31c88cdacec2f7b794b",
      "tree": "fb2ee7f8e99a72fe858e76ba7f2dbbc0390f3128",
      "parents": [
        "ed819e3b964bba8bfae8e65d4d55a3f345f8da16",
        "efe6a8ad7fc55b350ce968cae4c757d35e986285"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:49:24 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:49:24 2012 +0100"
      },
      "message": "Merge branch \u0027pm-qos\u0027\n\n* pm-qos:\n  sh_mmcif / PM: Use PM QoS latency constraint\n  tmio_mmc / PM: Use PM QoS latency constraint\n  PM / QoS: Make it possible to expose PM QoS latency constraints\n"
    },
    {
      "commit": "1e78a0c7fc92aee076965d516cf54475c39e9894",
      "tree": "a1a47b1adee44700480ff35d3f85a5ae8fdae390",
      "parents": [
        "65533bbf63b4f37723fdfedc73d0653958973323"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:48 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:59 2012 +0100"
      },
      "message": "PM / Domains: Introduce \"always on\" device flag\n\nThe TMU device on the Mackerel board belongs to the A4R power domain\nand loses power when the domain is turned off.  Unfortunately, the\nTMU driver is not prepared to cope with such situations and crashes\nthe system when that happens.  To work around this problem introduce\na new helper function, pm_genpd_dev_always_on(), allowing a device\ndriver to mark its device as \"always on\" in case it belongs to a PM\ndomain, which will make the generic PM domains core code avoid\npowering off the domain containing the device, both at run time and\nduring system suspend.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-by: Simon Horman \u003chorms@verge.net.au\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "65533bbf63b4f37723fdfedc73d0653958973323",
      "tree": "e2a16b9b0966ae6aea1970fe377c70796a281c31",
      "parents": [
        "cc85b20780562d404e18a47b9b55b4a5102ae53e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:37 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:48 2012 +0100"
      },
      "message": "PM / Domains: Fix hibernation restore of devices, v2\n\nDuring resume from hibernation pm_genpd_restore_noirq() should only\npower off domains whose suspend_power_off flags are set once and\nnot every time it is called for a device in the given domain.\nMoreover, it shouldn\u0027t decrement genpd-\u003esuspended_count, because\nthat field is not touched during device freezing and therefore it is\nalways equal to 0 when pm_genpd_restore_noirq() runs for the first\ndevice in the given domain.\n\nThis means pm_genpd_restore_noirq() may use genpd-\u003esuspended_count\nto determine whether or not it it has been called for the domain in\nquestion already in this cycle (it only needs to increment that\nfield every time it runs for this purpose) and whether or not it\nshould check if the domain needs to be powered off.  For that to\nwork, though, pm_genpd_prepare() has to clear genpd-\u003esuspended_count\nwhen it runs for the first device in the given domain (in which case\nthat flag need not be cleared during domain initialization).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "cc85b20780562d404e18a47b9b55b4a5102ae53e",
      "tree": "e7d481ea6f435e90c59cda9433fd68d944070c19",
      "parents": [
        "b642631d38c28fefd1232a6b96713eb54b60130d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:31 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:41 2012 +0100"
      },
      "message": "PM / Domains: Fix handling of wakeup devices during system resume\n\nDuring system suspend pm_genpd_suspend_noirq() checks if the given\ndevice is in a wakeup path (i.e. it appears to be needed for one or\nmore wakeup devices to work or is a wakeup device itself) and if it\nneeds to be \"active\" for wakeup to work.  If that is the case, the\nfunction returns 0 without incrementing the device domain\u0027s counter\nof suspended devices and without executing genpd_stop_dev() for the\ndevice.  In consequence, the device is not stopped (e.g. its clock\nisn\u0027t disabled) and power is always supplied to its domain in the\nresulting system sleep state.\n\nHowever, pm_genpd_resume_noirq() doesn\u0027t repeat that check and it\nruns genpd_start_dev() and decrements the domain\u0027s counter of\nsuspended devices even for the wakeup device that weren\u0027t stopped by\npm_genpd_suspend_noirq().  As a result, the start callback may be run\nunnecessarily for them and their domains\u0027 counters of suspended\ndevices may become negative.  Both outcomes aren\u0027t desirable, so fix\npm_genpd_resume_noirq() to look for wakeup devices that might not be\nstopped by during system suspend.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "cd593accdcc27ccbe6498d9ad1c2b6cc8e1d830d",
      "tree": "9424d3ac86e753706cc6c3d7e6072d2a73711e29",
      "parents": [
        "11b91d6fe7272452c999573bab33c15c2f03dc31",
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 14 07:44:11 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 14 07:44:11 2012 +0100"
      },
      "message": "Merge tag \u0027v3.3-rc7\u0027 into x86/mce\n\nMerge reason: Update from an ancient -rc1 base to an almost-final stable kernel.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85dc0b8a4019e38ad4fd0c008f89a5c241805ac2",
      "tree": "a73c5864d8ce4a6845e616ade7b8107e181279b6",
      "parents": [
        "a9b542ee607a8afafa9447292394959fc84ea650"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 01:01:39 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:37:14 2012 +0100"
      },
      "message": "PM / QoS: Make it possible to expose PM QoS latency constraints\n\nA runtime suspend of a device (e.g. an MMC controller) belonging to\na power domain or, in a more complicated scenario, a runtime suspend\nof another device in the same power domain, may cause power to be\nremoved from the entire domain.  In that case, the amount of time\nnecessary to runtime-resume the given device (e.g. the MMC\ncontroller) is often substantially greater than the time needed to\nrun its driver\u0027s runtime resume callback.  That may hurt performance\nin some situations, because user data may need to wait for the\ndevice to become operational, so we should make it possible to\nprevent that from happening.\n\nFor this reason, introduce a new sysfs attribute for devices,\npower/pm_qos_resume_latency_us, allowing user space to specify the\nupper bound of the time necessary to bring the (runtime-suspended)\ndevice up after the resume of it has been requested.  However, make\nthat attribute appear only for the devices whose drivers declare\nsupport for it by calling the (new) dev_pm_qos_expose_latency_limit()\nhelper function with the appropriate initial value of the attribute.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "263a5c8e16c34199ddf6de3f102e789ffa3ee26e",
      "tree": "4f049e339d522b2ab0ba3bed3ec217e4bbc83d35",
      "parents": [
        "54d20f006ceff1f2f1e69d0e54049b6c0765c039",
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "message": "Merge 3.3-rc6 into driver-core-next\n\nThis was done to resolve a conflict in the drivers/base/cpu.c file.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "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": "8b0372a258e6bd0e9e5ea3f3d5f05a6bf3972fee",
      "tree": "eb24995d9e5cc202f8dfc6b4bd15238d73904297",
      "parents": [
        "ef8a3fd6e5e12e8989dae97ba5491c2e39369af9"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:20:37 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:20:37 2012 -0800"
      },
      "message": "driver core: minor comment formatting cleanups\n\nCame in in the deferred probe patch, quick, clean them up before a\nkernel janitor finds them and sends me 4 individual patches to fix them\nup...\n\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.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": "48ed00031681c373ff81e78fd248710fe4cddda0",
      "tree": "dd90809d6017924ee528114a4205ab8cfd8422af",
      "parents": [
        "643161ace2a7624fd0106ede12ae43bcbbfc1de0",
        "b642631d38c28fefd1232a6b96713eb54b60130d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:20 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:20 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / Domains: Fix include for PM_GENERIC_DOMAINS\u003dn case\n  PM / Domains: Provide a dummy dev_gpd_data() when generic domains are not used\n  PM / Domains: Run late/early device suspend callbacks at the right time\n  ARM: EXYNOS: Hook up power domains to generic power domain infrastructure\n  PM / Domains: Add OF support\n"
    },
    {
      "commit": "643161ace2a7624fd0106ede12ae43bcbbfc1de0",
      "tree": "56fb5d4af5c5e46da8cfe3c613a84f1402a60d41",
      "parents": [
        "743c5bc210f45b728a246da65fd1a3160566d34d",
        "37f08be11be9a7d9351fb1b9b408259519a126f3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "message": "Merge branch \u0027pm-sleep\u0027\n\n* pm-sleep:\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  PM: Add comment describing relationships between PM callbacks to pm.h\n  PM / Sleep: Drop suspend_stats_update()\n  PM / Sleep: Make enter_state() in kernel/power/suspend.c static\n  PM / Sleep: Unify kerneldoc comments in kernel/power/suspend.c\n  PM / Sleep: Remove unnecessary label from suspend_freeze_processes()\n  PM / Sleep: Do not check wakeup too often in try_to_freeze_tasks()\n  PM / Sleep: Initialize wakeup source locks in wakeup_source_add()\n  PM / Hibernate: Refactor and simplify freezer_test_done\n  PM / Hibernate: Thaw kernel threads in hibernation_snapshot() in error/test path\n  PM / Freezer / Docs: Document the beauty of freeze/thaw semantics\n  PM / Suspend: Avoid code duplication in suspend statistics update\n  PM / Sleep: Introduce generic callbacks for new device PM phases\n  PM / Sleep: Introduce \"late suspend\" and \"early resume\" of devices\n"
    },
    {
      "commit": "8671bbc1bd0442ef0eab27f7d56216431c490820",
      "tree": "23bc127d43be672ab82b9602e21825522d62a28a",
      "parents": [
        "05b4877f6a4f1ba4952d1222213d262bf8c132b7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Feb 21 23:47:56 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:46 2012 +0100"
      },
      "message": "PM / Sleep: Add more wakeup source initialization routines\n\nThe existing wakeup source initialization routines are not\nparticularly useful for wakeup sources that aren\u0027t created by\nwakeup_source_create(), because their users have to open code\nfilling the objects with zeros and setting their names.  For this\nreason, introduce routines that can be used for initializing, for\nexample, static wakeup source objects.\n\nRequested-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4782e1654bdbd30cf307da090b3c4f70157477cb",
      "tree": "72305fb2e3fff719330f5302dda785c044e25575",
      "parents": [
        "da863cddd831b0f4bf2d067f8b75254f1be94590"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:39 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:27 2012 +0100"
      },
      "message": "PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n\nIf __pm_stay_awake() is called after __pm_wakeup_event() for the same\nwakep source object before its timer expires, it won\u0027t cancel the\ntimer, so the wakeup source will be deactivated from the timer\nfunction as scheduled by __pm_wakeup_event().  In that case\n__pm_stay_awake() doesn\u0027t have any effect beyond incrementing\nthe wakeup source\u0027s event_count field, although it should cancel\nthe timer and make the wakeup source stay active until __pm_relax()\nis called for it.\n\nTo fix this problem make __pm_stay_awake() delete the wakeup source\u0027s\ntimer and ensure that it won\u0027t be deactivated from the timer funtion\nafterwards by clearing its timer_expires field.\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "da863cddd831b0f4bf2d067f8b75254f1be94590",
      "tree": "f217486238bec611a0c08b88ae64249ba60a544e",
      "parents": [
        "d94aff87826ee6aa43032f4c0263482913f4e2c8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:33 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:14 2012 +0100"
      },
      "message": "PM / Sleep: Fix race conditions related to wakeup source timer function\n\nIf __pm_wakeup_event() has been used (with a nonzero timeout) to\nreport a wakeup event and then __pm_relax() immediately followed by\n__pm_stay_awake() is called or __pm_wakeup_event() is called once\nagain for the same wakeup source object before its timer expires, the\ntimer function pm_wakeup_timer_fn() may still be run as a result of\nthe previous __pm_wakeup_event() call.  In either of those cases it\nmay mistakenly deactivate the wakeup source that has just been\nactivated.\n\nTo prevent that from happening, make wakeup_source_deactivate()\nclear the wakeup source\u0027s timer_expires field and make\npm_wakeup_timer_fn() check if timer_expires is different from zero\nand if it\u0027s not in future before calling wakeup_source_deactivate()\n(if timer_expires is 0, it means that the timer has just been\ndeleted and if timer_expires is in future, it means that the timer\nhas just been rescheduled to a different time).\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "d94aff87826ee6aa43032f4c0263482913f4e2c8",
      "tree": "716777b9f6e3642d4fcd11e14000da92773b1edb",
      "parents": [
        "69f1d475cc80c55121852b3030873cdd407fd31c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:20 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:02 2012 +0100"
      },
      "message": "PM / Sleep: Fix possible infinite loop during wakeup source destruction\n\nIf wakeup_source_destroy() is called for an active wakeup source that\nis never deactivated, it will spin forever.  To prevent that from\nhappening, make wakeup_source_destroy() call __pm_relax() for the\nwakeup source object it is about to free instead of waiting until\nit will be deactivated by someone else.  However, for this to work\nit also needs to make sure that the timer function will not be\nexecuted after the final __pm_relax(), so make it run\ndel_timer_sync() on the wakeup source\u0027s timer beforehand.\n\nAdditionally, update the kerneldoc comment to document the\nrequirement that __pm_stay_awake() and __pm_wakeup_event() must not\nbe run in parallel with wakeup_source_destroy().\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "82150451816ac6d735d8f90babe102636121d67e",
      "tree": "25b588eeba2443d93804f2c8c7196c706c420f05",
      "parents": [
        "8949490f70cf2cda615fb0fd0ddc299b531e6e48",
        "a6539c32949063c8147905512a83a98842c2d254"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:34:01 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:34:01 2012 +0000"
      },
      "message": "Merge tag \u0027topic/introspection\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into HEAD\n\nNew interfaces to allow other subsystems to gather information about the\nregmap, allowing them to build further subsystem specific generic\nfeatures on top of the regmap.\n\nMerged into ASoC in order to allow us to implement SND_SOC_BYTES_MASK()\ncontrols which need to know the word size of the underlying registers.\n"
    },
    {
      "commit": "a6539c32949063c8147905512a83a98842c2d254",
      "tree": "0eb2d7a118d3fc94b998bc6fe24239fcdefa4450",
      "parents": [
        "b01543dfe67bb1d191998e90d20534dc354de059"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 17 14:20:14 2012 -0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:17:08 2012 +0000"
      },
      "message": "regmap: Allow users to query the size of register values\n\nGeneric infrastructure based on top of regmap may want to operate on\nblocks of data and therefore find it useful to find the size of the\nregister values. Provide an accessor operation for this.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "fa2c8f401797eee814b7b9fa0b23fa6c4c3f5533",
      "tree": "826fb23071b866e112d6e9c510fe3ad4d668acdc",
      "parents": [
        "a387419612f9c246701a5080bccecf3c04f65277",
        "b01543dfe67bb1d191998e90d20534dc354de059"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Feb 19 18:35:12 2012 -0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Feb 19 18:35:12 2012 -0800"
      },
      "message": "Merge tag \u0027v3.3-rc4\u0027 into for-3.4 in order to resolve the conflict\nresolved below within the FSI driver and allow the application of the\ndmaeengine conversion that depends on this resolution.\n\nLinux 3.3-rc4\n\nConflicts:\n\tsound/soc/sh/fsi.c\n"
    },
    {
      "commit": "bff98bfcdb2124e4e640fa6d7c9c7c3d21362760",
      "tree": "6d94d9e8ab057fb85cd634e15a1ddd15df554d30",
      "parents": [
        "4686066689482214781573fcb42300f713d0210c",
        "61cddc57dc14a5dffa0921d9a24fd68edbb374ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:37:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:37:25 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nFixes a bootstrapping issue for some registers when a less commonly used\nmethod for register cache initialisation is used.  Only affects a fairly\nsmall proportion of users that both don\u0027t use explicit register defaults\nand do use the cache.\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: Fix cache defaults initialization from raw cache defaults\n"
    },
    {
      "commit": "61cddc57dc14a5dffa0921d9a24fd68edbb374ac",
      "tree": "f909dda9bab29b39cecbd67bc9af008a0cf1ec03",
      "parents": [
        "d65b4e98d7ea3038b767b70fe8be959b2913f16d"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Feb 15 10:23:25 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 15 08:31:32 2012 -0800"
      },
      "message": "regmap: Fix cache defaults initialization from raw cache defaults\n\nCurrently registers with a value of 0 are ignored when initializing the register\ndefaults from raw defaults. This worked in the past, because registers without a\nexplicit default were assumed to have a default value of 0. This was changed in\ncommit b03622a8 (\"regmap: Ensure rbtree syncs registers set to zero properly\").\nAs a result registers, which have a raw default value of 0 are now assumed to\nhave no default. This again can result in unnecessary writes when syncing the\ncache. It will also result in unnecessary reads for e.g. the first update\noperation. In the case where readback is not possible this will even let the\nupdate operation fail, if the register has not been written to before.\n\nSo this patch removes the check. Instead it adds a check to ignore raw defaults\nfor registers which are volatile, since those registers are not cached.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "7c95149b7f1f61201b12c73c4862a41bf2428961",
      "tree": "33917dbbd8b8cbbf917262e42baf3a528b752149",
      "parents": [
        "a556d5b58345ccf51826b9ceac078072f830738b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 11 00:00:11 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 13 16:25:51 2012 +0100"
      },
      "message": "PM / Sleep: Initialize wakeup source locks in wakeup_source_add()\n\nInitialize wakeup source locks in wakeup_source_add() instead of\nwakeup_source_create(), because otherwise the locks of the wakeup\nsources that haven\u0027t been allocated with wakeup_source_create()\naren\u0027t initialized and handled properly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "74d1d82cdaaec727f5072eb1c9f49b7e920e076f",
      "tree": "a1bee0010203df0465df33fb337ae66bb6b59fee",
      "parents": [
        "956563362be8ac7ce084b00825168be1adfb29ee"
      ],
      "author": {
        "name": "Lee Jones",
        "email": "lee.jones@linaro.org",
        "time": "Mon Feb 06 11:22:22 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 10 11:42:25 2012 -0800"
      },
      "message": "drivers/base: add bus for System-on-Chip devices\n\nTraditionally, any System-on-Chip based platform creates a flat list\nof platform_devices directly under /sys/devices/platform.\n\nIn order to give these some better structure, this introduces a new\nbus type for soc_devices that are registered with the new\nsoc_device_register() function.  All devices that are on the same\nchip should then be registered as child devices of the soc device.\n\nThe soc bus also exports a few standardised device attributes which\nallow user space to query the specific type of soc.\n\nSigned-off-by: Lee Jones \u003clee.jones@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "29bb5d4fd3140a7d5d02d858118c74a45f15c296",
      "tree": "bed72baeafecb0e33e816709c432595804dc711d",
      "parents": [
        "15f51136719699d7204eeeccd66849a4d90ae426"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Feb 08 15:11:17 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Feb 08 15:11:17 2012 -0800"
      },
      "message": "driver-core: cpu: fix kobject warning when hotplugging a cpu\n\nDue to the sysdev conversion to struct device, the cpu objects get\nreused when adding a cpu after offlining it, which causes a big warning\nthat the kobject portion is not properly initialized.\n\nSo clear out the object before we register it again, so all is quiet.\n\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "321bf4ed5ff5f7c62ef59f33b7eec5b154391f0a",
      "tree": "1fe34d7f78a690ba780d4e2ed01e48d705d345dd",
      "parents": [
        "2885e25c422fb68208f677f944a45fce8eda2a3c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Jan 30 13:57:12 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 15:50:05 2012 -0800"
      },
      "message": "drivers/base/memory.c: fix memory_dev_init() long delay\n\nOne system with 2048g ram, reported soft lockup on recent kernel.\n\n[   34.426749] cpu_dev_init done\n[   61.166399] BUG: soft lockup - CPU#0 stuck for 22s! [swapper/0:1]\n[   61.166733] Modules linked in:\n[   61.166904] irq event stamp: 1935610\n[   61.178431] hardirqs last  enabled at (1935609): [\u003cffffffff81ce8c05\u003e] mutex_lock_nested+0x299/0x2b4\n[   61.178923] hardirqs last disabled at (1935610): [\u003cffffffff81cf2bab\u003e] apic_timer_interrupt+0x6b/0x80\n[   61.198767] softirqs last  enabled at (1935476): [\u003cffffffff8106e59c\u003e] __do_softirq+0x195/0x1ab\n[   61.218604] softirqs last disabled at (1935471): [\u003cffffffff81cf359c\u003e] call_softirq+0x1c/0x30\n[   61.238408] CPU 0\n[   61.238549] Modules linked in:\n[   61.238744]\n[   61.238825] Pid: 1, comm: swapper/0 Not tainted 3.3.0-rc1-tip-yh-02076-g962f689-dirty #171\n[   61.278212] RIP: 0010:[\u003cffffffff810b3e3a\u003e]  [\u003cffffffff810b3e3a\u003e] lock_release+0x90/0x9c\n[   61.278627] RSP: 0018:ffff883f64dbfd70  EFLAGS: 00000246\n[   61.298287] RAX: ffff883f64dc0000 RBX: 0000000000000000 RCX: 000000000000008b\n[   61.298690] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000\n[   61.318383] RBP: ffff883f64dbfda0 R08: 0000000000000001 R09: 000000000000008b\n[   61.338215] R10: 0000000000000000 R11: 0000000000000000 R12: ffff883f64dbfd10\n[   61.338610] R13: ffff883f64dc0708 R14: ffff883f64dc0708 R15: ffffffff81095657\n[   61.358299] FS:  0000000000000000(0000) GS:ffff883f7d600000(0000) knlGS:0000000000000000\n[   61.378118] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n[   61.378450] CR2: 0000000000000000 CR3: 00000000024af000 CR4: 00000000000007f0\n[   61.398144] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n[   61.417918] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n[   61.418260] Process swapper/0 (pid: 1, threadinfo ffff883f64dbe000, task ffff883f64dc0000)\n[   61.445358] Stack:\n[   61.445511]  0000000000000002 ffff897f649ba168 ffff883f64dbfe10 ffff88ff64bb57a8\n[   61.458040]  0000000000000000 0000000000000000 ffff883f64dbfdc0 ffffffff81ceb1b4\n[   61.458491]  000000000011608c ffff88ff64bb58a8 ffff883f64dbfdf0 ffffffff81c57638\n[   61.478215] Call Trace:\n[   61.478367]  [\u003cffffffff81ceb1b4\u003e] _raw_spin_unlock+0x21/0x2e\n[   61.497994]  [\u003cffffffff81c57638\u003e] klist_next+0x9e/0xbc\n[   61.498264]  [\u003cffffffff8148ba99\u003e] next_device+0xe/0x1e\n[   61.517867]  [\u003cffffffff8148c0cc\u003e] subsys_find_device_by_id+0xb7/0xd6\n[   61.518197]  [\u003cffffffff81498846\u003e] find_memory_block_hinted+0x3d/0x66\n[   61.537927]  [\u003cffffffff8149887f\u003e] find_memory_block+0x10/0x12\n[   61.538193]  [\u003cffffffff814988b6\u003e] add_memory_section+0x35/0x9e\n[   61.557932]  [\u003cffffffff827fecef\u003e] memory_dev_init+0x68/0xda\n[   61.558227]  [\u003cffffffff827fec01\u003e] driver_init+0x97/0xa7\n[   61.577853]  [\u003cffffffff827cdf3c\u003e] kernel_init+0xf6/0x1c0\n[   61.578140]  [\u003cffffffff81cf34a4\u003e] kernel_thread_helper+0x4/0x10\n[   61.597850]  [\u003cffffffff81ceb59d\u003e] ? retint_restore_args+0xe/0xe\n[   61.598144]  [\u003cffffffff827cde46\u003e] ? start_kernel+0x3ab/0x3ab\n[   61.617826]  [\u003cffffffff81cf34a0\u003e] ? gs_change+0xb/0xb\n[   61.618060] Code: 10 48 83 3b 00 eb e8 4c 89 f2 44 89 fe 4c 89 ef e8 e1 fe ff ff 65 48 8b 04 25 40 bc 00 00 c7 80 cc 06 00 00 00 00 00 00 41 54 9d \u003c5e\u003e 5b 41 5c 41 5d 41 5e 41 5f 5d c3 55 48 89 e5 41 57 41 89 cf\n[   89.285380] memory_dev_init done\n\nFinally it takes about 55s to create 16400 memory entries.\n\nRoot cause: for x86_64, 2048g (with 2g hole at [2g,4g), and TOP2 will be 2050g), will have 16400 memory block.\n\nfind_memory_block/subsys_find_device_by_id will be expensive with that many entries.\n\nActually, we don\u0027t need to find that memory block for BOOT path.\n\nSkip that finding make it get back to normal.\n\n[   34.466696] cpu_dev_init done\n[   35.290080] memory_dev_init done\n\nAlso solved the delay with topology_init when sections_per_block is not 1.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Nathan Fontenot \u003cnfont@austin.ibm.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\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": "2885e25c422fb68208f677f944a45fce8eda2a3c",
      "tree": "5707136bf11aeac99e9a47030325c1681933895b",
      "parents": [
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 10:36:33 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 10:43:16 2012 -0800"
      },
      "message": "driver core: cpu: remove kernel warning when removing a cpu\n\nWith the movement of the cpu sysdev code to be real stuct devices, now\nwhen we remove a cpu from the system, the driver core rightfully\ncomplains that there is not a release method for this device.\n\nFor now, paper over this issue by quieting the driver core, but comment\nthis in detail.  This will be resolved in future kernels to be solved\nproperly.\n\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "07d57a32fb6eb2da017796e038682f817a4f685e",
      "tree": "4c7bb83cbda8db99ed91f575d8355c5b45b16cfb",
      "parents": [
        "7aff0fe33033fc75b61446ba29d38b1b1354af9f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Feb 01 11:22:22 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Feb 01 14:26:30 2012 -0700"
      },
      "message": "drivercore: Output common devicetree information in uevent\n\nWhen userspace needs to find a specific device, it currently isn\u0027t easy to\nresolve a /sys/devices/ path from a specific device tree node.  Nor is it\neasy to obtain the compatible list for devices.\n\nThis patch generalizes the code that inserts OF_* values into the uevent\ndevice attribute so that any device that is attached to an OF node will\nhave that information exported to userspace.  Without this patch only\nplatform devices and some powerpc-specific busses have access to this\ndata.\n\nThe original function also creates a MODALIAS property for the compatible\nlist, but that code has not been generalized into the common case because\nit has the potential to break module loading on a lot of bus types.  Bus\ntypes are still responsible for their own MODALIAS properties.\n\nBoot tested on ARM and compile tested on PowerPC and SPARC.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Tobias Klauser \u003ctklauser@distanz.ch\u003e\nCc: Frederic Lambert \u003cfrdrc66@gmail.com\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Mark Brown \u003cbroonie@sirena.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "dcaad77a8074b6de58e745546bc543d5538404f2",
      "tree": "5f988393b64f1a8053f2f5d0be7113e991d40886",
      "parents": [
        "0496c8ae366724a0a2136cec09a2e277e782c126",
        "91cfbd4ee0875f8a826731983378670012ba6e01"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 01 22:18:43 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 01 22:18:43 2012 +0100"
      },
      "message": "Merge branch \u0027v3.4-for-rafael\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into pm-domains\n\n* \u0027v3.4-for-rafael\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:\n  ARM: EXYNOS: Hook up power domains to generic power domain infrastructure\n  PM / Domains: Add OF support\n"
    },
    {
      "commit": "177f72fd101d512d938558b53cd4faa6a5434090",
      "tree": "1cfe58343c705f02c53886d7aa781b97b671b704",
      "parents": [
        "761bfdd91184c6662a9233976e855b4ccb883c96",
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 01 10:08:15 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 01 10:08:15 2012 +0000"
      },
      "message": "Merge tag \u0027v3.3-rc2\u0027 into for-3.4\n\nA reasonable amount of new development is causing fiddly merge conflicts\nbetween different resource management changes (mostly fixing bugs in\nresource management due to noticing things while doing enhancements in\nthe same area).\n\nLinux 3.3-rc2\n\n.. several days delayed. No reason, I just didn\u0027t think of it.\n"
    },
    {
      "commit": "0496c8ae366724a0a2136cec09a2e277e782c126",
      "tree": "29fce6f2a0b5e445b01f4c471f1c9d3aeead3d40",
      "parents": [
        "e470d06655e00749f6f9372e4fa4f20cea7ed7c5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:39:02 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:39:02 2012 +0100"
      },
      "message": "PM / Domains: Run late/early device suspend callbacks at the right time\n\nAfter the introduction of the late/early phases of device\nsuspend/resume during system-wide power transitions it is possible\nto make the generic PM domains code execute its default late/early\ndevice suspend/resume callbacks during those phases instead of the\ncorresponding _noirq phases.  The _noirq device suspend/resume\nphases were only used for executing those callbacks, because this\nwas the only way it could be done, but now we can do better.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e470d06655e00749f6f9372e4fa4f20cea7ed7c5",
      "tree": "63e56f01b27ee9693bfb9d9127e4763ba0937057",
      "parents": [
        "cf579dfb82550e34de7ccf3ef090d8b834ccd3a9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:38:41 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:38:41 2012 +0100"
      },
      "message": "PM / Sleep: Introduce generic callbacks for new device PM phases\n\nIntroduce generic subsystem callbacks for the new phases of device\nsuspend/resume during system power transitions: \"late suspend\",\n\"early resume\", \"late freeze\", \"early thaw\", \"late poweroff\",\n\"early restore\".\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "cf579dfb82550e34de7ccf3ef090d8b834ccd3a9",
      "tree": "764ed72670c18c86d3eb9650025c56d661a31315",
      "parents": [
        "181e9bdef37bfcaa41f3ab6c948a2a0d60a268b5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:38:29 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:38:29 2012 +0100"
      },
      "message": "PM / Sleep: Introduce \"late suspend\" and \"early resume\" of devices\n\nThe current device suspend/resume phases during system-wide power\ntransitions appear to be insufficient for some platforms that want\nto use the same callback routines for saving device states and\nrelated operations during runtime suspend/resume as well as during\nsystem suspend/resume.  In principle, they could point their\n.suspend_noirq() and .resume_noirq() to the same callback routines\nas their .runtime_suspend() and .runtime_resume(), respectively,\nbut at least some of them require device interrupts to be enabled\nwhile the code in those routines is running.\n\nIt also makes sense to have device suspend-resume callbacks that will\nbe executed with runtime PM disabled and with device interrupts\nenabled in case someone needs to run some special code in that\ncontext during system-wide power transitions.\n\nApart from this, .suspend_noirq() and .resume_noirq() were introduced\nas a workaround for drivers using shared interrupts and failing to\nprevent their interrupt handlers from accessing suspended hardware.\nIt appears to be better not to use them for other porposes, or we may\nhave to deal with some serious confusion (which seems to be happening\nalready).\n\nFor the above reasons, introduce new device suspend/resume phases,\n\"late suspend\" and \"early resume\" (and analogously for hibernation)\nwhose callback will be executed with runtime PM disabled and with\ndevice interrupts enabled and whose callback pointers generally may\npoint to runtime suspend/resume routines.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nReviewed-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "0a9626575400879d1d5e6bc8768188b938d7c501",
      "tree": "131242645033de27d549d9cb5d97f0043914b6d2",
      "parents": [
        "e3b8369ca8f2fd756031dd972224bc70c2364ec2",
        "ce597919361dcec97341151690e780eade2a9cf4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 28 18:20:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 28 18:20:48 2012 -0800"
      },
      "message": "Merge tag \u0027driver-core-3.3-rc1-bugfixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nHere are some patches for the 3.3-rc1 tree.\n\nIt contains the removal of the sysdev code, now that all users of it are\ngone, as well as some sysfs bugfixes that have been reported by users.\nThere are also some documentation updates here as well.\n\n* tag \u0027driver-core-3.3-rc1-bugfixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:\n  sysfs: Complain bitterly about attempts to remove files from nonexistent directories.\n  stable: update documentation to ask for kernel version\n  base/core.c:fix typo in comment in function device_add\n  Documentation: devres: add allocation functions to list of supported calls\n  Documentation update for the driver model core\n  kernel-doc: fix new warnings in driver-core\n  kernel-doc: fix new warnings in debugfs\n  kernel-doc: fix new warnings in device.h\n  driver core: remove drivers/base/sys.c and include/linux/sysdev.h\n"
    },
    {
      "commit": "c8aa130b74cc5b112cb2b119d3b477abaaf6e5b2",
      "tree": "80ca3b93767b0aec09ed566924c196033ad12b49",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Thomas Abraham",
        "email": "thomas.abraham@linaro.org",
        "time": "Fri Jan 27 15:22:07 2012 +0900"
      },
      "committer": {
        "name": "Kukjin Kim",
        "email": "kgene.kim@samsung.com",
        "time": "Fri Jan 27 15:22:07 2012 +0900"
      },
      "message": "PM / Domains: Add OF support\n\nA device node pointer is added to generic pm domain structure to associate\nthe domain with a node in the device tree. The platform code parses the\ndevice tree to find available nodes representing the generic power domain,\ninstantiates the available domains and initializes them by calling\npm_genpd_init().\n\nNodes representing the devices include a phandle of the power domain to\nwhich it belongs. As these devices get instantiated, the driver code\ncheckes for availability of a power domain phandle, converts the phandle\nto a device node and uses the new pm_genpd_of_add_device() api to\nassociate the device with a power domain.\n\npm_genpd_of_add_device() runs through its list of registered power domains\nand matches the OF node of the domain with the one specified as the\nparameter. If a match is found, the device is associated with the matched\ndomain.\n\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Thomas Abraham \u003cthomas.abraham@linaro.org\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Kukjin Kim \u003ckgene.kim@samsung.com\u003e\n"
    },
    {
      "commit": "fad12ac8c8c2591c7f4e61d19b6a9d76cd49fafa",
      "tree": "e2a77737265a193bbec7ecfd08f4989931a0ba89",
      "parents": [
        "78ff123b05fb15beb1ad670372eea0d299d0b8af"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Jan 26 00:09:14 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 26 16:49:08 2012 -0800"
      },
      "message": "CPU: Introduce ARCH_HAS_CPU_AUTOPROBE and X86 parts\n\nThis patch is based on Andi Kleen\u0027s work:\nImplement autoprobing/loading of modules serving CPU\nspecific features (x86cpu autoloading).\n\nAnd Kay Siever\u0027s work to get rid of sysdev cpu structures\nand making use of struct device instead.\n\nBefore, the cpuid driver had to be loaded to get the x86cpu\nautoloading feature. With this patch autoloading works through\nthe /sys/devices/system/cpu object\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4e9f44ba29f20484615a461244bfd3a419391490",
      "tree": "490dd38bb8d14765327cee0be2f9731254e9c402",
      "parents": [
        "87f71ae2dd7471c1b4c94100be1f218e91dc64c3",
        "5f7b88d51e89771f64c15903b96b5933dd0bc6d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 11:40:13 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 11:40:13 2012 +0100"
      },
      "message": "Merge tag \u0027mce-recovery-for-tip\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras into x86/mce\n\nImplement MCE recovery for the data load error path and assorted cleanups.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ca4e8c43888f1794485f48c847cb3c9b7272a7d",
      "tree": "b00ec4e07346a59a7457716aa9ead4c95cd8a0d4",
      "parents": [
        "1589cb1a94c381579a0235ca708d9e2dca6d3a39",
        "421e8d2de3bd8b089dc6322d8589b7eb38437a23"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 25 15:11:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 25 15:11:57 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nA fairly simple bugfix for a WARN_ON() which was triggered in the cache\nreset support as a result of some subsequent work.  There\u0027s only one\nmainline user for the code path that\u0027s updated right now (wm8994) so\nshould be low risk.\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: Reset cache status when reinitialsing the cache\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": "fde25a9b63b9a3dc91365c394a426ebe64cfc2da",
      "tree": "ecc24bd2702cb7cb32cd4d22729541d5c79cee39",
      "parents": [
        "2b31594a9523449b168946725689d039c80204de"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Jan 24 13:34:24 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 16:00:34 2012 -0800"
      },
      "message": "Driver core: driver_find() drops reference before returning\n\nAs part of the removal of get_driver()/put_driver(), this patch\n(as1510) changes driver_find(); it now drops the reference it acquires\nbefore returning.  The patch also adjusts all the callers of\ndriver_find() to remove the now unnecessary calls to put_driver().\n\nIn addition, the patch adds a warning to driver_find(): Callers must\nmake sure the driver they are searching for does not get unloaded\nwhile they are using it.  This has always been the case; driver_find()\nhas never prevented a driver from being unregistered or unloaded.\nHence the patch will not introduce any new bugs.  The existing callers\nall seem to be okay in this respect, however I don\u0027t understand the\nvideo drivers well enough to be certain about them.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCC: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nCC: Andy Walls \u003cawalls@md.metrocast.net\u003e\nCC: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2b31594a9523449b168946725689d039c80204de",
      "tree": "001cae76042df01ea712e198b62a533a0a6886a5",
      "parents": [
        "c56d8a7362665d165ba992b6b7a8d6c13a26eafc"
      ],
      "author": {
        "name": "Jonghwan Choi",
        "email": "jhbird.choi@samsung.com",
        "time": "Sat Jan 14 11:06:03 2012 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 15:59:19 2012 -0800"
      },
      "message": "driver-core: Fix possible null reference in subsys_interface_unregister\n\nCheck if the sif is not NULL before de-referencing it\n\nSigned-off-by: Jonghwan Choi \u003cjhbird.choi@samsung.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "268863f43629ef88763400d0cae4a66c754a0d23",
      "tree": "85a924f3ea004e525f87f27bd78878d98ea86274",
      "parents": [
        "543f43ce87c45220a8ffbff5ff4b60122499ce5f"
      ],
      "author": {
        "name": "majianpeng",
        "email": "majianpeng@gmail.com",
        "time": "Wed Jan 11 15:12:06 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 10:47:42 2012 -0800"
      },
      "message": "base/core.c:fix typo in comment in function device_add\n\nSigned-off-by: majianpeng \u003cmajianpeng@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b10d5efdf7892d18b3b7d899edce2c8d9b80aea9",
      "tree": "e1e00c06b0c7e75350afb8713968243ae8c6a89c",
      "parents": [
        "4f4ffe52e1e5ddb9708fe075aaef4424f1fb744a"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Jan 17 11:39:00 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 10:47:41 2012 -0800"
      },
      "message": "Documentation update for the driver model core\n\nThis patch (as1509) documents two important points regarding the use\nof device structures in the driver model:\n\n\tStructures must be initialized to all 0\u0027s before they are\n\tpassed to device_initialize().\n\n\tStructures must not be passed to device_add() or\n\tdevice_register() more than once.\n\nAlthough these restrictions have applied ever since the driver model\nwas first created, they have not been mentioned anywhere.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4f4ffe52e1e5ddb9708fe075aaef4424f1fb744a",
      "tree": "b4ec4465217210cf14b9b831a8d5246b5b54cc2f",
      "parents": [
        "0863b04d1578879173aacbc5c7be749fccb70809"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:02:28 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 10:47:41 2012 -0800"
      },
      "message": "kernel-doc: fix new warnings in driver-core\n\nFix new kernel-doc warnings:\n\nWarning(drivers/base/bus.c:925): No description found for parameter \u0027key\u0027\nWarning(drivers/base/bus.c:1241): No description found for parameter \u0027subsys\u0027\nWarning(drivers/base/bus.c:1241): No description found for parameter \u0027groups\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ac1e3d4f5c1097422c6e72aeae322033e9a8c803",
      "tree": "adcebdad5f515a8453bfe48940822f57a6904c9d",
      "parents": [
        "eaed435a7b870a38d89dbdb535c7842d618d3214",
        "e4c89a508f4385a0cd8681c2749a2cd2fa476e40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 15:11:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 15:11:27 2012 -0800"
      },
      "message": "Merge tag \u0027pm-fixes-for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPower management fixes for 3.3\n\nTwo fixes for regressions introduced during the merge window, one fix for\na long-standing obscure issue in the computation of hibernate image size\nand two small PM documentation fixes.\n\n* tag \u0027pm-fixes-for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / Sleep: Fix read_unlock_usermodehelper() call.\n  PM / Hibernate: Rewrite unlock_system_sleep() to fix s2disk regression\n  PM / Hibernate: Correct additional pages number calculation\n  PM / Documentation: Fix minor issue in freezing_of_tasks.txt\n  PM / Documentation: Fix spelling mistake in basic-pm-debugging.txt\n"
    },
    {
      "commit": "e4c89a508f4385a0cd8681c2749a2cd2fa476e40",
      "tree": "0fd1683eb20ae32d80078fb8a585178838e1d242",
      "parents": [
        "72081624d5ad3cf56deb6e727b78c4e7a55e4eec"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@I-love.SAKURA.ne.jp",
        "time": "Mon Jan 23 21:59:08 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jan 23 21:59:08 2012 +0100"
      },
      "message": "PM / Sleep: Fix read_unlock_usermodehelper() call.\n\nCommit b298d289\n \"PM / Sleep: Fix freezer failures due to racy usermodehelper_is_disabled()\"\nadded read_unlock_usermodehelper() but read_unlock_usermodehelper() is called\nwithout read_lock_usermodehelper() when kmalloc() failed.\n\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nAcked-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "78d79559f2af1e77034436326aa20f2654074e4c",
      "tree": "26f56d919ce3b750c8d68aa45abf57cef174ac7e",
      "parents": [
        "42ae610c1a820ddecb80943d4ccfc936f7772535"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:02:28 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 driver-core\n\nFix new kernel-doc warnings:\n\nWarning(drivers/base/bus.c:925): No description found for parameter \u0027key\u0027\nWarning(drivers/base/bus.c:1241): No description found for parameter \u0027subsys\u0027\nWarning(drivers/base/bus.c:1241): No description found for parameter \u0027groups\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22f0d90a34827812413bb3fbeda6a2a79bb58423",
      "tree": "c54935a6e2637408da23aa261c81f89dffa0724e",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Jan 21 12:01:14 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jan 23 14:01:18 2012 +0000"
      },
      "message": "regmap: Support register patch sets\n\nDevice manufacturers frequently provide register sequences, usually not\nfully documented, to be run at startup in order to provide better defaults\nfor devices (for example, improving performance in the light of silicon\nevaluation). Support such updates by allowing drivers to register update\nsets with the core. These updates will be written to the device immediately\nand will also be rewritten when the cache is synced.\n\nThe assumption is that the reason for resyncing the cache will always be\nthat the device has been powered off. If this turns out to not be the case\nthen a separate operation can be provided.\n\nCurrently the implementation only allows a single set of updates to be\nspecified for a device, this could be extended in future.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e9c688a3272fd4b659228f3880de8109a94540e2",
      "tree": "c295a2db56a079a0f37703f186b44e57e1453527",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Jan 22 14:31:15 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Jan 22 14:31:15 2012 -0700"
      },
      "message": "driver core: remove drivers/base/sys.c and include/linux/sysdev.h\n\nNow that all users of \u0027struct sysdev\u0027 are removed from the kernel, we\ncan safely remove the .h and .c files for this code, to ensure that no\none accidentally starts to use it again.\n\nMany thanks for Kay who did all the hard work here on making this\nhappen.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "421e8d2de3bd8b089dc6322d8589b7eb38437a23",
      "tree": "b98bf2c5f9d26748129616268638b55b4106d167",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jan 20 13:39:37 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jan 20 13:49:30 2012 +0000"
      },
      "message": "regmap: Reset cache status when reinitialsing the cache\n\nWhen we reinitialise the cache make sure that we reset the cache access\nflags, ensuring that the reinitialised cache is in the default state\nwhich is what callers would and do expect given the function name.\n\nThis is particularly likely to cause issues in systems where there was no\ncache previously as those systems have cache bypass enabled, as for the\nwm8994 driver where this was noticed.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "97740400bc76b64781d01f8cdfbcf750582006ef",
      "tree": "85900329fbce72011339ab2348dcf13dde2a64fd",
      "parents": [
        "408e057870c8680a50963b08f9f7efaa151a74ec",
        "ee34a37049114303011e154478c63b977bcff24c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 15:02:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 15:02:30 2012 -0800"
      },
      "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:\n  PM / Hibernate: Drop the check of swap space size for compressed image\n  PM / shmobile: fix A3SP suspend method\n  PM / Domains: Skip governor functions for CONFIG_PM_RUNTIME unset\n  PM / Domains: Fix build for CONFIG_PM_SLEEP unset\n  PM: Make sysrq-o be available for CONFIG_PM unset\n"
    },
    {
      "commit": "e59a8db8d9b7c02e0bbefbeb18a3836288a97b8a",
      "tree": "6d507257fb36ecccdaed806869934419ae890506",
      "parents": [
        "0f1d6986bae57b6d11e2c9ce5e66b6c6b0e3684d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:39:36 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:39:36 2012 +0100"
      },
      "message": "PM / Domains: Skip governor functions for CONFIG_PM_RUNTIME unset\n\nThe governor functions in drivers/base/power/domain_governor.c\nare only used if CONFIG_PM_RUNTIME is set and they refer to data\nstructures that are only present in that case.  For this reason,\nthey shouldn\u0027t be compiled at all when CONFIG_PM_RUNTIME is not set.\n\nReported-by: Kukjin Kim \u003ckgene.kim@samsung.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "0f1d6986bae57b6d11e2c9ce5e66b6c6b0e3684d",
      "tree": "abf2a89b7c4c60e2165a347fcbf2dd892c12e8bb",
      "parents": [
        "dae5cbc2440b1d21a15715d0f1fb20f632dd38ee"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:39:25 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:39:25 2012 +0100"
      },
      "message": "PM / Domains: Fix build for CONFIG_PM_SLEEP unset\n\nSome callback functions defined in drivers/base/power/domain.c are\nonly necessary if CONFIG_PM_SLEEP is set and they call some other\nfunctions that are only available in that case.  For this reason,\nthey should not be compiled at all when CONFIG_PM_SLEEP is not set.\n\nReported-by: Magnus Damm \u003cdamm@opensource.se\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "3b32a592ea6e49145d4dc610b85dd9042226896d",
      "tree": "92dee3fcfc067390527bd7909a37ff8b223ac57c",
      "parents": [
        "642ce5251b4fefdb8f2a55396707b8fa9f953e05"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:05:14 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:05:14 2012 +0000"
      },
      "message": "dma-buf: drop option text so users don\u0027t select it.\n\nThis is going to be used by other subsystems so they should select it.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "f5138e42211d4e8bfbd6ac5b3816348da1533433",
      "tree": "c9d246be208547ded5dece81c57353f54d61ffd3",
      "parents": [
        "1f536b9e9f85456df93614b3c2f6a1a2b7d7cb9b"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Thu Jan 12 17:20:23 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "kdump: add udev events for memory online/offline\n\nCurrently no udev events for memory hotplug \"online\" and \"offline\" are\ngenerated:\n\n  # udevadm monitor\n  # echo offline \u003e /sys/devices/system/memory/memory4/state\n  \u003d\u003d\u003e No event\n\nWhen kdump is loaded, kexec detects the current memory configuration and\nstores it in the pre-allocated ELF core header.  Therefore, for kdump it\nis necessary to reload the kdump kernel with kexec when the memory\nconfiguration changes (e.g.  for online/offline hotplug memory).\n\nIn order to do this automatically, udev rules should be used.  This kernel\npatch adds udev events for \"online\" and \"offline\".  Together with this\nkernel patch, the following udev rules for online/offline have to be added\nto \"/etc/udev/rules.d/98-kexec.rules\":\n\n  SUBSYSTEM\u003d\u003d\"memory\", ACTION\u003d\u003d\"online\", PROGRAM\u003d\"/etc/init.d/kdump restart\"\n  SUBSYSTEM\u003d\u003d\"memory\", ACTION\u003d\u003d\"offline\", PROGRAM\u003d\"/etc/init.d/kdump restart\"\n\n[sfr@canb.auug.org.au: fixups for class to subsystem conversion]\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f13a1fd452f11c18004ba2422a6384b424ec8a9",
      "tree": "6aa799a5e095f8cfa03c7386e6d0a20ebda595e4",
      "parents": [
        "024f78462c3da710642a54939888a92e28704653"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Tue Jan 10 03:04:32 2012 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 15:50:11 2012 -0800"
      },
      "message": "cpu: Register a generic CPU device on architectures that currently do not\n\nfrv, h8300, m68k, microblaze, openrisc, score, um and xtensa currently\ndo not register a CPU device.  Add the config option GENERIC_CPU_DEVICES\nwhich causes a generic CPU device to be registered for each present CPU,\nand make all these architectures select it.\n\nRichard Weinberger \u003crichard@nod.at\u003e covered UML and suggested using\nper_cpu.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "024f78462c3da710642a54939888a92e28704653",
      "tree": "6ff97e571b36d66256d09cf06031b56ce789ec7e",
      "parents": [
        "4f58cb90bcb04cfe18f524d1c9a65edef5eb3f51"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Tue Jan 10 02:59:49 2012 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 15:49:43 2012 -0800"
      },
      "message": "cpu: Do not return errors from cpu_dev_init() which will be ignored\n\ncpu_dev_init() is only called from driver_init(), which does not check\nits return value.  Therefore make cpu_dev_init() return void.\n\nWe must register the CPU subsystem, so panic if this fails.\n\nIf sched_create_sysfs_power_savings_entries() fails, the damage is\ncontained, so ignore this (as before).\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8e369672af8700299ab372bad9397f230b1d591a",
      "tree": "8676cfdb7f8c1ac5ee124aef050d541d70f876d0",
      "parents": [
        "6950d76c531671ec389e36183311826597951ac6",
        "a125a3945c950caef001f22055bf201a36568533"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 14:05:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 14:05:09 2012 -0800"
      },
      "message": "Merge branch \u0027dma-buf-merge\u0027 of git://people.freedesktop.org/~airlied/linux\n\n* \u0027dma-buf-merge\u0027 of git://people.freedesktop.org/~airlied/linux:\n  dma-buf: mark EXPERIMENTAL for 1st release.\n  dma-buf: Documentation for buffer sharing framework\n  dma-buf: Introduce dma buffer sharing mechanism\n"
    },
    {
      "commit": "b7d845f8825b058b80e76320f573505afbf4a1fc",
      "tree": "dc66dec44b489723427c9c4a9a92ef6e9f17c55b",
      "parents": [
        "2943c833222ef87c111ee0c6b7b8519ad2983e99",
        "0a92815db789bd5a922d882826cf710f9b0b9d85"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:35:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:35:24 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (36 commits)\n  mfd: Clearing events requires event registers to be writable for da9052-core\n  mfd: Fix annotations in da9052-core\n  gpiolib: Mark da9052 driver broken\n  mfd: Declare da9052_regmap_config for the bus drivers\n  MFD: DA9052/53 MFD core module add SPI support v2\n  MFD: DA9052/53 MFD core module\n  regmap: Add irq_base accessor to regmap_irq\n  regmap: Allow drivers to reinitialise the register cache at runtime\n  regmap: Add trace event for successful cache reads\n  regmap: Allow regmap_update_bits() users to detect changes\n  regmap: Report if we actually handled an interrupt in regmap-irq\n  regmap: Fix rbtreee build when not using debugfs\n  regmap: Provide debugfs dump of the rbtree cache data\n  regmap: Do debugfs init before cache init\n  regmap: Suppress noop writes in regmap_update_bits()\n  regmap: Remove indexed cache type\n  regmap: Drop check whether a register is readable in regcache_read\n  regmap: Properly round cache_word_size\n  regmap: Add support for 10/14 register formating\n  regmap: Try cached read before checking if a hardware read is possible\n  ...\n"
    },
    {
      "commit": "98793265b429a3f0b3f1750e74d67cd4d740d162",
      "tree": "b0bd717673f0c21845cf053f3fb6b75d42530af5",
      "parents": [
        "b4a133da2eaccb844a7beaef16ffd9c76a0d21d3",
        "bd1b2a555952d959f47169056fca05acf7eff81f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)\n  Kconfig: acpi: Fix typo in comment.\n  misc latin1 to utf8 conversions\n  devres: Fix a typo in devm_kfree comment\n  btrfs: free-space-cache.c: remove extra semicolon.\n  fat: Spelling s/obsolate/obsolete/g\n  SCSI, pmcraid: Fix spelling error in a pmcraid_err() call\n  tools/power turbostat: update fields in manpage\n  mac80211: drop spelling fix\n  types.h: fix comment spelling for \u0027architectures\u0027\n  typo fixes: aera -\u003e area, exntension -\u003e extension\n  devices.txt: Fix typo of \u0027VMware\u0027.\n  sis900: Fix enum typo \u0027sis900_rx_bufer_status\u0027\n  decompress_bunzip2: remove invalid vi modeline\n  treewide: Fix comment and string typo \u0027bufer\u0027\n  hyper-v: Update MAINTAINERS\n  treewide: Fix typos in various parts of the kernel, and fix some comments.\n  clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR\n  gpio: Kconfig: drop unknown symbol \u0027CS5535_GPIO\u0027\n  leds: Kconfig: Fix typo \u0027D2NET_V2\u0027\n  sound: Kconfig: drop unknown symbol ARCH_CLPS7500\n  ...\n\nFix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new\nkconfig additions, close to removed commented-out old ones)\n"
    },
    {
      "commit": "eb59c505f8a5906ad2e053d14fab50eb8574fd6f",
      "tree": "c6e875adc12b481b916e847e8f80b8881a0fb02c",
      "parents": [
        "1619ed8f60959829d070d8f39cd2f8ca0e7135ce",
        "c233523b3d392e530033a7587d7970dc62a02361"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:10:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:10:57 2012 -0800"
      },
      "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: (76 commits)\n  PM / Hibernate: Implement compat_ioctl for /dev/snapshot\n  PM / Freezer: fix return value of freezable_schedule_timeout_killable()\n  PM / shmobile: Allow the A4R domain to be turned off at run time\n  PM / input / touchscreen: Make st1232 use device PM QoS constraints\n  PM / QoS: Introduce dev_pm_qos_add_ancestor_request()\n  PM / shmobile: Remove the stay_on flag from SH7372\u0027s PM domains\n  PM / shmobile: Don\u0027t include SH7372\u0027s INTCS in syscore suspend/resume\n  PM / shmobile: Add support for the sh7372 A4S power domain / sleep mode\n  PM: Drop generic_subsys_pm_ops\n  PM / Sleep: Remove forward-only callbacks from AMBA bus type\n  PM / Sleep: Remove forward-only callbacks from platform bus type\n  PM: Run the driver callback directly if the subsystem one is not there\n  PM / Sleep: Make pm_op() and pm_noirq_op() return callback pointers\n  PM/Devfreq: Add Exynos4-bus device DVFS driver for Exynos4210/4212/4412.\n  PM / Sleep: Merge internal functions in generic_ops.c\n  PM / Sleep: Simplify generic system suspend callbacks\n  PM / Hibernate: Remove deprecated hibernation snapshot ioctls\n  PM / Sleep: Fix freezer failures due to racy usermodehelper_is_disabled()\n  ARM: S3C64XX: Implement basic power domain support\n  PM / shmobile: Use common always on power domain governor\n  ...\n\nFix up trivial conflict in fs/xfs/xfs_buf.c due to removal of unused\nXBT_FORCE_SLEEP bit\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": "7affca3537d74365128e477b40c529d6f2fe86c8",
      "tree": "20be92bd240029182fc89c2c4f25401b7715dcae",
      "parents": [
        "356b95424cfb456e14a59eaa579422ce014c424b",
        "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (73 commits)\n  arm: fix up some samsung merge sysdev conversion problems\n  firmware: Fix an oops on reading fw_priv-\u003efw in sysfs loading file\n  Drivers:hv: Fix a bug in vmbus_driver_unregister()\n  driver core: remove __must_check from device_create_file\n  debugfs: add missing #ifdef HAS_IOMEM\n  arm: time.h: remove device.h #include\n  driver-core: remove sysdev.h usage.\n  clockevents: remove sysdev.h\n  arm: convert sysdev_class to a regular subsystem\n  arm: leds: convert sysdev_class to a regular subsystem\n  kobject: remove kset_find_obj_hinted()\n  m86k: gpio - convert sysdev_class to a regular subsystem\n  mips: txx9_sram - convert sysdev_class to a regular subsystem\n  mips: 7segled - convert sysdev_class to a regular subsystem\n  sh: dma - convert sysdev_class to a regular subsystem\n  sh: intc - convert sysdev_class to a regular subsystem\n  power: suspend - convert sysdev_class to a regular subsystem\n  power: qe_ic - convert sysdev_class to a regular subsystem\n  power: cmm - convert sysdev_class to a regular subsystem\n  s390: time - convert sysdev_class to a regular subsystem\n  ...\n\nFix up conflicts with \u0027struct sysdev\u0027 removal from various platform\ndrivers that got changed:\n - arch/arm/mach-exynos/cpu.c\n - arch/arm/mach-exynos/irq-eint.c\n - arch/arm/mach-s3c64xx/common.c\n - arch/arm/mach-s3c64xx/cpu.c\n - arch/arm/mach-s5p64x0/cpu.c\n - arch/arm/mach-s5pv210/common.c\n - arch/arm/plat-samsung/include/plat/cpu.h\n - arch/powerpc/kernel/sysfs.c\nand fix up cpu_is_hotpluggable() as per Greg in include/linux/cpu.h\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": "a125a3945c950caef001f22055bf201a36568533",
      "tree": "e513f8c634281b2ebea81216da4be15b41bdbc7e",
      "parents": [
        "a7df4719a3ca1c839bf703c5eca3a9c430466696"
      ],
      "author": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Dec 26 14:53:17 2011 +0530"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 10:20:30 2012 +0000"
      },
      "message": "dma-buf: mark EXPERIMENTAL for 1st release.\n\nMark dma-buf buffer sharing API as EXPERIMENTAL for first release.\nWe will remove this in later versions, once it gets smoothed out\nand has more users.\n\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@ti.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "d15bd7ee445d0702ad801fdaece348fdb79e6581",
      "tree": "6f18212787e77b9615c955506adda516206ecbac",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610"
      ],
      "author": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Dec 26 14:53:15 2011 +0530"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 10:20:21 2012 +0000"
      },
      "message": "dma-buf: Introduce dma buffer sharing mechanism\n\nThis is the first step in defining a dma buffer sharing mechanism.\n\nA new buffer object dma_buf is added, with operations and API to allow easy\nsharing of this buffer object across devices.\n\nThe framework allows:\n- creation of a buffer object, its association with a file pointer, and\n   associated allocator-defined operations on that buffer. This operation is\n   called the \u0027export\u0027 operation.\n- different devices to \u0027attach\u0027 themselves to this exported buffer object, to\n  facilitate backing storage negotiation, using dma_buf_attach() API.\n- the exported buffer object to be shared with the other entity by asking for\n   its \u0027file-descriptor (fd)\u0027, and sharing the fd across.\n- a received fd to get the buffer object back, where it can be accessed using\n   the associated exporter-defined operations.\n- the exporter and user to share the scatterlist associated with this buffer\n   object using map_dma_buf and unmap_dma_buf operations.\n\nAtleast one \u0027attach()\u0027 call is required to be made prior to calling the\nmap_dma_buf() operation.\n\nCouple of building blocks in map_dma_buf() are added to ease introduction\nof sync\u0027ing across exporter and users, and late allocation by the exporter.\n\nFor this first version, this framework will work with certain conditions:\n- *ONLY* exporter will be allowed to mmap to userspace (outside of this\n   framework - mmap is not a buffer object operation),\n- currently, *ONLY* users that do not need CPU access to the buffer are\n   allowed.\n\nMore details are there in the documentation patch.\n\nThis is based on design suggestions from many people at the mini-summits[1],\nmost notably from Arnd Bergmann \u003carnd@arndb.de\u003e, Rob Clark \u003crob@ti.com\u003e and\nDaniel Vetter \u003cdaniel@ffwll.ch\u003e.\n\nThe implementation is inspired from proof-of-concept patch-set from\nTomasz Stanislawski \u003ct.stanislaws@samsung.com\u003e, who demonstrated buffer sharing\nbetween two v4l2 devices. [2]\n\n[1]: https://wiki.linaro.org/OfficeofCTO/MemoryManagement\n[2]: http://lwn.net/Articles/454389\n\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@ti.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Dave Airlie \u003cairlied@redhat.com\u003e\nReviewed-and-Tested-by: Rob Clark \u003crob.clark@linaro.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "eea915bb0d1358755f151eaefb8208a2d5f3e10c",
      "tree": "35d593bde3caa1b79751e0ec1a6c6333b2a72506",
      "parents": [
        "8f257a142fc3868d69de3f996b95d7bdbc509560"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Mon Jan 02 15:31:23 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 16:31:29 2012 -0800"
      },
      "message": "firmware: Fix an oops on reading fw_priv-\u003efw in sysfs loading file\n\nThis oops was reported recently:\nfirmware_loading_store+0xf9/0x17b\ndev_attr_store+0x20/0x22\nsysfs_write_file+0x101/0x134\nvfs_write+0xac/0xf3\nsys_write+0x4a/0x6e\nsystem_call_fastpath+0x16/0x1b\n\nThe complete backtrace was unfortunately not captured, but details can be found\nhere:\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d769920\n\nThe cause is fairly clear.\n\nIts caused by the fact that firmware_loading_store has a case 0 in its\nswitch statement that reads and writes the fw_priv-\u003efw poniter without the\nprotection of the fw_lock mutex.  since there is a window between the time that\n_request_firmware sets fw_priv-\u003efw to NULL and the time the corresponding sysfs\nfile is unregistered, its possible for a user space application to race in, and\nwrite a zero to the loading file, causing a NULL dereference in\nfirmware_loading_store.  Fix it by extending the protection of the fw_lock mutex\nto cover all of the firware_loading_store function.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "fbd48a69a0b576dd8cba01b2b4fc24fad76f1b68",
      "tree": "66b1dd2d4093f7b6156296be0f09bea535c6053e",
      "parents": [
        "f4ae40a6a50a98ac23d4b285f739455e926a473e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 24 10:47:56 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:57 2012 -0500"
      },
      "message": "switch devtmpfs to umode_t\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\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": "cd42f4a3b2b1c4cbd997363dc57821953d73fd87",
      "tree": "c7db057922def7f742fbcd283324051bdd92b053",
      "parents": [
        "dc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50"
      ],
      "author": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Thu Dec 15 10:48:12 2011 -0800"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Tue Jan 03 12:06:32 2012 -0800"
      },
      "message": "HWPOISON: Clean up memory_failure() vs. __memory_failure()\n\nThere is only one caller of memory_failure(), all other users call\n__memory_failure() and pass in the flags argument explicitly. The\nlone user of memory_failure() will soon need to pass flags too.\n\nAdd flags argument to the callsite in mce.c. Delete the old memory_failure()\nfunction, and then rename __memory_failure() without the leading \"__\".\n\nProvide clearer message when action optional memory errors are ignored.\n\nAcked-by: Borislav Petkov \u003cbp@amd64.org\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "6d10463b2fa1b6b81091661c1917f26436b38c53",
      "tree": "1fb5be10a08a3178fb644c9eb5a2a31423985cfa",
      "parents": [
        "0015afaa1f818d38ea9f8e81a84a6aeeca5fdaf0",
        "a8cf27bee7adc40d91956cf1b9e44d7001f93aba"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 25 23:43:11 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 25 23:43:11 2011 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027 into pm-for-linus\n\n* pm-domains:\n  PM / shmobile: Allow the A4R domain to be turned off at run time\n  PM / input / touchscreen: Make st1232 use device PM QoS constraints\n  PM / QoS: Introduce dev_pm_qos_add_ancestor_request()\n  PM / shmobile: Remove the stay_on flag from SH7372\u0027s PM domains\n  PM / shmobile: Don\u0027t include SH7372\u0027s INTCS in syscore suspend/resume\n  PM / shmobile: Add support for the sh7372 A4S power domain / sleep mode\n  ARM: S3C64XX: Implement basic power domain support\n  PM / shmobile: Use common always on power domain governor\n  PM / Domains: Provide an always on power domain governor\n  PM / Domains: Fix default system suspend/resume operations\n  PM / Domains: Make it possible to assign names to generic PM domains\n  PM / Domains: fix compilation failure for CONFIG_PM_GENERIC_DOMAINS unset\n  PM / Domains: Automatically update overoptimistic latency information\n  PM / Domains: Add default power off governor function (v4)\n  PM / Domains: Add device stop governor function (v4)\n  PM / Domains: Rework system suspend callback routines (v2)\n  PM / Domains: Introduce \"save/restore state\" device callbacks\n  PM / Domains: Make it possible to use per-device domain callbacks\n"
    },
    {
      "commit": "0015afaa1f818d38ea9f8e81a84a6aeeca5fdaf0",
      "tree": "8f8279cf0117d210230ef9fcacb05f960bf6f8f5",
      "parents": [
        "b7ba68c4a072c9aa8f04b8cf7838b6cd2f48d918",
        "00dc9ad18d707f36b2fb4af98fd2cf0548d2b258"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 25 23:43:05 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 25 23:43:05 2011 +0100"
      },
      "message": "Merge branch \u0027pm-runtime\u0027 into pm-for-linus\n\n* pm-runtime:\n  PM / Runtime: Use device PM QoS constraints (v2)\n"
    },
    {
      "commit": "40a5f8be2f482783de0f1f0fe856660e489734a8",
      "tree": "69c29c6d0fb16829fba230d800901611cbc7852a",
      "parents": [
        "767c0f3aed74be56f268709f5347e6c86d52b408"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 23 01:23:52 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 25 23:39:41 2011 +0100"
      },
      "message": "PM / QoS: Introduce dev_pm_qos_add_ancestor_request()\n\nSome devices, like the I2C controller on SH7372, are not\nnecessary for providing power to their children or forwarding\nwakeup signals (and generally interrupts) from them.  They are\nonly needed by their children when there\u0027s some data to transfer,\nso they may be suspended for the majority of time and resumed\non demand, when the children have data to send or receive.  For this\npurpose, however, their power.ignore_children flags have to be set,\nor the PM core wouldn\u0027t allow them to be suspended while their\nchildren were active.\n\nUnfortunately, in some situations it may take too much time to\nresume such devices so that they can assist their children in\ntransferring data.  For example, if such a device belongs to a PM\ndomain which goes to the \"power off\" state when that device is\nsuspended, it may take too much time to restore power to the\ndomain in response to the request from one of the device\u0027s\nchildren.  In that case, if the parent\u0027s resume time is critical,\nthe domain should stay in the \"power on\" state, although it still may\nbe desirable to power manage the parent itself (e.g. by manipulating\nits clock).\n\nIn general, device PM QoS may be used to address this problem.\nNamely, if the device\u0027s children added PM QoS latency constraints\nfor it, they would be able to prevent it from being put into an\noverly deep low-power state.  However, in some cases the devices\nneeding to be serviced are not the immediate children of a\n\"children-ignoring\" device, but its grandchildren or even less\ndirect descendants.  In those cases, the entity wanting to add a\nPM QoS request for a given device\u0027s ancestor that ignores its\nchildren will have to find it in the first place, so introduce a new\nhelper function that may be used to achieve that.  This function,\ndev_pm_qos_add_ancestor_request(), will search for the first\nancestor of the given device whose power.ignore_children flag is\nset and will add a device PM QoS latency request for that ancestor\non behalf of the caller.  The request added this way may be removed\nwith the help of dev_pm_qos_remove_request() in the future, like\nany other device PM QoS latency request.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "10fbcf4c6cb122005cdf36fc24d7683da92c7a27",
      "tree": "1a2ad572b421d576e14dbf006ecb321a53063f0c",
      "parents": [
        "8a25a2fd126c621f44f3aeaef80d51f00fc11639"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 21 14:48:43 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 14:48:43 2011 -0800"
      },
      "message": "convert \u0027memory\u0027 sysdev_class to a regular subsystem\n\nThis moves the \u0027memory sysdev_class\u0027 over to a regular \u0027memory\u0027 subsystem\nand converts the devices to regular devices. The sysdev drivers are\nimplemented as subsystem interfaces now.\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": "8a25a2fd126c621f44f3aeaef80d51f00fc11639",
      "tree": "41694ab1a9c82a7a02d9cd33c929fd039c98c815",
      "parents": [
        "cb0c05c5fae12eeb7c85c205578df277bd706155"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 21 14:29:42 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 14:29:42 2011 -0800"
      },
      "message": "cpu: convert \u0027cpu\u0027 and \u0027machinecheck\u0027 sysdev_class to a regular subsystem\n\nThis moves the \u0027cpu sysdev_class\u0027 over to a regular \u0027cpu\u0027 subsystem\nand converts the devices to regular devices. The sysdev drivers are\nimplemented as subsystem interfaces now.\n\nAfter all sysdev classes are ported to regular driver core entities, the\nsysdev implementation will be entirely removed from the kernel.\n\nUserspace relies on events and generic sysfs subsystem infrastructure\nfrom sysdev devices, which are made available with this conversion.\n\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hans-Christian Egtvedt \u003cegtvedt@samfundet.no\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Borislav Petkov \u003cbp@amd64.org\u003e\nCc: Tigran Aivazian \u003ctigran@aivazian.fsnet.co.uk\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Zhang Rui \u003crui.zhang@intel.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Srivatsa S. Bhat\" \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "90363ddf0a1a4dccfbb8d0c10b8f488bc7fa69f8",
      "tree": "d64b594caef2df2cd9e165089e277d09e2b089d6",
      "parents": [
        "8114ab763b2d297c8af49bf380a093d76e929692"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:34:42 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 22:03:32 2011 +0100"
      },
      "message": "PM: Drop generic_subsys_pm_ops\n\nSince the PM core is now going to execute driver callbacks directly\nif the corresponding subsystem callbacks are not present,\nforward-only subsystem callbacks (i.e. such that only execute the\ncorresponding driver callbacks) are not necessary any more.  Thus\nit is possible to remove generic_subsys_pm_ops, because the only\ncallback in there that is not forward-only, .runtime_idle, is not\nreally used by the only user of generic_subsys_pm_ops, which is\nvio_bus_type.\n\nHowever, the generic callback routines themselves cannot be removed\nfrom generic_ops.c, because they are used individually by a number\nof subsystems.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "9b39e73d0c2b265a7f8748b0e9a9f09be84079a8",
      "tree": "5d05e904b4f67724908f6a5dec5bfdedae2ea7cb",
      "parents": [
        "35cd133c6130c1eb52806808abee9d62e6854a27"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:34:24 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 22:01:14 2011 +0100"
      },
      "message": "PM / Sleep: Remove forward-only callbacks from platform bus type\n\nThe forward-only PM callbacks provided by the platform bus type are\nnot necessary any more, because the PM core executes driver callbacks\nwhen the corresponding subsystem callbacks are not present, so drop\nthem.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "35cd133c6130c1eb52806808abee9d62e6854a27",
      "tree": "2f06e7f0288b9d4a3785a202f6480928113d8d5c",
      "parents": [
        "9cf519d1c15fa05a538c2b3963c5f3903daf765a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:34:13 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 22:01:05 2011 +0100"
      },
      "message": "PM: Run the driver callback directly if the subsystem one is not there\n\nMake the PM core execute driver PM callbacks directly if the\ncorresponding subsystem callbacks are not present.\n\nThere are three reasons for doing that.  First, it reflects the\nbehavior of drivers/base/dd.c:really_probe() that runs the driver\u0027s\n.probe() callback directly if the bus type\u0027s one is not defined, so\nthis change will remove one arbitrary difference between the PM core\nand the remaining parts of the driver core.  Second, it will allow\nsome subsystems, whose PM callbacks don\u0027t do anything except for\nexecuting driver callbacks, to be simplified quite a bit by removing\nthose \"forward-only\" callbacks.  Finally, it will allow us to remove\none level of indirection in the system suspend and resume code paths\nwhere it is not necessary, which is going to lead to less debug noise\nwith initcall_debug passed in the kernel command line (messages won\u0027t\nbe printed for driverless devices whose subsystems don\u0027t provide\nPM callbacks among other things).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "9cf519d1c15fa05a538c2b3963c5f3903daf765a",
      "tree": "44500e7eba98e682663ab253e4ba7edff7e9f875",
      "parents": [
        "b00f4dc5ff022cb9cbaffd376d9454d7fa1e496f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:34:01 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 22:00:56 2011 +0100"
      },
      "message": "PM / Sleep: Make pm_op() and pm_noirq_op() return callback pointers\n\nMake the pm_op() and pm_noirq_op() functions return pointers to\nappropriate callbacks instead of executing those callbacks and\nreturning their results.\n\nThis change is required for a subsequent modification that will\nexecute the corresponding driver callback if the subsystem\ncallback returned by either pm_op(), or pm_noirq_op() is NULL.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "b00f4dc5ff022cb9cbaffd376d9454d7fa1e496f",
      "tree": "40f1b232e2f1e8ac365317a14fdcbcb331722b46",
      "parents": [
        "1eac8111e0763853266a171ce11214da3a347a0a",
        "b9e26dfdad5a4f9cbdaacafac6998614cc9c41bc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 21:59:45 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 21 21:59:45 2011 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into pm-sleep\n\n* master: (848 commits)\n  SELinux: Fix RCU deref check warning in sel_netport_insert()\n  binary_sysctl(): fix memory leak\n  mm/vmalloc.c: remove static declaration of va from __get_vm_area_node\n  ipmi_watchdog: restore settings when BMC reset\n  oom: fix integer overflow of points in oom_badness\n  memcg: keep root group unchanged if creation fails\n  nilfs2: potential integer overflow in nilfs_ioctl_clean_segments()\n  nilfs2: unbreak compat ioctl\n  cpusets: stall when updating mems_allowed for mempolicy or disjoint nodemask\n  evm: prevent racing during tfm allocation\n  evm: key must be set once during initialization\n  mmc: vub300: fix type of firmware_rom_wait_states module parameter\n  Revert \"mmc: enable runtime PM by default\"\n  mmc: sdhci: remove \"state\" argument from sdhci_suspend_host\n  x86, dumpstack: Fix code bytes breakage due to missing KERN_CONT\n  IB/qib: Correct sense on freectxts increment and decrement\n  RDMA/cma: Verify private data length\n  cgroups: fix a css_set not found bug in cgroup_attach_proc\n  oprofile: Fix uninitialized memory access when writing to writing to oprofilefs\n  Revert \"xen/pv-on-hvm kexec: add xs_reset_watches to shutdown watches from old kernel\"\n  ...\n\nConflicts:\n\tkernel/cgroup_freezer.c\n"
    },
    {
      "commit": "92f1b8518708c085ed7d07d8e7ed36411c92fa4f",
      "tree": "84e74ad3e4709fad1d8fc59573721aa646c50936",
      "parents": [
        "cb54f2571ff3f5128f18efcf888ce3c051c589d9"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Tue Dec 20 15:17:45 2011 +0800"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Dec 21 00:31:47 2011 +0100"
      },
      "message": "devres: Fix a typo in devm_kfree comment\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1eac8111e0763853266a171ce11214da3a347a0a",
      "tree": "9d4cdb27ac6cf063d14b585c84c1ba5c6558a61b",
      "parents": [
        "8ca6d9bcc8d33c592c0855b4b1481bc723ac7e85"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 15 20:59:30 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:27:43 2011 +0100"
      },
      "message": "PM / Sleep: Merge internal functions in generic_ops.c\n\nAfter the change that removed the code related to runtime PM\nfrom __pm_generic_call() and __pm_generic_resume() these two\nfunctions need not be separate any more, so merge them.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "8ca6d9bcc8d33c592c0855b4b1481bc723ac7e85",
      "tree": "2a80c117586c12bf475cd828ffdeeb67ba9e647f",
      "parents": [
        "cf007e3526a785a95a738d5a8fba44f1f4fe33e0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 15 20:59:23 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 18 00:27:35 2011 +0100"
      },
      "message": "PM / Sleep: Simplify generic system suspend callbacks\n\nThe pm_runtime_suspended() check in __pm_generic_call() doesn\u0027t\nreally help and may cause problems to happen, because in some cases\nthe system suspend callbacks need to be called even if the given\ndevice has been suspended by runtime PM.  For example, if the device\ngenerally supports remote wakeup and is not enabled to wake up\nthe system from sleep, it should be prevented from generating wakeup\nsignals during system suspend and that has to be done by the\nsuspend callbacks that the pm_runtime_suspended() check prevents from\nbeing executed.\n\nSimilarly, it may not be a good idea to unconditionally change\nthe runtime PM status of the device to \u0027active\u0027 in\n__pm_generic_resume(), because the driver may want to leave the\ndevice in the \u0027suspended\u0027 state, depending on what happened to it\nbefore the system suspend and whether or not it is enabled to\nwake up the system.\n\nFor the above reasons, remove the pm_runtime_suspended()\ncheck from __pm_generic_call() and remove the code changing the\ndevice\u0027s runtime PM status from __pm_generic_resume().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "704867ede0c3645075ff3438d1a4fd4977abaa8d",
      "tree": "fc89b31764132dc1b07e0af3e53219005cfb8f95",
      "parents": [
        "681ba97d9fbff59f67c71f1d9a88ad0b8ef49d25",
        "cfe04478fa1b472264b7fe9bbf547710aa344d3c"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Dec 14 20:02:09 2011 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Dec 14 20:02:09 2011 +0800"
      },
      "message": "Merge branch \u0027mfd/da9052\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc into regmap-next\n"
    },
    {
      "commit": "ce37954e93e9e85333577dcc22db5a4d0f4c9d5e",
      "tree": "133571eae537a4f1c304c5396668c7ec6a8e2bb7",
      "parents": [
        "dc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50",
        "209a600623cf13a8168b2f6b83643db7825abb9a"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Dec 12 13:10:02 2011 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Dec 12 13:10:02 2011 +0800"
      },
      "message": "Merge branch \u0027topic/irq\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into mfd/da9052\n"
    },
    {
      "commit": "2987557f52b97f679f0c324d8f51b8d66e1f2084",
      "tree": "93264730d265ef1987e45a97989d75b7a966dbab",
      "parents": [
        "2d1dc9a600edf33321bcdc1c808b7957d8a3f3e1"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Sat Dec 03 13:06:50 2011 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:32:20 2011 -0800"
      },
      "message": "driver-core/cpu: Expose hotpluggability to the rest of the kernel\n\nWhen architectures register CPUs, they indicate whether the CPU allows\nhotplugging; notably, x86 and ARM don\u0027t allow hotplugging CPU 0.\nUserspace can easily query the hotpluggability of a CPU via sysfs;\nhowever, the kernel has no convenient way of accessing that property in\nan architecture-independent way.  While the kernel can simply try it and\nsee, some code needs to distinguish between \"hotplug failed\" and\n\"hotplug has no hope of working on this CPU\"; for example, rcutorture\u0027s\nCPU hotplug tests want to avoid drowning out real hotplug failures with\nexpected failures.\n\nExpose this property via a new cpu_is_hotpluggable function, so that the\nrest of the kernel can access it in an architecture-independent way.\n\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "5a3072be6ce00b10565c78da05ad78df41310045",
      "tree": "7e6fce9b3242704add3730f5d3a36e1b6318e57d",
      "parents": [
        "11e3123d9fdbe0aab1adf9ab5a5b1b28aa91daa7"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Thu Dec 08 22:53:29 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 16:23:49 2011 -0800"
      },
      "message": "drivers_base: make argument to platform_device_register_full const\n\nplatform_device_register_full doesn\u0027t modify *pdevinfo so it can be\nmarked as const without further adaptions.\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": "b298d289c79211508f11cb50749b0d1d54eb244a",
      "tree": "c0ce90c7c2e825a66835ef9a5105e8a442fa0563",
      "parents": [
        "cba3176e88fa134ece3ae1cf7e35dab9972d7853"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Fri Dec 09 23:36:36 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 09 23:36:36 2011 +0100"
      },
      "message": "PM / Sleep: Fix freezer failures due to racy usermodehelper_is_disabled()\n\nCommit a144c6a (PM: Print a warning if firmware is requested when tasks\nare frozen) introduced usermodehelper_is_disabled() to warn and exit\nimmediately if firmware is requested when usermodehelpers are disabled.\n\nHowever, it is racy. Consider the following scenario, currently used in\ndrivers/base/firmware_class.c:\n\n...\nif (usermodehelper_is_disabled())\n        goto out;\n\n/* Do actual work */\n...\n\nout:\n        return err;\n\nNothing prevents someone from disabling usermodehelpers just after the check\nin the \u0027if\u0027 condition, which means that it is quite possible to try doing the\n\"actual work\" with usermodehelpers disabled, leading to undesirable\nconsequences.\n\nIn particular, this race condition in _request_firmware() causes task freezing\nfailures whenever suspend/hibernation is in progress because, it wrongly waits\nto get the firmware/microcode image from userspace when actually the\nusermodehelpers are disabled or userspace has been frozen.\nSome of the example scenarios that cause freezing failures due to this race\nare those that depend on userspace via request_firmware(), such as x86\nmicrocode module initialization and microcode image reload.\n\nPrevious discussions about this issue can be found at:\nhttp://thread.gmane.org/gmane.linux.kernel/1198291/focus\u003d1200591\n\nThis patch adds proper synchronization to fix this issue.\n\nIt is to be noted that this patchset fixes the freezing failures but doesn\u0027t\nremove the warnings. IOW, it does not attempt to add explicit synchronization\nto x86 microcode driver to avoid requesting microcode image at inopportune\nmoments. Because, the warnings were introduced to highlight such cases, in the\nfirst place. And we need not silence the warnings, since we take care of the\n*real* problem (freezing failure) and hence, after that, the warnings are\npretty harmless anyway.\n\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "925b44a273aa8c4c23c006c1228aacd538eead09",
      "tree": "107742feb4aa12727de15daf5d472968967ce142",
      "parents": [
        "c9914854b4ca339e511d052ce3a1a441ef15b928"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Dec 08 23:27:28 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 09 23:22:41 2011 +0100"
      },
      "message": "PM / Domains: Provide an always on power domain governor\n\nSince systems are likely to have power domains that can\u0027t be turned off\nfor various reasons at least temporarily while implementing power domain\nsupport provide a default governor which will always refuse to power off\nthe domain, saving platforms having to implement their own.\n\nSince the code is so tiny don\u0027t bother with a Kconfig symbol for it.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c9914854b4ca339e511d052ce3a1a441ef15b928",
      "tree": "a58486eb9156a15cefe1c6b2ce2483991faeeae7",
      "parents": [
        "e84b2c202771bbd538866207efcb1f7dbab8045b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Dec 06 23:16:47 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 08 22:59:23 2011 +0100"
      },
      "message": "PM / Domains: Fix default system suspend/resume operations\n\nCommit d23b9b00cdde5c93b914a172cecd57d5625fcd04 (PM / Domains: Rework\nsystem suspend callback routines (v2)) broke the system suspend and\nresume handling by devices belonging to generic PM domains, because\nit used freeze/thaw callbacks instead of suspend/resume ones and\ndidn\u0027t initialize device callbacks for system suspend/resume\nproperly at all.  Fix those problems.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    }
  ],
  "next": "fe6b91f47080eb17d21cbf2a39311877d57f6938"
}
