)]}'
{
  "log": [
    {
      "commit": "5e928f77a09a07f9dd595bb8a489965d69a83458",
      "tree": "ef53ec90fa3214fd22e36b07c11c06b09e373d8d",
      "parents": [
        "8400146d0dc03590bba051399e4bb7e1cbf1c010"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Aug 18 23:38:32 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Aug 23 00:04:44 2009 +0200"
      },
      "message": "PM: Introduce core framework for run-time PM of I/O devices (rev. 17)\n\nIntroduce a core framework for run-time power management of I/O\ndevices.  Add device run-time PM fields to \u0027struct dev_pm_info\u0027\nand device run-time PM callbacks to \u0027struct dev_pm_ops\u0027.  Introduce\na run-time PM workqueue and define some device run-time PM helper\nfunctions at the core level.  Document all these things.\n\nSpecial thanks to Alan Stern for his help with the design and\nmultiple detailed reviews of the pereceding versions of this patch\nand to Magnus Damm for testing feedback.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\n"
    },
    {
      "commit": "a9d7052363a6e06bb623ed1876c56c7ca5b2c6d8",
      "tree": "c4ec7fb30dc4510596ffc9ddffe308ef34837af2",
      "parents": [
        "783ea7d4eeefe895f2731fe73ac951e94418927b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jun 10 01:27:12 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:33 2009 +0200"
      },
      "message": "PM: Separate suspend to RAM functionality from core\n\nMove the suspend to RAM and standby code from kernel/power/main.c\nto two separate files, kernel/power/suspend.c containing the basic\nfunctions and kernel/power/suspend_test.c containing the automatic\nsuspend test facility based on the RTC clock alarm.\n\nThere are no changes in functionality related to these modifications.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\n"
    },
    {
      "commit": "c6f37f12197ac3bd2e5a35f2f0e195ae63d437de",
      "tree": "e9609ca63d211911582afcc4b8314887b85a6c46",
      "parents": [
        "e240b58c79144708530138e05f17c6d0d8d744a8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 22:16:31 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "PM/Suspend: Do not shrink memory before suspend\n\nRemove the shrinking of memory from the suspend-to-RAM code, where\nit is not really necessary.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Nigel Cunningham \u003cnigel@tuxonice.net\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "d161630297a20802d01c55847bfcba85d2118a9f",
      "tree": "51685c169319400b6da4dc6c56b69e731c45f297",
      "parents": [
        "e39a71ef80877f4e30d808af9acceec80f4d2f7c"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sun May 24 22:05:42 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM core: rename suspend and resume functions\n\nThis patch (as1241) renames a bunch of functions in the PM core.\nRather than go through a boring list of name changes, suffice it to\nsay that in the end we have a bunch of pairs of functions:\n\n\tdevice_resume_noirq\tdpm_resume_noirq\n\tdevice_resume\t\tdpm_resume\n\tdevice_complete\t\tdpm_complete\n\tdevice_suspend_noirq\tdpm_suspend_noirq\n\tdevice_suspend\t\tdpm_suspend\n\tdevice_prepare\t\tdpm_prepare\n\nin which device_X does the X operation on a single device and dpm_X\ninvokes device_X for all devices in the dpm_list.\n\nIn addition, the old dpm_power_up and device_resume_noirq have been\ncombined into a single function (dpm_resume_noirq).\n\nLastly, dpm_suspend_start and dpm_resume_end are the renamed versions\nof the former top-level device_suspend and device_resume routines.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e39a71ef80877f4e30d808af9acceec80f4d2f7c",
      "tree": "e9d4ff1618328cf3a3fafee04621b9776ca169de",
      "parents": [
        "1380a37e3da5d9e14ea5c2a4c6ab2b307a2798ea"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Fri May 15 00:53:26 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM: Rename device_power_down/up()\n\nRename the functions performing \"_noirq\" dev_pm_ops\noperations from device_power_down() and device_power_up()\nto device_suspend_noirq() and device_resume_noirq().\n\nThe new function names are chosen to show that the functions\nare responsible for calling the _noirq() versions to finalize\nthe suspend/resume operation. The current function names do\nnot perform power down/up anymore so the names may be misleading.\n\nGlobal function renames:\n- device_power_down() -\u003e device_suspend_noirq()\n- device_power_up() -\u003e device_resume_noirq()\n\nStatic function renames:\n- suspend_device_noirq() -\u003e __device_suspend_noirq()\n- resume_device_noirq() -\u003e __device_resume_noirq()\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Len Brown \u003clenb@kernel.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "32bdfac5462d777f35b00838893c4f87baf23efe",
      "tree": "92e4ef3af7b68007e8004eaca978865a29e543b0",
      "parents": [
        "59a3759d0fe8d969888c741bb33f4946e4d3750d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 21:15:07 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 21:15:07 2009 +0200"
      },
      "message": "PM: Do not hold dpm_list_mtx while disabling/enabling nonboot CPUs\n\nWe shouldn\u0027t hold dpm_list_mtx while executing\n[disable|enable]_nonboot_cpus(), because theoretically this may lead\nto a deadlock as shown by the following example (provided by Johannes\nBerg):\n\nCPU 3       CPU 2                     CPU 1\n                                      suspend/hibernate\n            something:\n            rtnl_lock()               device_pm_lock()\n                                       -\u003e mutex_lock(\u0026dpm_list_mtx)\n\n            mutex_lock(\u0026dpm_list_mtx)\n\nlinkwatch_work\n -\u003e rtnl_lock()\n                                      disable_nonboot_cpus()\n                                       -\u003e flush CPU 3 workqueue\n\nFortunately, device drivers are supposed to stop any activities that\nmight lead to the registration of new device objects way before\ndisable_nonboot_cpus() is called, so it shouldn\u0027t be necessary to\nhold dpm_list_mtx over the entire late part of device suspend and\nearly part of device resume.\n\nThus, during the late suspend and the early resume of devices acquire\ndpm_list_mtx only when dpm_list is going to be traversed and release\nit right after that.\n\nThis patch is reported to fix the regressions tracked as\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13245.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nReported-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nTested-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\n"
    },
    {
      "commit": "6a7c7eaf71b636f197d73b381a2ab729ebdcfb2e",
      "tree": "73c642bff623c2f1a87f6c353b21e3484bd9e899",
      "parents": [
        "ff54250a0ebab7f90a5f848a0ba63f999830c872"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Apr 19 20:08:42 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Apr 19 20:08:42 2009 +0200"
      },
      "message": "PM/Suspend: Introduce two new platform callbacks to avoid breakage\n\nCommit 900af0d973856d6feb6fc088c2d0d3fde57707d3 (PM: Change suspend\ncode ordering) changed the ordering of suspend code in such a way\nthat the platform .prepare() callback is now executed after the\ndevice drivers\u0027 late suspend callbacks have run.  Unfortunately, this\nturns out to break ARM platforms that need to talk via I2C to power\ncontrol devices during the .prepare() callback.\n\nFor this reason introduce two new platform suspend callbacks,\n.prepare_late() and .wake(), that will be called just prior to\ndisabling non-boot CPUs and right after bringing them back on line,\nrespectively, and use them instead of .prepare() and .finish() for\nACPI suspend.  Make the PM core execute the .prepare() and .finish()\nplatform suspend callbacks where they were executed previously (that\nis, right after calling the regular suspend methods provided by\ndevice drivers and right before executing their regular resume\nmethods, respectively).\n\nIt is not necessary to make analogous changes to the hibernation\ncode and data structures at the moment, because they are only used\nby ACPI platforms.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "900af0d973856d6feb6fc088c2d0d3fde57707d3",
      "tree": "4502d4108200fa0eb38dd5f0155b205fed166e48",
      "parents": [
        "2ed8d2b3a81bdbb0418301628ccdb008ac9f40b7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:15 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Change suspend code ordering\n\nChange the ordering of the suspend core code so that the platform\n\"prepare\" callback is executed and the nonboot CPUs are disabled\nafter calling device drivers\u0027 \"late suspend\" methods.\n\nThis change will allow us to rework the PCI PM core so that the power\nstate of devices is changed in the \"late\" phase of suspend (and\nanalogously in the \"early\" phase of resume), which in turn will allow\nus to avoid the race condition where a device using shared interrupts\nis put into a low power state with interrupts enabled and then an\ninterrupt (for another device) comes in and confuses its driver.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ed8d2b3a81bdbb0418301628ccdb008ac9f40b7",
      "tree": "54ab0cd7aa7db73151533b463bd490b62a29c462",
      "parents": [
        "0a0c5168df270a50e3518e4f12bddb31f8f5f38f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:06 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Rework handling of interrupts during suspend-resume\n\nUse the functions introduced in by the previous patch,\nsuspend_device_irqs(), resume_device_irqs() and check_wakeup_irqs(),\nto rework the handling of interrupts during suspend (hibernation) and\nresume.  Namely, interrupts will only be disabled on the CPU right\nbefore suspending sysdevs, while device drivers will be prevented\nfrom receiving interrupts, with the help of the new helper function,\nbefore their \"late\" suspend callbacks run (and analogously during\nresume).\n\nIn addition, since the device interrups are now disabled before the\nCPU has turned all interrupts off and the CPU will ACK the interrupts\nsetting the IRQ_PENDING bit for them, check in sysdev_suspend() if\nany wake-up interrupts are pending and abort suspend if that\u0027s the\ncase.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "770824bdc421ff58a64db608294323571c949f4c",
      "tree": "2fbeef604fe982bf322249a53a95dd2ff851d5f4",
      "parents": [
        "936577c61d0c10b8929608a92c98d839b22053bc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Feb 22 18:38:50 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 22 10:33:44 2009 -0800"
      },
      "message": "PM: Split up sysdev_[suspend|resume] from device_power_[down|up]\n\nMove the sysdev_suspend/resume from the callee to the callers, with\nno real change in semantics, so that we can rework the disabling of\ninterrupts during suspend/hibernation.\n\nThis is based on an earlier patch from Linus.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "091d71e023557136e96f0e54f301497a3fc95dc3",
      "tree": "342a69b70472a850997dff775fc0b2da453d1e28",
      "parents": [
        "1de9e8e70f5acc441550ca75433563d91b269bbe"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 17 00:10:45 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 16 18:13:41 2009 -0500"
      },
      "message": "PM: Fix compilation warning in kernel/power/main.c\n\nReorder the code in kernel/power/main.c to fix compilation warning\ntriggered by unsetting CONFIG_SUSPEND.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "81ff86a11f54c9e266c6a6bc3ecd2c9a0f1e11cc",
      "tree": "7fb09c281647bb0086014904dfc94f721656ca9d",
      "parents": [
        "1d7e6cca1dfd167e5f1e2a7c53119b0c80c90c35"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue Jan 06 10:44:39 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:39 2009 -0800"
      },
      "message": "pm: struct device - replace bus_id with dev_name(), dev_set_name()\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cbe2f5a6e84eebb98ab42fc5e58c3cd5b7767349",
      "tree": "801547a9c777ce65ad291e1225e5266a1e34f99f",
      "parents": [
        "a0a70c735ef714fe1b6777b571630c3d50c7b008"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 23 10:37:12 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 23 10:48:44 2008 +0100"
      },
      "message": "tracing: allow tracing of suspend/resume \u0026 hibernation code again\n\nImpact: widen function-tracing to suspend+resume (and hibernation) sequences\n\nNow that the ftrace kernel thread is gone, we can allow tracing\nduring suspend/resume again.\n\nSo revert these two commits:\n\n  f42ac38c5 \"ftrace: disable tracing for suspend to ram\"\n  41108eb10 \"ftrace: disable tracing for hibernation\"\n\nThis should be tested very carefully, as it could interact with\naltneratives instruction patching, etc.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a6a0c4ca7edb378a8a7332501f097089cb1051c4",
      "tree": "afc4bd95482576e7dfd0685d1cb2bed6cac65db9",
      "parents": [
        "72b51a6b4d803381f16d819df392dd1efd1c7181"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Tue Nov 18 06:56:51 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 18 08:07:36 2008 -0800"
      },
      "message": "suspend: use WARN not WARN_ON to print the message\n\nBy using WARN(), kerneloops.org can collect which component is causing\nthe delay and make statistics about that. suspend_test_finish() is\ncurrently the number 2 item but unless we can collect who\u0027s causing\nit we\u0027re not going to be able to fix the hot topic ones..\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1bfcf1304ea79c46efc3724e548b13b4b442b418",
      "tree": "5adbf95b25d1d9e86fc0e5d0784550ccb9bf5be9",
      "parents": [
        "574f34cee2b6574d43bf4506f771c1cec6a5d391"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Oct 15 22:01:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:29 2008 -0700"
      },
      "message": "pm: rework disabling of user mode helpers during suspend/hibernation\n\nWe currently use a PM notifier to disable user mode helpers before suspend\nand hibernation and to re-enable them during resume.  However, this is not\nan ideal solution, because if any drivers want to upload firmware into\nmemory before suspend, they have to use a PM notifier for this purpose and\nthere is no guarantee that the ordering of PM notifiers will be as\nexpected (ie.  the notifier that disables user mode helpers has to be run\nafter the driver\u0027s notifier used for uploading the firmware).\n\nFor this reason, it seems better to move the disabling and enabling of\nuser mode helpers to separate functions that will be called by the PM core\nas necessary.\n\n[akpm@linux-foundation.org: remove unneeded ifdefs]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f42ac38c59e0a03d6da0c24a63fb211393f484b0",
      "tree": "1020864d18c6652444fe0ba2d39dd6e9e2f3c7d6",
      "parents": [
        "8560c650f340565b720fd57d1f9c99ab216d99d0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 27 09:14:40 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:54:20 2008 -0700"
      },
      "message": "ftrace: disable tracing for suspend to ram\n\nI\u0027ve been painstakingly debugging the issue with suspend to ram and\nftraced. The 2.6.28 code does not have this issue, but since the mcount\nrecording is not going to be in 27, this must be solved for the ftrace\ndaemon version.\n\nThe resume from suspend to ram would reboot because it was triple\nfaulting. Debugging further, I found that calling the mcount function\nitself was not an issue, but it would fault when it incremented\npreempt_count. preempt_count is on the tasks info structure that is on the\nlow memory address of the task\u0027s stack.  For some reason, it could not\nwrite to it. Resuming out of suspend to ram does quite a lot of funny\ntricks to get to work, so it is not surprising at all that simply doing a\npreempt_disable() would cause a fault.\n\nThanks to Rafael for suggesting to add a \"while (1);\" to find the place in\nresuming that is causing the fault. I would place the loop somewhere in\nthe code, compile and reboot and see if it would either reboot (hit the\nfault) or simply hang (hit the loop).  Doing this over and over again, I\nnarrowed it down that it was happening in enable_nonboot_cpus.\n\nAt this point, I found that it is easier to simply disable tracing around\nthe suspend code, instead of searching for the particular function that\ncan not handle doing a preempt_disable.\n\nThis patch disables the tracer as it suspends and reenables it on resume.\n\nI tested this patch on my Laptop, and it can resume fine with the patch.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a2e2e3577c3ef2b5dbb866e97e612aae4adfa32f",
      "tree": "9f0889d3046078e1db7e8310171c7e3a48be42cc",
      "parents": [
        "44ccac13c7f4728cf2992d49384671a176db74dd"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Fri Jul 25 19:44:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:02 2008 -0700"
      },
      "message": "pm selftest: rtc paranoia\n\nCope with a quirk of some RTCs (notably ACPI ones) which aren\u0027t guaranteed\nto implement oneshot behavior when they woke the system from sleeep:\nforcibly disable the alarm, just in case.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77437fd4e61f87cc94d9314baa5cbf50e3ccdf54",
      "tree": "c458e2b5c55a53560ddbf0a3347cc8ca64974b45",
      "parents": [
        "0d63081d418c73cc187c893069e0f24c4c6eecd3"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jul 23 21:28:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:22 2008 -0700"
      },
      "message": "pm: boot time suspend selftest\n\nBoot-time test for system suspend states (STR or standby).  The generic\nRTC framework triggers wakeup alarms, which are used to exit those states.\n\n  - Measures some aspects of suspend time ... this uses \"jiffies\" until\n    someone converts it to use a timebase that works properly even while\n    timer IRQs are disabled.\n\n  - Triggered by a command line parameter.  By default nothing even\n    vaguely troublesome will happen, but \"test_suspend\u003dmem\" will give\n    you a brief STR test during system boot.  (Or you may need to use\n    \"test_suspend\u003dstandby\" instead, if your hardware needs that.)\n\nThis isn\u0027t without problems.  It fires early enough during boot that for\nexample both PCMCIA and MMC stacks have misbehaved.  The workaround in\nthose cases was to boot without such media cards inserted.\n\n[matthltc@us.ibm.com: fix compile failure in boot time suspend selftest]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d8f3de0d2412bb91639cfefc5b3c79dbf3812212",
      "tree": "05d0530d06e898b7eeac5c781ee9f00972a7f67a",
      "parents": [
        "53eb2fbeb9e68e1a9a23945de8450999c46270ce"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jun 12 23:24:06 2008 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jun 12 14:25:09 2008 -0700"
      },
      "message": "Suspend-related patches for 2.6.27\n\nACPI PM: Add possibility to change suspend sequence\n\nThere are some systems out there that don\u0027t work correctly with\nour current suspend/hibernation code ordering.  Provide a workaround\nfor these systems allowing them to pass \u0027acpi_sleep\u003dold_ordering\u0027 in\nthe kernel command line so that it will use the pre-ACPI 2.0 (\"old\")\nsuspend code ordering.\n\nUnfortunately, this requires us to add a platform hook to the\nresuming of devices for recovering the platform in case one of the\ndevice drivers\u0027 .suspend() routines returns error code.  Namely,\nACPI 1.0 specifies that _PTS should be called before suspending\ndevices, but _WAK still should be called before resuming them in\norder to undo the changes made by _PTS.  However, if there is an\nerror during suspending devices, they are automatically resumed\nwithout returning control to the PM core, so the _WAK has to be\ncalled from within device_resume() in that cases.\n\nThe patch also reorders and refactors the ACPI suspend/hibernation\ncode to avoid duplication as far as reasonably possible.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1eede070a59e1cc73da51e1aaa00d9ab86572cfc",
      "tree": "eafccca4f2a1ae2e8ebb06d2dff9528d5a289da4",
      "parents": [
        "bb71ad880204b79d60331d3384103976e086cb9f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 20 23:00:01 2008 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 10 10:59:50 2008 -0700"
      },
      "message": "Introduce new top level suspend and hibernation callbacks\n\nIntroduce \u0027struct pm_ops\u0027 and \u0027struct pm_ext_ops\u0027 (\u0027ext\u0027 meaning\n\u0027extended\u0027) representing suspend and hibernation operations for bus\ntypes, device classes, device types and device drivers.\n\nModify the PM core to use \u0027struct pm_ops\u0027 and \u0027struct pm_ext_ops\u0027\nobjects, if defined, instead of the -\u003esuspend(), -\u003eresume(),\n-\u003esuspend_late(), and -\u003eresume_early() callbacks (the old callbacks\nwill be considered as legacy and gradually phased out).\n\nThe main purpose of doing this is to separate suspend (aka S2RAM and\nstandby) callbacks from hibernation callbacks in such a way that the\nnew callbacks won\u0027t take arguments and the semantics of each of them\nwill be clearly specified.  This has been requested for multiple\ntimes by many people, including Linus himself, and the reason is that\nwithin the current scheme if -\u003eresume() is called, for example, it\u0027s\ndifficult to say why it\u0027s been called (ie. is it a resume from RAM or\nfrom hibernation or a suspend/hibernation failure etc.?).\n\nThe second purpose is to make the suspend/hibernation callbacks more\nflexible so that device drivers can handle more than they can within\nthe current scheme.  For example, some drivers may need to prevent\nnew children of the device from being registered before their\n-\u003esuspend() callbacks are executed or they may want to carry out some\noperations requiring the availability of some other devices, not\ndirectly bound via the parent-child relationship, in order to prepare\nfor the execution of -\u003esuspend(), etc.\n\nUltimately, we\u0027d like to stop using the freezing of tasks for suspend\nand therefore the drivers\u0027 suspend/hibernation code will have to take\ncare of the handling of the user space during suspend/hibernation.\nThat, in turn, would be difficult within the current scheme, without\nthe new -\u003eprepare() and -\u003ecomplete() callbacks.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "af258f516b3e4e214121f5d6d53cab32ce0d8010",
      "tree": "9ae8987d51217316aecfc0c04806cc6970cd69e6",
      "parents": [
        "17b7a89cfb6ea2ff103785f9b2580e5138b6cfd1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jan 11 01:22:23 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:58 2008 -0500"
      },
      "message": "Suspend: Invoke suspend notifications after console switch\n\nIn order to fix APM emulation it is necessary to enable apm-emulation\nnotifications for suspends triggered in various ways via the suspend\nnotifiers.  However, this will cause the systems using APM emulation\nto lock up between X being needed to switch away from the VT and X\nalready waiting for resume in the APM ioctl.\n\nThis patch moves the console switch (if enabled) before the suspend\nnotification (and after the resume notification) to avoid this issue.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b28f508112c584cdfbb4d8a9489cc4b79dac68ee",
      "tree": "8269d53055d0368f6eb25fac6b9d29077382cbca",
      "parents": [
        "c9b6c8f68ee48e1e3dbb53e13316757e2c0b584d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jan 15 23:17:00 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:58 2008 -0500"
      },
      "message": "Suspend: Add config option to disable the freezer if architecture wants that\n\nThis patch makes the freezer optional for suspend to allow the\nsystem to work (or not work) like the original PMU suspend.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c697eecebc6cfc0b393afea3c4ff1a5041526ad1",
      "tree": "36b0cb4e667792212c2b5d05ac212662555d1682",
      "parents": [
        "7671b8ae5381a504d4c4ef8dd9c47128c2c3fd7e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 08 00:04:17 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:56 2008 -0500"
      },
      "message": "Suspend: Introduce begin() and end() callbacks\n\nOn ACPI systems the target state set by acpi_pm_set_target() is\nreset by acpi_pm_finish(), but that need not be called if the\nsuspend fails.  All platforms that use the .set_target() global\nsuspend callback are affected by analogous issues.\n\nFor this reason, we need an additional global suspend callback that\nwill reset the target state regardless of whether or not the suspend\nis successful.  Also, it is reasonable to rename the .set_target()\ncallback, since it will be used for a different purpose on ACPI\nsystems (due to ACPI 1.0x code ordering requirements).\n\nIntroduce the global suspend callback .end() to be executed at the\nend of the suspend sequence and rename the .set_target() global\nsuspend callback to .begin().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "7671b8ae5381a504d4c4ef8dd9c47128c2c3fd7e",
      "tree": "f6b8c2ba01ce566549b948eb0cd7f713cf824a41",
      "parents": [
        "a3627f67b1d5ddd8f65eedc2a76da90fbe062530"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 14 01:07:13 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:56 2008 -0500"
      },
      "message": "suspend: fix ia64 allmodconfig build\n\nkernel/power/main.c:488: error: ‘pm_test_attr’ undeclared here (not in a function)\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "465d2b477f6a0ffe01242561a93e7bf81d67c776",
      "tree": "c5d9f59e974b68d6d813a79422db3e488581f717",
      "parents": [
        "b6887a29441ed5f0728b31ce90c0f0a0427317a3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:08:38 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Suspend: Use common prefix in messages\n\nMake suspend messages start with one common prefix \"PM: \".\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9628c0ee6a6d9ef06a77ea25932c00817f9e88a0",
      "tree": "d80ee478567a098cb7990d73f14ba4bd325c09de",
      "parents": [
        "72df68ca8e006a0107933c4fb13c741a0a48163f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:06:00 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Suspend: Fix comment in main.c\n\nFix a comment in kernel/power/main.c so that it doesn\u0027t contain lines\nlonger that 80 characters.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "2ed43b63285c394cb5e1829c199cc94c7b8233b9",
      "tree": "6131e028d746b2fc77e53c53285a2e0896491266",
      "parents": [
        "825257569350e913bee3bc918508c0aa6e3398cd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:03:26 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Suspend: Fix compilation warning for CONFIG_SUSPEND unset\n\nSuspend: Make debug facility depend on CONFIG_SUSPEND\n\nMake the new suspend debug facility code depend on CONFIG_SUSPEND,\nas appropriate, to remove the compiler warning printed when CONFIG_PM is set\nand CONFIG_SUSPEND is not set.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "825257569350e913bee3bc918508c0aa6e3398cd",
      "tree": "2d016a04dfc09938565d5e932f0d2d5e43fb6bdd",
      "parents": [
        "90dda1cb6ace6abd777f84bf051c4f86fa58986a"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Nov 19 23:49:18 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "PM: Convert PM notifiers to out-of-line code\n\nThis patch (as1008b) converts the PM notifier routines from inline\ncalls to out-of-line code.  It also prevents pm_chain_head from\nbeing created when CONFIG_PM_SLEEP isn\u0027t enabled, and EXPORTs the\nnotifier registration and unregistration routines.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "039a75c6e17ba4ff76998d6ac6ee3d508fff1930",
      "tree": "050ce0df5ae0a7e823b2ceb4dec40e85fb5c987c",
      "parents": [
        "0e7d56e3d9d7e37c79d0e05ffb3994e34beb3bbc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 29 00:29:06 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "suspend: build fix responding to 2.6.25 kset change\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "0e7d56e3d9d7e37c79d0e05ffb3994e34beb3bbc",
      "tree": "cac3e72f882085bc869df9302248a079c657bb10",
      "parents": [
        "c3e94d899c864e558f938f9845ddb8c2e5d5ccd0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Nov 19 23:41:19 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Suspend: Testing facility (rev. 2)\n\nIntroduce sysfs attribute /sys/power/pm_test allowing one to test the suspend\ncore code.  Namely, writing one of the strings:\n\nfreezer\ndevices\nplatform\nprocessors\ncore\n\nto this file causes the suspend code to work in one of the test modes defined as\nfollows:\n\nfreezer\n- test the freezing of processes\n\ndevices\n- test the freezing of processes and suspending of devices\n\nplatform\n- test the freezing of processes, suspending of devices and platform global\n  control methods(*)\n\nprocessors\n- test the freezing of processes, suspending of devices, platform global\n  control methods and the disabling of nonboot CPUs\n\ncore\n- test the freezing of processes, suspending of devices, platform global\n  control methods, the disabling of nonboot CPUs and suspending of\n  platform/system devices\n\n(*) These are ACPI global control methods on ACPI systems\n\nThen, if a suspend is started by normal means, the suspend core will perform\nits normal operations up to the point indicated by given test level.  Next, it\nwill wait for 5 seconds and carry out the resume operations needed to transition\nthe system back to the fully functional state.\n\nWriting \"none\" to /sys/power/pm_test turns the testing off.\n\nWhen open for reading, /sys/power/pm_test contains a space-separated list of all\navailable tests (including \"none\" that represents the normal functionality) in\nwhich the current test level is indicated by square brackets.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d76e15fb20eeb7632ef38876a884fe3508b2c01d",
      "tree": "5f3d63e70d8ac2365ee0c3f6b0489c8377ec1cd0",
      "parents": [
        "37b0c020343080241984d978981d6caf877b278a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 27 11:28:26 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:25 2008 -0800"
      },
      "message": "driver core: make /sys/power a kobject\n\n/sys/power should not be a kset, that\u0027s overkill.  This patch renames it\nto power_kset and fixes up all usages of it in the tree.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "386f275f5d097758f867bc99ddeaeb7a03b6b190",
      "tree": "bd27130e78e1aad1ce080f8c8ca76b9166b33ed4",
      "parents": [
        "23b5212cc7422f475b82124334b64277b5b43013"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Nov 02 13:47:53 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:18 2008 -0800"
      },
      "message": "Driver Core: switch all dynamic ksets to kobj_sysfs_ops\n\nSwitch all dynamically created ksets, that export simple attributes,\nto kobj_attribute from subsys_attribute. Struct subsys_attribute will\nbe removed.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Mike Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Phillip Hellewell \u003cphillip@hellewell.homeip.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "039a5dcd2fc45188a2d522df630db4f7ef903a0f",
      "tree": "dbadc8ef13f00f90acf3c9caad8a3834a34f6ce9",
      "parents": [
        "7405c1e15edfe43b137bfbc5882f1af34d6d414d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 10:39:50 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:16 2008 -0800"
      },
      "message": "kset: convert /sys/power to use kset_create\n\nDynamically create the kset instead of declaring it statically.  We also\nrename power_subsys to power_kset to catch all users of the variable and\nwe properly export it so that people don\u0027t have to guess that it really\nis present in the system.\n\nThe pseries code is wierd, why is it createing /sys/power if CONFIG_PM\nis disabled?  Oh well, stupid big boxes ignoring config options...\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3514faca19a6fdc209734431c509631ea92b094e",
      "tree": "f6d102e6dec276f8e8d1044b47c74a02b901554f",
      "parents": [
        "c11c4154e7ff4cebfadad849b1e22689d759c3f4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 16 10:11:44 2007 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kobject: remove struct kobj_type from struct kset\n\nWe don\u0027t need a \"default\" ktype for a kset.  We should set this\nexplicitly every time for each kset.  This change is needed so that we\ncan make ksets dynamic, and cleans up one of the odd, undocumented\nassumption that the kset/kobject/ktype model has.\n\nThis patch is based on a lot of help from Kay Sievers.\n\nNasty bug in the block code was found by Dave Young\n\u003chidave.darkstar@gmail.com\u003e\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9f9adecd2d0e4f88fa0e8cb06c6ec207748df70a",
      "tree": "b3914860b74a9f6c3ae42016aa708b54040248f8",
      "parents": [
        "da8cadb31b82c9d41fc593c8deab6aa20b162d6b"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Dec 13 17:38:03 2007 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:26:47 2008 -0500"
      },
      "message": "PM: ACPI and APM must not be enabled at the same time\n\nACPI and APM used \"pm_active\" to guarantee that\nthey would not be simultaneously active.\n\nBut pm_active was recently moved under CONFIG_PM_LEGACY,\nso that without CONFIG_PM_LEGACY, pm_active became a NOP --\nallowing ACPI and APM to both be simultaneously enabled.\nThis caused unpredictable results, including boot hangs.\n\nFurther, the code under CONFIG_PM_LEGACY is scheduled\nfor removal.\n\nSo replace pm_active with pm_flags.\npm_flags depends only on CONFIG_PM,\nwhich is present for both CONFIG_APM and CONFIG_ACPI.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9194\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "232b14328050a4639130b0dec185f43968e72035",
      "tree": "eb3b525278bd3efd5403bc4f5cfb3e41614d40c4",
      "parents": [
        "2776365370b579afc36cff14dc70a567b66f0378"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "freezer: do not sync filesystems from freeze_processes\n\nThe syncing of filesystems from within the freezer is generally not needed.\nAlso, if there\u0027s an ext3 filesystem loopback-mounted from a FUSE one, the\nsyncing results in writes to it and deadlocks.  Similarly, it will deadlock if\nFUSE implements sync.\n\nChange freeze_processes() so that it doesn\u0027t execute sys_sync() and make the\nsuspend and hibernation code path sync filesystems independently of the\nfreezer.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f242d9196fd1ef4e6bf0e50d2e7f32866fb145c2",
      "tree": "f611d44e54e7633ff1d94169cf83485472127e08",
      "parents": [
        "e6c5eb9541f2197a3ffab90b1c7a3250a9b51bf6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Make suspend_ops static\n\nThe variable suspend_ops representing the set of global platform-specific\nsuspend-related operations, used by the PM core, need not be exported outside\nof kernel/power/main.c .   Make it static.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6c5eb9541f2197a3ffab90b1c7a3250a9b51bf6",
      "tree": "ac227415da22d4345f8e72a6a8e781757b6ce85a",
      "parents": [
        "26398a70ea35f153feb799fa850c71685667712b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rework struct platform_suspend_ops\n\nThere is no reason why the .prepare() and .finish() methods in \u0027struct\nplatform_suspend_ops\u0027 should take any arguments, since architectures don\u0027t use\nthese methods\u0027 argument in any practically meaningful way (ie.  either the\ntarget system sleep state is conveyed to the platform by .set_target(), or\nthere is only one suspend state supported and it is indicated to the PM core\nby .valid(), or .prepare() and .finish() aren\u0027t defined at all).   There also\nis no reason why .finish() should return any result.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26398a70ea35f153feb799fa850c71685667712b",
      "tree": "e75959ef010bf3521bce2a33e59565c34b0c109d",
      "parents": [
        "95d9ffbe01fb21d524c86bf77871255066bc6e55"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rename struct pm_ops and related things\n\nThe name of \u0027struct pm_ops\u0027 suggests that it is related to the power\nmanagement in general, but in fact it is only related to suspend.   Moreover,\nits name should indicate what this structure is used for, so it seems\nreasonable to change it to \u0027struct platform_suspend_ops\u0027.   In that case, the\nname of the global variable of this type used by the PM core and the names of\nrelated functions should be changed accordingly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a065c86e1bfcdd36709025d018965afea3f3a2b6",
      "tree": "4152aea4b22515a986ce71ad1284b852b12f8947",
      "parents": [
        "41702d9a4fffa9e25b2ad9d4af09b3013fa155e1"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Thu Oct 18 03:04:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:17 2007 -0700"
      },
      "message": "make kernel/power/main.c:suspend_enter() static\n\nsuspend_enter() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "296699de6bdc717189a331ab6bbe90e05c94db06",
      "tree": "53c847ecc8cce11952502921844052e44ca60d5e",
      "parents": [
        "b0cb1a19d05b8ea8611a9ef48a17fe417f1832e6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jul 29 23:27:18 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 29 16:45:38 2007 -0700"
      },
      "message": "Introduce CONFIG_SUSPEND for suspend-to-Ram and standby\n\nIntroduce CONFIG_SUSPEND representing the ability to enter system sleep\nstates, such as the ACPI S3 state, and allow the user to choose SUSPEND\nand HIBERNATION independently of each other.\n\nMake HOTPLUG_CPU be selected automatically if SUSPEND or HIBERNATION has\nbeen chosen and the kernel is intended for SMP systems.\n\nAlso, introduce CONFIG_PM_SLEEP which is automatically selected if\nCONFIG_SUSPEND or CONFIG_HIBERNATION is set and use it to select the\ncode needed for both suspend and hibernation.\n\nThe top-level power management headers and the ACPI code related to\nsuspend and hibernation are modified to use the new definitions (the\nchanges in drivers/acpi/sleep/main.c are, mostly, moving code to reduce\nthe number of ifdefs).\n\nThere are many other files in which CONFIG_PM can be replaced with\nCONFIG_PM_SLEEP or even with CONFIG_SUSPEND, but they can be updated in\nthe future.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b0cb1a19d05b8ea8611a9ef48a17fe417f1832e6",
      "tree": "895fe53e8dc4fc59d05b963ac079f6ff759ad0fb",
      "parents": [
        "6c8dca5d53f95009d4fff00195bf38f277dc4366"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jul 29 23:24:36 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 29 16:45:38 2007 -0700"
      },
      "message": "Replace CONFIG_SOFTWARE_SUSPEND with CONFIG_HIBERNATION\n\nReplace CONFIG_SOFTWARE_SUSPEND with CONFIG_HIBERNATION to avoid\nconfusion (among other things, with CONFIG_SUSPEND introduced in the\nnext patch).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77afcf78a2ded9a91838734234949c0ead5feb12",
      "tree": "76922017855c70d550b40241f8a144f6c098cd04",
      "parents": [
        "5a60d6235c8352ade8f2699e72fcdfe853730456"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@suse.cz",
        "time": "Thu Jul 19 01:47:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:43 2007 -0700"
      },
      "message": "PM: Integrate beeping flag with existing acpi_sleep flags\n\nMove \"debug during resume from s2ram\" into the variable we already use\nfor real-mode flags to simplify code. It also closes nasty trap for\nthe user in acpi_sleep_setup; order of parameters actually mattered there,\nacpi_sleep\u003ds3_bios,s3_mode doing something different from\nacpi_sleep\u003ds3_mode,s3_bios.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a60d6235c8352ade8f2699e72fcdfe853730456",
      "tree": "cafab638df562b912e9e2a653e5c7238816d9706",
      "parents": [
        "bd804eba1c8597cbb7cd5a5f9fe886aae16a079a"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "nigel@nigel.suspend2.net",
        "time": "Thu Jul 19 01:47:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:43 2007 -0700"
      },
      "message": "PM: Optional beeping during resume from suspend to RAM\n\nAdd a feature allowing the user to make the system beep during a resume from\nsuspend to RAM, on x86_64 and i386.\n\nThis is useful for the users with broken resume from RAM, so that they can\nverify if the control reaches the kernel after a wake-up event.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c961dfb7c903cfd1cd71b506863894038fd704f",
      "tree": "32890d6ef2cf735243d804778a5b62951aed4ef5",
      "parents": [
        "ccd4b65aef4be2278543fde5b999e55a4d694fd8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 19 01:47:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:42 2007 -0700"
      },
      "message": "PM: Reduce code duplication between main.c and user.c\n\nThe SNAPSHOT_S2RAM ioctl code is outdated and it should not duplicate the\nsuspend code in kernel/power/main.c.  Fix that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b10d911749d37dccfa5873d2088aea3f074b9e45",
      "tree": "56bd0ccb2861d7ae562d4e48a737727628358b42",
      "parents": [
        "c2cf7d87d804c66e063829d5ca739053e901dc15"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 19 01:47:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:42 2007 -0700"
      },
      "message": "PM: introduce hibernation and suspend notifiers\n\nMake it possible to register hibernation and suspend notifiers, so that\nsubsystems can perform hibernation-related or suspend-related operations that\nshould not be carried out by device drivers\u0027 .suspend() and .resume()\nroutines.\n\n[akpm@linux-foundation.org: build fixes]\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2391dae3e36c19fe668c71eac2eb8344dbaaf46d",
      "tree": "ae8c1fa53fe67e3ccbb8c5097f6b5bda27b26959",
      "parents": [
        "cbcdd772ff43de58cc0d9de76ae9d05e2dd98bc0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jul 01 12:07:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 01 12:29:44 2007 -0700"
      },
      "message": "PM: introduce set_target method in pm_ops\n\nCommit 52ade9b3b97fd3bea42842a056fe0786c28d0555 changed the suspend code\nordering to execute pm_ops-\u003eprepare() after the device model per-device\n.suspend() calls in order to fix some ACPI-related issues.  Unfortunately, it\nbroke the at91 platform which assumed that pm_ops-\u003eprepare() would be called\nbefore suspending devices.\n\nat91 used pm_ops-\u003eprepare() to get notified of the target system sleep state,\nso that it could use this information while suspending devices.  However, with\nthe current suspend code ordering pm_ops-\u003eprepare() is called too late for\nthis purpose.  Thus, at91 needs an additional method in \u0027struct pm_ops\u0027 that\nwill be used for notifying the platform of the target system sleep state.\nMoreover, in the future such a method will also be needed by ACPI.\n\nThis patch adds the .set_target() method to \u0027struct pm_ops\u0027 and makes the\nsuspend code call it, if implemented, before executing the device model\nper-device .suspend() calls.  It also modifies the at91 code to use\npm_ops-\u003eset_target() instead of pm_ops-\u003eprepare().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d98a690f58e0d6ecf424b7ca84488475cf87bd9",
      "tree": "09adca50773f465b75fc04682377bfaa40c72876",
      "parents": [
        "7925409e202a41176b729671eab6e610a54153cd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 16 22:11:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 17 05:23:05 2007 -0700"
      },
      "message": "swsusp: fix sysfs interface\n\nThe sysfs files /sys/power/disk and /sys/power/state do not work as\ndocumented, since they allow the user to write only a few initial\ncharacters of the input string to trigger the option (eg.  \u0027echo pl \u003e\n/sys/power/disk\u0027 activates the platform mode of hibernation).  Fix it.\n\nSpecial thanks to Peter Moulder \u003cPeter.Moulder@infotech.monash.edu.au\u003e for\npointing out the problem.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52ade9b3b97fd3bea42842a056fe0786c28d0555",
      "tree": "70ae152f573b5d0f5078e2506830c3b804ab6816",
      "parents": [
        "7b104bcb8e460e45a1aebe3da9b86aacdb4cab12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 16 15:28:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 16 15:33:19 2007 -0700"
      },
      "message": "Fix ACPI suspend / device suspend ordering problem\n\nIn commit e3c7db621bed4afb8e231cb005057f2feb5db557 we fixed the resume\nordering, so that the ACPI low-level resume code was called before the\nactual driver resume was called. However, that broke the nesting logic\nof suspend and resume, and we continued to suspend the devices _after_\nwe the ACPI device suspend code was called.\n\nThat resulted in us saving PCI state for devices that had already been\nchanged by ACPI, and in some cases disabled entirely (causing the PCI\nsave_state to be all-ones).  Which in turn caused the wrong state to be\nwritten back on resume.\n\nThis moves the ACPI device suspend to after the device model per-device\nsuspend() calls. This fixes the bogus state save.\n\nThanks to Lukáš Hejtmánek for testing.\n\nAcked-by: Lukas Hejtmanek \u003cxhejtman@ics.muni.cz\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3d25c275d383975504dc53c25b691df59bd3c48",
      "tree": "161a2ae12a20a630c2f639e144872db2b92eb098",
      "parents": [
        "d60846c4d16f9518b098b905af2b87cb6bf6dc42"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 09 02:33:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:48 2007 -0700"
      },
      "message": "PM: Separate hibernation code from suspend code\n\n[ With Johannes Berg \u003cjohannes@sipsolutions.net\u003e ]\n\nSeparate the hibernation (aka suspend to disk code) from the other suspend\ncode.  In particular:\n\n * Remove the definitions related to hibernation from include/linux/pm.h\n * Introduce struct hibernation_ops and a new hibernate() function to hibernate\n   the system, defined in include/linux/suspend.h\n * Separate suspend code in kernel/power/main.c from hibernation-related code\n   in kernel/power/disk.c and kernel/power/user.c (with the help of\n   hibernation_ops)\n * Switch ACPI (the only user of pm_ops.pm_disk_mode) to hibernation_ops\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab3bfca7abf3fd0fe41d26d839610a787aa7e587",
      "tree": "e62e58beaf9d22d4156b27d4523c3728bf5769bc",
      "parents": [
        "b1296cc48b39355241470ef934a5e2270e3f23bd"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 06 14:50:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:59 2007 -0700"
      },
      "message": "remove software_suspend()\n\nRemove software_suspend() and all its users since\npm_suspend(PM_SUSPEND_DISK) should be equivalent and there\u0027s no point in\nhaving two interfaces for the same thing.\n\nThe patch also changes the valid_state function to return 0 (false) for\nPM_SUSPEND_DISK when SOFTWARE_SUSPEND is not configured instead of\naccepting it and having the whole thing fail later.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74dfd666de861c97d47bdbd892f6d21b801d0247",
      "tree": "7200946212cf546f4e5fac31db3dc97dbb144300",
      "parents": [
        "7be9823491ecbaf9700d7d3502cb4b4dd0ed868a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 06 14:50:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:59 2007 -0700"
      },
      "message": "swsusp: do not use page flags\n\nMake swsusp use memory bitmaps instead of page flags for marking \u0027nosave\u0027 and\nfree pages.  This allows us to \u0027recycle\u0027 two page flags that can be used for\nother purposes.  Also, the memory needed to store the bitmaps is allocated\nwhen necessary (ie.  before the suspend) and freed after the resume which is\nmore reasonable.\n\nThe patch is designed to minimize the amount of changes and there are some\nnice simplifications and optimizations possible on top of it.  I am going to\nimplement them separately in the future.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "823bccfc4002296ba88c3ad0f049e1abd8108d30",
      "tree": "5338ae0b32409446af4cd00c5107d9405d5bf0b6",
      "parents": [
        "2609e7b9bebfd433254c02538ba803dc516ff674"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 13 13:15:19 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 02 18:57:59 2007 -0700"
      },
      "message": "remove \"struct subsystem\" as it is no longer needed\n\nWe need to work on cleaning up the relationship between kobjects, ksets and\nktypes.  The removal of \u0027struct subsystem\u0027 is the first step of this,\nespecially as it is not really needed at all.\n\nThanks to Kay for fixing the bugs in this patch.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9684e51cd157607f0727c1550e7df6e31de40808",
      "tree": "eef6e19205a22817ee659cb2dc7b9ae39465c69d",
      "parents": [
        "e8c9c502690efd24b7055bf608e7a3c34216848b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Apr 30 15:09:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 16:40:40 2007 -0700"
      },
      "message": "power management: force pm_ops.valid callback to be assigned\n\nThis patch changes the docs and behaviour from \"all states valid\" to \"no\nstates valid\" if no .valid callback is assigned.  Users of pm_ops that only\nneed mem sleep can assign pm_valid_only_mem without any overhead, others\nwill require more elaborate callbacks.\n\nNow that all users of pm_ops have a .valid callback this is a safe thing to\ndo and prevents things from getting messy again as they were before.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nLooks-okay-to: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: \u003clinux-pm@lists.linux-foundation.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e8c9c502690efd24b7055bf608e7a3c34216848b",
      "tree": "1583f34ec9cac07ddfdcb24de66e49718b107436",
      "parents": [
        "11d77d0c01b80e44c7aceb21928508dafce774f9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Apr 30 15:09:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 16:40:40 2007 -0700"
      },
      "message": "power management: implement pm_ops.valid for everybody\n\nAlmost all users of pm_ops only support mem sleep, don\u0027t check in .valid and\ndon\u0027t reject any others in .prepare so users can be confused if they check\n/sys/power/state, especially when new states are added (these would then\nresult in s-t-r although they\u0027re supposed to be something different).\n\nThis patch implements a generic pm_valid_only_mem function that is then\nexported for users and puts it to use in almost all existing pm_ops.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: linux-pm@lists.linux-foundation.org\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe0c935a6cbf25d72a27c7a345df8a2151de0b74",
      "tree": "841a847412694ee586b0ca7e1e2ce7c45700d9b1",
      "parents": [
        "1173a729fc3ce2fa0d698bd39be8ff7bf6c70bf1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Apr 30 15:09:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 16:40:40 2007 -0700"
      },
      "message": "rework pm_ops pm_disk_mode, kill misuse\n\nThis patch series cleans up some misconceptions about pm_ops.  Some users of\nthe pm_ops structure attempt to use it to stop the user from entering suspend\nto disk, this, however, is not possible since the user can always use\n\"shutdown\" in /sys/power/disk and then the pm_ops are never invoked.  Also,\nplatforms that don\u0027t support suspend to disk simply should not allow\nconfiguring SOFTWARE_SUSPEND (read the help text on it, it only selects\nsuspend to disk and nothing else, all the other stuff depends on PM).\n\nThe pm_ops structure is actually intended to provide a way to enter\nplatform-defined sleep states (currently supported states are \"standby\" and\n\"mem\" (suspend to ram)) and additionally (if SOFTWARE_SUSPEND is configured)\nallows a platform to support a platform specific way to enter low-power mode\nonce everything has been saved to disk.  This is currently only used by ACPI\n(S4).\n\nThis patch:\n\nThe pm_ops.pm_disk_mode is used in totally bogus ways since nobody really\nseems to understand what it actually does.\n\nThis patch clarifies the pm_disk_mode description.\n\nIt also removes all the arm and sh users that think they can veto suspend to\ndisk via pm_ops; not so since the user can always do echo shutdown \u003e\n/sys/power/disk, they need to find a better way involving Kconfig or such.\n\nACPI is the only user left with a non-zero pm_disk_mode.\n\nThe patch also sets the default mode to shutdown again, but when a new pm_ops\nis registered its pm_disk_mode is selected as default, that way the default\nstays for ACPI where it is apparently required.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \u003clinux-pm@lists.linux-foundation.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a53c46dc8253cc613ad66a2ca7aad6de8b7e61b9",
      "tree": "5b041cbe147597efb337525ad8260128cc8bc2b0",
      "parents": [
        "075c1771526c85849ed22298d048bc07e400aee5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Apr 26 11:43:58 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 27 10:57:33 2007 -0700"
      },
      "message": "s2ram: add arch irq disable/enable hooks\n\nAfter some more discussion this patch replaces it:\n\nFrom: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSubject: suspend: add arch irq disable/enable hooks\n\nFor powermac, we need to do some things between suspending devices and\ndevice_power_off, for example setting the decrementer. This patch\nallows architectures to define arch_s2ram_{en,dis}able_irqs in their\nasm/suspend.h to have control over this step.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "9c372d06ce9ddf65e1393f9ea22a6d6bd5f96b42",
      "tree": "24e4b7d7ab60d68426c6c3e2ba976deffb94e575",
      "parents": [
        "dfe461aef0d621d8472d0af343ae8a60866a7a8a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Feb 16 01:38:29 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 23 14:52:09 2007 -0800"
      },
      "message": "power management: no valid states w/o pm_ops\n\nChange /sys/power/state to not advertise any valid states (except for disk\nif SOFTWARE_SUSPEND is enabled) when no pm_ops have been set so userspace\ncan easily discover what states should be available.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Macheck \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "e3c7db621bed4afb8e231cb005057f2feb5db557",
      "tree": "2a9f21bb058e789290ff37f3a6bea690d8b81504",
      "parents": [
        "c1725f2af89f1eda3cb9007290971b55084569a4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 10 01:43:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:19 2007 -0800"
      },
      "message": "[PATCH] PM: Change code ordering in main.c\n\nAs indicated in a recent thread on Linux-PM, it\u0027s necessary to call\npm_ops-\u003efinish() before devce_resume(), but enable_nonboot_cpus() has to be\ncalled before pm_ops-\u003efinish() (cf.\nhttp://lists.osdl.org/pipermail/linux-pm/2006-November/004164.html).  For\nconsistency, it seems reasonable to call disable_nonboot_cpus() after\ndevice_suspend().\n\nThis way the suspend code will remain symmetrical with respect to the resume\ncode and it may allow us to speed up things in the future by suspending and\nresuming devices and/or saving the suspend image in many threads.\n\nThe following series of patches reorders the suspend and resume code so that\nnonboot CPUs are disabled after devices have been suspended and enabled before\nthe devices are resumed.  It also causes pm_ops-\u003efinish() to be called after\nenable_nonboot_cpus() wherever necessary.\n\nThis patch:\n\nChange the ordering of code in kernel/power/main.c so that device_suspend()\nis called before disable_nonboot_cpus() and pm_ops-\u003efinish() is called after\nenable_nonboot_cpus() and before device_resume(), as indicated by recent\ndiscussion on Linux-PM\n(cf. http://lists.osdl.org/pipermail/linux-pm/2006-November/004164.html).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "96177299416dbccb73b54e6b344260154a445375",
      "tree": "586454851d0fbbb365d6b12c852d5a7dd6b004f4",
      "parents": [
        "51ed4491271be8c56bdb2a03481ed34ea4984bc2"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sat Feb 10 01:43:03 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:18 2007 -0800"
      },
      "message": "[PATCH] Drop free_pages()\n\nnr_free_pages is now a simple access to a global variable.  Make it a macro\ninstead of a function.\n\nThe nr_free_pages now requires vmstat.h to be included.  There is one\noccurrence in power management where we need to add the include.  Directly\nrefrer to global_page_state() there to clarify why the #include was added.\n\n[akpm@osdl.org: arm build fix]\n[akpm@osdl.org: sparc64 build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfee47f99bc14a6d7c6b0be2284db2cef310a815",
      "tree": "2974594b06534c199ea9c4b39492d5a708bb539a",
      "parents": [
        "7e244322cd4ea361ef9ee623b3fcb4d9f4ff841c",
        "9185cfa92507d07ac787bc73d06c42222eec7239"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Dec 16 01:01:18 2006 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Dec 16 01:01:18 2006 -0500"
      },
      "message": "Pull bugfix into test branch\n\nConflicts:\n\n\tkernel/power/disk.c\n"
    },
    {
      "commit": "4cf303487d5dddaace2daca8437c555f3f0bc1aa",
      "tree": "55d1c5e054a90d1bed587683b804576111628e66",
      "parents": [
        "49033c81845f1bd2a69e53485f20d55a0e7bace5"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Wed Dec 06 20:36:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:32 2006 -0800"
      },
      "message": "[PATCH] Export pm_suspend for the shared APM emulation\n\nThe new shared APM emulation just like its ARM and MIPS predecessors uses\npm_suspend() which was only exported on SH.  Move export to close to it\u0027s\ndefinition where it really should be anyway.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6d70980602e6f1869ebcdcbfaf55a0a5941583e",
      "tree": "b7e9b5f457eb7fe91fbbdbe978a50493da862cf2",
      "parents": [
        "3eb1b3a40722cbb46631db373af66d13d1e7ac81"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Dec 06 20:34:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] convert pm_sem to a mutex\n\nThe power management semaphore is only used as mutex, so convert it.\n\n[akpm@osdl.org: fix rotten bug]\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7dfb71030f7636a0d65200158113c37764552f93",
      "tree": "276b812903d377b16d8828e888552fd256f48aab",
      "parents": [
        "8a05aac2631aa0e6494d9dc990f8c68ed8b8fde7"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] Add include/linux/freezer.h and move definitions from sched.h\n\nMove process freezing functions from include/linux/sched.h to freezer.h, so\nthat modifications to the freezer or the kernel configuration don\u0027t require\nrecompiling just about everything.\n\n[akpm@osdl.org: fix ueagle driver]\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9185cfa92507d07ac787bc73d06c42222eec7239",
      "tree": "affcb8c0164b79f9fa5932cd7700498560794a82",
      "parents": [
        "8b0dc866dd9b8d10a53cb3537385a51b7ee54b62"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Nov 01 13:23:14 2006 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Nov 01 22:40:23 2006 -0500"
      },
      "message": "ACPI: S4: Use \"platform\" rather than \"shutdown\" mode by default\n\nIt has been reported that on some systems the functionality after a resume\nfrom disk is limited if the system is simply powered off during the suspend\ninstead of using the ACPI S4 suspend (aka platform mode).\n\nUnfortunately the default is currently to power off the system during the\nsuspend so the users of these systems experience problems after the resume\nif they don\u0027t switch to the platform mode explicitly.  This patch makes swsusp\nuse the platform mode by default to avoid such situations.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Stefan Seyfried \u003cseife@suse.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c5c6ba4e08ab9c9e390a0f3a7d9a5c332f5cc6ef",
      "tree": "4e13a9eebd8f3901dcc187c585369ef843d1e1a7",
      "parents": [
        "7d145aa3abf4d96c91f37c012facd5cfbb9010d1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:49:04 2006 -0700"
      },
      "message": "[PATCH] PM: Add pm_trace switch\n\nAdd the pm_trace attribute in /sys/power which has to be explicitly set to\none to really enable the \"PM tracing\" code compiled in when CONFIG_PM_TRACE\nis set (which modifies the machine\u0027s CMOS clock in unpredictable ways).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e3920fb42c8ddfe63befb54d95c0e13eabacea9b",
      "tree": "08371a71e58e6e9d3ec62dfa6a22b3b5e6ff0fd5",
      "parents": [
        "e8eff5ac294e12531c4195e0c15a222d3c9015e5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:59 2006 -0700"
      },
      "message": "[PATCH] Disable CPU hotplug during suspend\n\nThe current suspend code has to be run on one CPU, so we use the CPU\nhotplug to take the non-boot CPUs offline on SMP machines.  However, we\nshould also make sure that these CPUs will not be enabled by someone else\nafter we have disabled them.\n\nThe functions disable_nonboot_cpus() and enable_nonboot_cpus() are moved to\nkernel/cpu.c, because they now refer to some stuff in there that should\nbetter be static.  Also it\u0027s better if disable_nonboot_cpus() returns an\nerror instead of panicking if something goes wrong, and\nenable_nonboot_cpus() has no reason to panic(), because the CPUs may have\nbeen enabled by the userland before it tries to take them online.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3b364b8d584b94777f8446a943b3c65e75e758f8",
      "tree": "423b5a0f5b8ea77deffa053443911b226fcb0ab1",
      "parents": [
        "43b0bc00fdbf2f1503a57f0c2c1338438c5d2805"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Sun Jun 25 05:47:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:08 2006 -0700"
      },
      "message": "[PATCH] constify parts of kernel/power/\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6cc0719181a7aa8883855140541e7892250e66af",
      "tree": "e5c740230abef71bb4d8367b68602fd294284e89",
      "parents": [
        "04c567d9313e4927b9835361d8ac0318ce65af6b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Jun 22 14:47:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:56 2006 -0700"
      },
      "message": "[PATCH] suspend_console() warning fix\n\nkernel/power/main.c: In function \u0027suspend_prepare\u0027:\nkernel/power/main.c:89: warning: implicit declaration of function \u0027suspend_console\u0027\nkernel/power/main.c: In function \u0027suspend_finish\u0027:\nkernel/power/main.c:137: warning: implicit declaration of function \u0027resume_console\u0027\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "557240b48e2dc4f6fa878afc3fc767ad745ca7ed",
      "tree": "354e9de17c28b438db675f6a2b779415f1634c45",
      "parents": [
        "5603509137940f4cbc577281cee62110d4097b1b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 18:16:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 18:16:01 2006 -0700"
      },
      "message": "Add support for suspending and resuming the whole console subsystem\n\nTrying to suspend/resume with console messages flying all around is\ndoomed to failure, when the devices that the messages are trying to\ngo to are being shut down.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "47bb789973fed504e4711ec34e63b84e6cbfb4e8",
      "tree": "2f617a73244a93d4b5b92236b6f809bf36912db5",
      "parents": [
        "37e53db8aa233c65142d63b496277bf5be9c0ade"
      ],
      "author": {
        "name": "dean gaudet",
        "email": "dean@arctic.org",
        "time": "Thu Apr 27 18:39:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 28 08:33:46 2006 -0700"
      },
      "message": "[PATCH] off-by-1 in kernel/power/main.c\n\nThere\u0027s an off-by-1 in kernel/power/main.c:state_store() ...  if your\nkernel just happens to have some non-zero data at pm_states[PM_SUSPEND_MAX]\n(i.e.  one past the end of the array) then it\u0027ll let you write anything you\nwant to /sys/power/state and in response the box will enter S5.\n\nSigned-off-by: dean gaudet \u003cdean@arctic.org\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b238205ba5d79a8a242d7a5ddb82b89e4dc4e48",
      "tree": "494b06bddd9d6b28a4e83ad7b49523a92ee5b207",
      "parents": [
        "94c188d32996beac00426740974310e32f162c14"
      ],
      "author": {
        "name": "Luca Tettamanti",
        "email": "kronos.it@gmail.com",
        "time": "Thu Mar 23 03:00:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:08 2006 -0800"
      },
      "message": "[PATCH] swsusp: add s2ram ioctl to userland interface\n\nAdd the SNAPSHOT_S2RAM ioctl to the snapshot device.\n\nThis ioctl allows a userland application to make the system (previously frozen\nwith the SNAPSHOT_FREE ioctl) enter the S3 state without freezing processes\nand disabling nonboot CPUs for the second time.\n\nThis will allow us to implement the suspend-to-disk-and-RAM (STDR)\nfunctionality in the userland suspend tools.\n\nSigned-off-by: Luca Tettamanti \u003ckronos.it@gmail.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a38416cea8ac801ae8f261074721f35317613dc",
      "tree": "5129ce08bdd6cfe70447f53000266c4caea32bec",
      "parents": [
        "d2149b542382bfc206cb28485108f6470c979566"
      ],
      "author": {
        "name": "David Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Wed Nov 23 12:36:00 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Nov 30 23:15:55 2005 -0500"
      },
      "message": "[ACPI] SMP S3 resume: evaluate _WAK after INIT\n\nOn SMP resume from S3, we reset (INIT) the non-boot\nprocessors to boot them cleanly.  But the BIOS needs\nto execute _WAK after INIT in order to properly\ninitialized these processors upon resume.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d5651\n\nSigned-off-by: David Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "123d3c13e2853a11b4d599d754b356acb12886e2",
      "tree": "6127e78c2dabcb2ca70de896b7aba53f12213d82",
      "parents": [
        "d91b14c463306eb6527550ba48617e7f5500d3ae"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Tue Nov 29 19:34:37 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 29 19:47:03 2005 -0800"
      },
      "message": "[PATCH] fix swsusp on machines not supporting S4\n\nFix swsusp on machines not supporting S4.  With recent changes, it is not\npossible to trigger it using /sys filesystem.  Swsusp does not really need\nany support from low-level code, it is possible to reboot or halt at the\nend of suspend.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "969e9afd489514252a680914c6d8b9322c713eb4",
      "tree": "c4a5f7961995961e0305344c2f5759a80c3955ff",
      "parents": [
        "08de1f0461ad40136e7373cf85e2f3c221a9ad9a"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Tue Nov 08 21:34:30 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:50 2005 -0800"
      },
      "message": "[PATCH] sleep: Fix oops in enter_state\n\nIf ACPI sleep is not configured, but someone still wants to run swsusp,\nhe\u0027d get oops in enter_state.  This is regression since 2.6.14 and this\nfixes it.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eb9289eb20df6b54214c45ac7c6bf5179a149026",
      "tree": "dac51cecdd94e0c7273c990259ddd800057311b9",
      "parents": [
        "0245b3e787dc3267a915e1f56419e7e9c197e148"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Sun Oct 30 15:00:01 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:15 2005 -0800"
      },
      "message": "[PATCH] introduce .valid callback for pm_ops\n\nAdd pm_ops.valid callback, so only the available pm states show in\n/sys/power/state.  And this also makes an earlier states error report at\nenter_state before we do actual suspend/resume.\n\nSigned-off-by: Shaohua Li\u003cshaohua.li@intel.com\u003e\nAcked-by: Pavel Machek\u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57c4ce3cbfba1bb0da7f37b9328a713cbd5d0919",
      "tree": "916c1435e9cba3dd050e526637ee8bf51db140e8",
      "parents": [
        "6161b2ce8116b9a623260ab811e2c035b3fac2e5"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sat Sep 03 15:57:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:18 2005 -0700"
      },
      "message": "[PATCH] pm: clean up /sys/power/disk\n\nClean code up a bit, and only show suspend to disk as available when\nit is configured in.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5028770a42e7bc4d15791a44c28f0ad539323807",
      "tree": "74800e35129775413c13ce7caf036ca19e3ce56c",
      "parents": [
        "9f02d6b7b43d46a74dd385f06090104ecd0fb807",
        "d8683a0cb5d09cb7f19feefa708424a84577e68f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "message": "[ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc...\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "5ae947ecc9c1c23834201e5321684a5cb68bdd3f",
      "tree": "2d6b2df724d5973eb9baeae70cf3742639404021",
      "parents": [
        "e2a5b420f716cd1a46674b1a90389612eced916f"
      ],
      "author": {
        "name": "David Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Mar 18 16:27:13 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Jul 11 23:21:54 2005 -0400"
      },
      "message": "[ACPI] Suspend to RAM fix\n\nFree some RAM before entering S3 so that upon\nresume we can be sure early allocations will succeed.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d3469\n\nSigned-off-by: David Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "e2a5b420f716cd1a46674b1a90389612eced916f",
      "tree": "96f363f2e402d53428c046269514a82856b0cb34",
      "parents": [
        "be91492ca871e58f61b517cfba541095bb60001c"
      ],
      "author": {
        "name": "Alexey Starikovskiy",
        "email": "alexey.y.starikovskiy@intel.com",
        "time": "Fri Mar 18 16:20:46 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Jul 11 23:20:49 2005 -0400"
      },
      "message": "[ACPI] ACPI poweroff fix\n\nRegister an \"acpi\" system device to be notified of shutdown preparation.\nThis depends on CONFIG_PM\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d4041\n\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "5a72e04df5470df0ec646029d31e5528167ab1a7",
      "tree": "11be00c3ed3d8bad775e6eec44078c9f942537b9",
      "parents": [
        "fb69c3907ead36b9e9f41ea6f0d0e0ae10a38a47"
      ],
      "author": {
        "name": "Li Shaohua",
        "email": "shaohua.li@intel.com",
        "time": "Sat Jun 25 14:55:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:32 2005 -0700"
      },
      "message": "[PATCH] suspend/resume SMP support\n\nUsing CPU hotplug to support suspend/resume SMP.  Both S3 and S4 use\ndisable/enable_nonboot_cpus API.  The S4 part is based on Pavel\u0027s original S4\nSMP patch.\n\nSigned-off-by: Li Shaohua\u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "82428b62aa6294ea640c7e920a9224ecaf46db65",
      "tree": "f9e9bfd1f86f739ee16968378057060417f52bb4",
      "parents": [
        "ff0d2f90fdc4b564d47a7c26b16de81a16cfa28e"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon May 09 08:07:00 2005 -0700"
      },
      "committer": {
        "name": "Greg KH",
        "email": "gregkh@suse.de",
        "time": "Tue May 17 14:54:54 2005 -0700"
      },
      "message": "[PATCH] Driver Core: pm diagnostics update, check for errors\n\nThis patch includes various tweaks in the messaging that appears during\nsystem pm state transitions:\n\n  * Warn about certain illegal calls in the device tree, like resuming\n    child before parent or suspending parent before child.  This could\n    happen easily enough through sysfs, or in some cases when drivers\n    use device_pm_set_parent().\n\n  * Be more consistent about dev_dbg() tracing ... do it for resume() and\n    shutdown() too, and never if the driver doesn\u0027t have that method.\n\n  * Say which type of system sleep state is being entered.\n\nExcept for the warnings, these only affect debug messaging.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
