)]}'
{
  "log": [
    {
      "commit": "a9c9b4429df437982d2fbfab1f4b46b01329e9ed",
      "tree": "0270bcf49069839e43b913e1fd718ca8fc7bd451",
      "parents": [
        "f8bb0db8188c7ef9ef08515883dae9f9eb980984"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Feb 25 22:32:37 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 26 20:39:13 2010 +0100"
      },
      "message": "PM / Hibernate: Fix preallocating of memory\n\nThe hibernate memory preallocation code allocates memory to push some\nuser space data out of physical RAM, so that the hibernation image is\nnot too large.  It allocates more memory than necessary for creating\nthe image, so it has to release some pages to make room for\nallocations made while suspending devices and disabling nonboot CPUs,\nor the system will hang due to the lack of free pages to allocate\nfrom.  Unfortunately, the function used for freeing these pages,\nfree_unnecessary_pages(), contains a bug that prevents it from doing\nthe job on all systems without highmem.\n\nFix this problem, which is a regression from the 2.6.30 kernel, by\nusing the right condition for the termination of the loop in\nfree_unnecessary_pages().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-and-tested-by: Alan Jenkins \u003csourcejedi.lkml@googlemail.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "07c3bb5797d0a9a48524cca17ceb95711b48890b",
      "tree": "86e99dbca4c253727c321a98908c2f8e2ead068b",
      "parents": [
        "4cb077d93a57fb8bb64c277ec4ce637823cd76f4"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Thu Feb 11 23:09:08 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 26 20:39:13 2010 +0100"
      },
      "message": "PM / Hibernate: Remove trailing space in message\n\nRemove a trailing space from a message in swsusp_save().\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "3c1596efe167322dae87f8390d36f91ce2d7f936",
      "tree": "b086435695f71312e79986a28a703a23760066ec",
      "parents": [
        "4481374ce88ba8f460c8b89f2572027bd27057d0"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Mon Sep 21 17:03:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:38 2009 -0700"
      },
      "message": "mm: don\u0027t use alloc_bootmem_low() where not strictly needed\n\nSince alloc_bootmem() will never return inaccessible (via virtual\naddressing) memory anyway, using the ..._low() variant only makes sense\nwhen the physical address range of the allocated memory must fulfill\nfurther constraints, espacially since on 64-bits (or more generally in all\ncases where the pools the two variants allocate from are than the full\navailable range.\n\nProbably the use in alloc_tce_table() could also be eliminated (based on\ncode inspection of pci-calgary_64.c), but that seems too risky given I\nknow nothing about that hardware and have no way to test it.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8de0307326be94148436082a9abf365da8e3c66d",
      "tree": "816cffb8eedac9adea9876ded5e587ee15205c9c",
      "parents": [
        "98e73dc5d2dadfcb95305ad71ac9239f4e361870"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jul 22 19:56:10 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM: Trivial fixes\n\nFix the definition of BM_BITS_PER_BLOCK and kerneldoc\ndescription of create_bm_block_list().\n\n[rjw: Added changelog.]\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "98e73dc5d2dadfcb95305ad71ac9239f4e361870",
      "tree": "f6a0b8098b02d2ef8e673ceef34150df55425ce7",
      "parents": [
        "ef4aede3f10d82adef1fb044b565ba5f08f851e0"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Wed Jul 22 00:36:56 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()\n\nUse for_each_populated_zone() instead of for_each_zone() in hibernation\ncode. This fixes a bug on s390, where we allow both config options\nHIBERNATION and MEMORY_HOTPLUG, so that we also have a ZONE_MOVABLE\nhere. We only allow hibernation if no memory hotplug operation was\nperformed, so in fact both features can only be used exclusively, but\nthis way we don\u0027t need 2 differently configured (distribution) kernels.\n\nIf we have an unpopulated ZONE_MOVABLE, we allow hibernation but run\ninto a BUG_ON() in memory_bm_test/set/clear_bit() because hibernation\ncode iterates through all zones, not only the populated zones, in\nseveral places. For example, swsusp_free() does for_each_zone() and\nthen checks for pfn_valid(), which is true even if the zone is not\npopulated, resulting in a BUG_ON() later because the pfn cannot be\nfound in the memory bitmap.\n\nReplacing all occurences of for_each_zone() in hibernation code with\nfor_each_populated_zone() would fix this issue.\n\n[rjw: Rebased on top of linux-next hibernation patches.]\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "ef4aede3f10d82adef1fb044b565ba5f08f851e0",
      "tree": "58566c694aa036e75df401979bd8a85ffa718f18",
      "parents": [
        "64a473cb74a88cb4991edf985d55a266e65292e1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:24:12 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)\n\nWe want to avoid attempting to free too much memory too hard during\nhibernation, so estimate the minimum size of the image to use as the\nlower limit for preallocating memory.\n\nThe approach here is based on the (experimental) observation that we\ncan\u0027t free more page frames than the sum of:\n\n* global_page_state(NR_SLAB_RECLAIMABLE)\n* global_page_state(NR_ACTIVE_ANON)\n* global_page_state(NR_INACTIVE_ANON)\n* global_page_state(NR_ACTIVE_FILE)\n* global_page_state(NR_INACTIVE_FILE)\n\nminus\n\n* global_page_state(NR_FILE_MAPPED)\n\nNamely, if this number is subtracted from the number of saveable\npages in the system, we get a good estimate of the minimum reasonable\nsize of a hibernation image.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "64a473cb74a88cb4991edf985d55a266e65292e1",
      "tree": "173402070f904951c9ec16a55e3f96e75289f14c",
      "parents": [
        "4bb334353ebd821bc8eeabeb019eaac33c7307df"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:24:05 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:58 2009 +0200"
      },
      "message": "PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)\n\nSince the hibernation code is now going to use allocations of memory\nto make enough room for the image, it can also use the page frames\nallocated at this stage as image page frames.  The low-level\nhibernation code needs to be rearranged for this purpose, but it\nallows us to avoid freeing a great number of pages and allocating\nthese same pages once again later, so it generally is worth doing.\n\n[rev. 2: Take highmem into account correctly.]\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4bb334353ebd821bc8eeabeb019eaac33c7307df",
      "tree": "fc827906f10eebaed4c0483b25beaaba70b0b1dc",
      "parents": [
        "e681c9dd62fe8fcc5bba28a3ca3f7dc8be940206"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:23:51 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:58 2009 +0200"
      },
      "message": "PM/Hibernate: Rework shrinking of memory\n\nRework swsusp_shrink_memory() so that it calls shrink_all_memory()\njust once to make some room for the image and then allocates memory\nto apply more pressure to the memory management subsystem, if\nnecessary.\n\nUnfortunately, we don\u0027t seem to be able to drop shrink_all_memory()\nentirely just yet, because that would lead to huge performance\nregressions in some test cases.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\n"
    },
    {
      "commit": "fe419535d82724314bbf1244a0e740e4ea1bd3ae",
      "tree": "ceefd93df91b6325a99d481e79411dc310e3d27e",
      "parents": [
        "c6f37f12197ac3bd2e5a35f2f0e195ae63d437de"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jun 11 23:11:17 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "PM/Hibernate: Move memory shrinking to snapshot.c (rev. 2)\n\nA future patch is going to modify the memory shrinking code so that\nit will make memory allocations to free memory instead of using an\nartificial memory shrinking mechanism for that.  For this purpose it\nis convenient to move swsusp_shrink_memory() from\nkernel/power/swsusp.c to kernel/power/snapshot.c, because the new\nmemory-shrinking code is going to use things that are local to\nkernel/power/snapshot.c .\n\n[rev. 2: Make some functions static and remove their headers from\n kernel/power/power.h]\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ee99c71c59f897436ec65debb99372b3146f9985",
      "tree": "051f1c43b7c7658689d4b2c23b3d8585d6464a89",
      "parents": [
        "a6dc60f8975ad96d162915e07703a4439c80dcf0"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Mar 31 15:19:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:11 2009 -0700"
      },
      "message": "mm: introduce for_each_populated_zone() macro\n\nImpact: cleanup\n\nIn almost cases, for_each_zone() is used with populated_zone().  It\u0027s\nbecause almost function doesn\u0027t need memoryless node information.\nTherefore, for_each_populated_zone() can help to make code simplify.\n\nThis patch has no functional change.\n\n[akpm@linux-foundation.org: small cleanup]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "baa5835df10254762aedb6cb23a9c1508f969736",
      "tree": "a8f8b1117aa752fa2fad457e972de923eb4c1da6",
      "parents": [
        "846705deb059c352cc0e5806d5964f815b8c6d98"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Dec 08 00:52:49 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Dec 19 04:40:35 2008 -0500"
      },
      "message": "Hibernate: Replace unnecessary evaluation of pfn_to_page()\n\nReplace one evaluation of pfn_to_page() in copy_data_pages() with\nthe value of a local variable containing the right number already.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "846705deb059c352cc0e5806d5964f815b8c6d98",
      "tree": "50a8845b1449fe99144358cef6e04feab0941288",
      "parents": [
        "69643279a88dea000ac2f858091d0e365f778245"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Nov 26 18:00:24 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Dec 19 04:40:35 2008 -0500"
      },
      "message": "Hibernate: Take overlapping zones into account (rev. 2)\n\nIt has been requested to make hibernation work with memory\nhotplugging enabled and for this purpose the hibernation code has to\nbe reworked to take the possible overlapping of zones into account.\nThus, rework the hibernation memory bitmaps code to prevent\nduplication of PFNs from occuring and add checks to make sure that\none page frame will not be marked as saveable many times.\n\nAdditionally, use list.h lists instead of open-coded lists to\nimplement the memory bitmaps.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "69643279a88dea000ac2f858091d0e365f778245",
      "tree": "c6b9a678ccfe9a4e22f747cb05b1bcf789e1b8d0",
      "parents": [
        "ba84ed9546e91348fdf3ff2bff859b0ee53b407a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 11 21:32:44 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Dec 19 04:40:35 2008 -0500"
      },
      "message": "Hibernate: Do not oops on resume if image data are incorrect\n\nDuring resume from hibernation using the userland interface image\ndata are being passed from the used space process to the kernel.\nThese data need not be valid, but currently the kernel sometimes\noopses if it gets invalid image data, which is wrong.  Make the\nkernel return error codes to the user space in such cases.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "0d83304c7e7bd3b05be90281b3a47841bc8f057a",
      "tree": "148e2dcfbbe385356af87629b59e71262adc68ce",
      "parents": [
        "8111d1b552349921aae1acf73e4e8cea98e80970"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Jul 23 21:28:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:23 2008 -0700"
      },
      "message": "pm: hibernation: simplify memory bitmap\n\nThis patch simplifies the memory bitmap manipulations.\n\n- remove the member size in struct bm_block\n\nIt is not necessary for struct bm_block to have the number of bit chunks that\ncan be calculated by using end_pfn and start_pfn.\n\n- use find_next_bit() for memory_bm_next_pfn\n\nNo need to invent the bitmap library only for the memory bitmap.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\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": "a82f7119fd940c1505fc9fdf93d835fa52bc075d",
      "tree": "e8fc2aaa6dc73da9dc2626aa6d239bdcf8c9d44d",
      "parents": [
        "baadac8b10c5ac15ce3d26b68fa266c8889b163f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 12 00:34:57 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Mar 11 23:15:55 2008 -0400"
      },
      "message": "Hibernation: Fix mark_nosave_pages()\n\nThere is a problem in the hibernation code that triggers on some NUMA\nsystems on which pfn_valid() returns \u0027true\u0027 for some PFNs that don\u0027t\nbelong to any zone.  Namely, there is a BUG_ON() in\nmemory_bm_find_bit() that triggers for PFNs not belonging to any\nzone and passing the pfn_valid() test.  On the affected systems it\ntriggers when we mark PFNs reported by the platform as not saveable,\nbecause the PFNs in question belong to a region mapped directly using\niorepam() (i.e. the ACPI data area) and they pass the pfn_valid()\ntest.\n\nModify memory_bm_find_bit() so that it returns an error if given PFN\ndoesn\u0027t belong to any zone instead of crashing the kernel and ignore\nthe result returned by it in mark_nosave_pages(), while marking the\n\"nosave\" memory regions.\n\nThis doesn\u0027t affect the hibernation functionality, as we won\u0027t touch\nthe PFNs in question anyway.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9966 .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "8a235efad548abd2ab5ebea45a9ffa750c814375",
      "tree": "9b8c6c1fa3d2e28d9bb198d7019cba8883d5299e",
      "parents": [
        "e80af3a8dbbbf431b2070cc760699f01c5a6ac69"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 20 01:47:44 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 21 02:15:28 2008 -0500"
      },
      "message": "Hibernation: Handle DEBUG_PAGEALLOC on x86\n\nMake hibernation work with CONFIG_DEBUG_PAGEALLOC set on x86, by\nchecking if the pages to be copied are marked as present in the\nkernel mapping and temporarily marking them as present if that\u0027s not\nthe case.  No functional modifications are introduced if\nCONFIG_DEBUG_PAGEALLOC is unset.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9f8f2172537de7af0b0fbd33502d18d52b1339bc",
      "tree": "273c86583ed0295059c5526d3bd6927520a20add",
      "parents": [
        "e2848a0efedef4dad52d1334d37f8719cd6268fd"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:29:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:17 2008 -0800"
      },
      "message": "Page allocator: clean up pcp draining functions\n\n- Add comments explaing how drain_pages() works.\n\n- Eliminate useless functions\n\n- Rename drain_all_local_pages to drain_all_pages(). It does drain\n  all pages not only those of the local processor.\n\n- Eliminate useless interrupt off / on sequences. drain_pages()\n  disables interrupts on its own. The execution thread is\n  pinned to processor by the caller. So there is no need to\n  disable interrupts.\n\n- Put drain_all_pages() declaration in gfp.h and remove the\n  declarations from suspend.h and from mm/memory_hotplug.c\n\n- Make software suspend call drain_all_pages(). The draining\n  of processor local pages is may not the right approach if\n  software suspend wants to support SMP. If they call drain_all_pages\n  then we can make drain_pages() static.\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Daniel Walker \u003cdwalker@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23976728a48c3b76d34e17ead19addd52b3a280e",
      "tree": "964eb95ae9dccb179165649c7ea631d96b23bc91",
      "parents": [
        "465d2b477f6a0ffe01242561a93e7bf81d67c776"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:09:43 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Hibernation: Update messages\n\nMake hibernation messages start with one common prefix \"PM: \" and use\nthe word \"hibernation\" in the messages as a synonym of \"suspend to\ndisk\".\n\nTurn some KERN_INFO messages into debug ones.\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": "2f8ed1c60b06b797bf79a1dc540f0bed8c9d75a0",
      "tree": "bf9157cf84a53b0ee74ba1e2b5bd9417589b9226",
      "parents": [
        "964756a52f4cf0417d515b7f01eec69db8cb0fe2"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Nov 19 23:36:20 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Move function prototypes to header\n\nThis patch moves the prototypes of count_highmem_pages() and\nrestore_highmem() to kernel/power/power.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\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": "af508b34d27e3341287d89e0eae6752fdb1b873f",
      "tree": "b5d2a337d78dc25aadb02d481443d484e0dd368c",
      "parents": [
        "aa6299926950c8dfe2fea638276cad6def092bc9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 00:59:31 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:52 2008 -0500"
      },
      "message": "Hibernation: Introduce SNAPSHOT_GET_IMAGE_SIZE ioctl\n\nAdd a new ioctl, SNAPSHOT_GET_IMAGE_SIZE, returning the size of the (just\ncreated) hibernation image, to the hibernation userland interface.\n\nThis ioctl is necessary so that the userland utilities using the interface need\nnot access the hibernation image header, owned by the kernel, in order to obtain\nthe size of the image.\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": "df7c487250b17aa0caeee7d85f120330f1d31355",
      "tree": "bce0b3c04706ba89e410a22cc9c370086e931693",
      "parents": [
        "963151297328eea39933bda23959ce5319e99fb7"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Sat Oct 20 02:26:04 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 20 02:26:04 2007 +0200"
      },
      "message": "trivial copy_data_pages() tidy up\n\nChange the loop style of copy_data_pages() to remove a duplicate condition.\n\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "d307c4a8e826c44f9633bd3f7e60d0491e7d885a",
      "tree": "1e381840363594557c5e31b1bcdc3f491d474039",
      "parents": [
        "50a1efe14fd56a273cdbe53bf1c7fc12099d2e1a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:19 2007 -0700"
      },
      "message": "Hibernation: Arbitrary boot kernel support - generic code\n\nAdd the bits needed for supporting arbitrary boot kernels to the common\nhibernation code.\n\nTo support arbitrary boot kernels, make it possible to replace the \u0027struct\nnew_utsname\u0027 and the kernel version in the hibernation image header by some\narchitecture specific data that will be used to verify if the image is valid\nand to restore the image.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c5a69adff920ddf138c3ea9886574b195d9e3d52",
      "tree": "446b3776c9f4ba3df5c22880adfc3395400fa220",
      "parents": [
        "a75de1b3799f8933d6d2b64bdf31194368ec98ab"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Aug 10 13:00:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Aug 11 15:47:40 2007 -0700"
      },
      "message": "Hibernation: do not try to mark invalid PFNs as nosave\n\nOn some systems some PFNs reported by the early initialization code as\n\u0027nosave\u0027 may be invalid.  If we try to set the corresponding bits in the\nhibernation bitmap, BUG_ON() in memory_bm_find_bit() will be triggered and\nthe system won\u0027t be able to boot (cf.\nhttps://bugzilla.novell.com/show_bug.cgi?id\u003d296242).\n\nPrevent this from happening by verifying if the \u0027nosave\u0027 PFNs are valid in\nmark_nosave_pages().\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": "aabded9c3aab5160ae2ca3dd1fa0fa37f3d510e4",
      "tree": "8544d546735bcb975b8dec296eb9b6dc6531fb2a",
      "parents": [
        "9a9136e270af14da506f66bcafcc506b86a86498",
        "f1a1eb299a8422c3e8d41753095bec44b2493398"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:56:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:56:01 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  [POWERPC] Further fixes for the removal of 4level-fixup hack from ppc32\n  [POWERPC] EEH: log all PCI-X and PCI-E AER registers\n  [POWERPC] EEH: capture and log pci state on error\n  [POWERPC] EEH: Split up long error msg\n  [POWERPC] EEH: log error only after driver notification.\n  [POWERPC] fsl_soc: Make mac_addr const in fs_enet_of_init().\n  [POWERPC] Don\u0027t use SLAB/SLUB for PTE pages\n  [POWERPC] Spufs support for 64K LS mappings on 4K kernels\n  [POWERPC] Add ability to 4K kernel to hash in 64K pages\n  [POWERPC] Introduce address space \"slices\"\n  [POWERPC] Small fixes \u0026 cleanups in segment page size demotion\n  [POWERPC] iSeries: Make HVC_ISERIES the default\n  [POWERPC] iSeries: suppress build warning in lparmap.c\n  [POWERPC] Mark pages that don\u0027t exist as nosave\n  [POWERPC] swsusp: Introduce register_nosave_region_late\n"
    },
    {
      "commit": "d60846c4d16f9518b098b905af2b87cb6bf6dc42",
      "tree": "c8531fd981874f8a4e388079ca9edaf8ff27d63f",
      "parents": [
        "ace4bd29c248b51db3f8a97e9b59740dc6caa074"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed May 09 02:33:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:48 2007 -0700"
      },
      "message": "swsusp: clean up printk\n\nRemove an inexplicable /\n\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": "940d67f6b95166475ff6e600ef7658e1cd441278",
      "tree": "390f7e30228ae2f22d0009831f80fb909df1e177",
      "parents": [
        "de372ecd80a42c4fb485c7232475301a18d05184"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue May 08 19:23:49 2007 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 09 16:34:56 2007 +1000"
      },
      "message": "[POWERPC] swsusp: Introduce register_nosave_region_late\n\nThis patch introduces a new register_nosave_region_late function that\ncan be called from initcalls when register_nosave_region can no longer\nbe used because it uses bootmem.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0709db6072c2e799eba1aa61bd19e0d7f38aa2cd",
      "tree": "e348c73adbfdcb46b05b23f36dc420ecdd62ca8a",
      "parents": [
        "1525a2ad76f991eba9755f75c9b6d4d97abad25e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 06 14:50:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:59 2007 -0700"
      },
      "message": "swsusp: use GFP_KERNEL for creating basic data structures\n\nMake swsusp call create_basic_memory_bitmaps() before processes are frozen, so\nthat GFP_KERNEL allocations can be made in it.  Additionally, ensure that the\nswsusp\u0027s userland interface won\u0027t be used while either pm_suspend_disk() or\nsoftware_resume() is being executed.\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": "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": "7be9823491ecbaf9700d7d3502cb4b4dd0ed868a",
      "tree": "10f606c59837d851376823dae5d8faf50a51bde8",
      "parents": [
        "433ecb4ab312f873870b67ee374502e84f6dcf92"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 06 14:50:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:58 2007 -0700"
      },
      "message": "swsusp: use inline functions for changing page flags\n\nReplace direct invocations of SetPageNosave(), SetPageNosaveFree() etc.  with\ncalls to inline functions that can be changed in subsequent patches without\nmodifying the code calling them.\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": "49c3df6aaa6a51071fc135273d1a2515d019099f",
      "tree": "cbd2fb611d14c9c859f7f417dfafae36ebebe29b",
      "parents": [
        "cfd243d4af7c7f8f52f5cb99d3932d9074b039ff"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Wed May 02 19:27:07 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:07 2007 +0200"
      },
      "message": "[PATCH] x86: Move swsusp __pa() dependent code to arch portion\n\no __pa() should be used only on kernel linearly mapped virtual addresses\n  and not on kernel text and data addresses.\n\no Hibernation code needs to determine the physical address associated\n  with kernel symbol to mark a section boundary which contains pages which\n  don\u0027t have to be saved and restored during hibernate/resume operation.\n\no Move this piece of code in arch dependent section. So that architectures\n  which don\u0027t have kernel text/data mapped into kernel linearly mapped\n  region can come up with their own ways of determining physical addresses\n  associated with a kernel text.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "d23ad42324cc4378132e51f2fc5c9ba6cbe75182",
      "tree": "6844416befb3988e432e8f422f3a369e2f760d39",
      "parents": [
        "c878538598d1e7ab41ecc0de8894e34e2fdef630"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sat Feb 10 01:43:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:17 2007 -0800"
      },
      "message": "[PATCH] Use ZVC for free_pages\n\nThis is again simplifies some of the VM counter calculations through the use\nof the ZVC consolidated counters.\n\n[michal.k.k.piotrowski@gmail.com: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Michal Piotrowski \u003cmichal.k.k.piotrowski@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59a493350e7aefff7e262efa39e017517b31b8e8",
      "tree": "c707e294afd5f6b015844257a044c5f62fef7025",
      "parents": [
        "5b6d15de2d4c8149902a680a6cd1d3b26cd2e828"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Fix labels\n\nMove all labels in the swsusp code to the second column, so that they won\u0027t\nfool diff -p.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5b6d15de2d4c8149902a680a6cd1d3b26cd2e828",
      "tree": "b9dcc80d995246a13f0c8fe3c21e45e561d1bcb1",
      "parents": [
        "11b2ce2ba90f801e2a5ebba4e6b7da72d87f2b13"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Fix coding style in suspend.c\n\nFix coding style in suspend.c.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8357376d3df21b7d6f857931a57ac50da9c66e26",
      "tree": "daf2c369e9b79d24c1666323b3ae75189e482a4a",
      "parents": [
        "bf73bae6ba0dc4bd4f1e570feb34a06b72725af6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: Improve handling of highmem\n\nCurrently swsusp saves the contents of highmem pages by copying them to the\nnormal zone which is quite inefficient (eg.  it requires two normal pages\nto be used for saving one highmem page).  This may be improved by using\nhighmem for saving the contents of saveable highmem pages.\n\nNamely, during the suspend phase of the suspend-resume cycle we try to\nallocate as many free highmem pages as there are saveable highmem pages.\nIf there are not enough highmem image pages to store the contents of all of\nthe saveable highmem pages, some of them will be stored in the \"normal\"\nmemory.  Next, we allocate as many free \"normal\" pages as needed to store\nthe (remaining) image data.  We use a memory bitmap to mark the allocated\nfree pages (ie.  highmem as well as \"normal\" image pages).\n\nNow, we use another memory bitmap to mark all of the saveable pages\n(highmem as well as \"normal\") and the contents of the saveable pages are\ncopied into the image pages.  Then, the second bitmap is used to save the\npfns corresponding to the saveable pages and the first one is used to save\ntheir data.\n\nDuring the resume phase the pfns of the pages that were saveable during the\nsuspend are loaded from the image and used to mark the \"unsafe\" page\nframes.  Next, we try to allocate as many free highmem page frames as to\nload all of the image data that had been in the highmem before the suspend\nand we allocate so many free \"normal\" page frames that the total number of\nallocated free pages (highmem and \"normal\") is equal to the size of the\nimage.  While doing this we have to make sure that there will be some extra\nfree \"normal\" and \"safe\" page frames for two lists of PBEs constructed\nlater.\n\nNow, the image data are loaded, if possible, into their \"original\" page\nframes.  The image data that cannot be written into their \"original\" page\nframes are loaded into \"safe\" page frames and their \"original\" kernel\nvirtual addresses, as well as the addresses of the \"safe\" pages containing\ntheir copies, are stored in one of two lists of PBEs.\n\nOne list of PBEs is for the copies of \"normal\" suspend pages (ie.  \"normal\"\npages that were saveable during the suspend) and it is used in the same way\nas previously (ie.  by the architecture-dependent parts of swsusp).  The\nother list of PBEs is for the copies of highmem suspend pages.  The pages\nin this list are restored (in a reversible way) right before the\narch-dependent code is called.\n\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": "96b644bdec977b97a45133e5b4466ba47a7a5e65",
      "tree": "4c6d1f0d54746aa06132628379b2a0efec5e1701",
      "parents": [
        "e9ff3990f08e9a0c2839cc22808b01732ea5b3e4"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: use init_utsname when appropriate\n\nIn some places, particularly drivers and __init code, the init utsns is the\nappropriate one to use.  This patch replaces those with a the init_utsname\nhelper.\n\nChanges: Removed several uses of init_utsname().  Hope I picked all the\n\tright ones in net/ipv4/ipconfig.c.  These are now changed to\n\tutsname() (the per-process namespace utsname) in the previous\n\tpatch (2/7)\n\n[akpm@osdl.org: CIFS fix]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "940864ddabdb180e02041c4dcd46ba6f9eee732f",
      "tree": "cee174e45717dce64f7108a1c74182e691c1c8c2",
      "parents": [
        "b788db79896ef2a5817b9395ad63573b254a6d93"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:49:02 2006 -0700"
      },
      "message": "[PATCH] swsusp: Use memory bitmaps during resume\n\nMake swsusp use memory bitmaps to store its internal information during the\nresume phase of the suspend-resume cycle.\n\nIf the pfns of saveable pages are saved during the suspend phase instead of\nthe kernel virtual addresses of these pages, we can use them during the resume\nphase directly to set the corresponding bits in a memory bitmap.  Then, this\nbitmap is used to mark the page frames corresponding to the pages that were\nsaveable before the suspend (aka \"unsafe\" page frames).\n\nNext, we allocate as many page frames as needed to store the entire suspend\nimage and make sure that there will be some extra free \"safe\" page frames for\nthe list of PBEs constructed later.  Subsequently, the image is loaded and, if\npossible, the data loaded from it are written into their \"original\" page\nframes (ie.  the ones they had occupied before the suspend).\n\nThe image data that cannot be written into their \"original\" page frames are\nloaded into \"safe\" page frames and their \"original\" kernel virtual addresses,\nas well as the addresses of the \"safe\" pages containing their copies, are\nstored in a list of PBEs.  Finally, the list of PBEs is used to copy the\nremaining image data into their \"original\" page frames (this is done\natomically, by the architecture-dependent parts of swsusp).\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": "b788db79896ef2a5817b9395ad63573b254a6d93",
      "tree": "2ed150c373a6e0ceafb30b5d10ec5eacad39c6c8",
      "parents": [
        "0bcd888d64684f896ffa70c1d16a42b00753c184"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:49:02 2006 -0700"
      },
      "message": "[PATCH] swsusp: Introduce memory bitmaps\n\nIntroduce the memory bitmap data structure and make swsusp use in the suspend\nphase.\n\nThe current swsusp\u0027s internal data structure is not very efficient from the\nmemory usage point of view, so it seems reasonable to replace it with a data\nstructure that will require less memory, such as a pair of bitmaps.\n\nThe idea is to use bitmaps that may be allocated as sets of individual pages,\nso that we can avoid making allocations of order greater than 0.  For this\nreason the memory bitmap structure consists of several linked lists of objects\nthat contain pointers to memory pages with the actual bitmap data.  Still, for\na typical system all of these lists fit in a single page, so it\u0027s reasonable\nto introduce an additional mechanism allowing us to allocate all of them\nefficiently without sacrificing the generality of the design.  This is done\nwith the help of the chain_allocator structure and associated functions.\n\nWe need to use two memory bitmaps during the suspend phase of the\nsuspend-resume cycle.  One of them is necessary for marking the saveable\npages, and the second is used to mark the pages in which to store the copies\nof them (aka image pages).\n\nFirst, the bitmaps are created and we allocate as many image pages as needed\n(the corresponding bits in the second bitmap are set as soon as the pages are\nallocated).  Second, the bits corresponding to the saveable pages are set in\nthe first bitmap and the saveable pages are copied to the image pages.\nFinally, the first bitmap is used to save the kernel virtual addresses of the\nsaveable pages and the second one is used to save the contents of the image\npages.\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": "0bcd888d64684f896ffa70c1d16a42b00753c184",
      "tree": "17c26a6d1b8236f7d4ebb8bc3475550ca961cd57",
      "parents": [
        "75534b50cc658e951bcb213c2763c81e9f7b0b48"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:49:02 2006 -0700"
      },
      "message": "[PATCH] swsusp: Introduce some helpful constants\n\nIntroduce some constants that hopefully will help improve the readability of\ncode in kernel/power/snapshot.c.\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": "75534b50cc658e951bcb213c2763c81e9f7b0b48",
      "tree": "1686cfe1f88bb9cd8ce0d34477b2eaac83709703",
      "parents": [
        "dcbb5a54f6e3984efa24772394f2225b11495c55"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:49:01 2006 -0700"
      },
      "message": "[PATCH] Change the name of pagedir_nosave\n\nThe name of the pagedir_nosave variable does not make sense any more, so it\nseems reasonable to change it to something more meaningful.\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": "cd560bb2f9e2cd451bb3942af43da19632ba4a8e",
      "tree": "bc533af52cc8686f53694cd60a974f7fd3bd80fc",
      "parents": [
        "f6143aa60ed71e58578bc92cc64d98158a694d99"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: Fix alloc_pagedir\n\nGet rid of the FIXME in kernel/power/snapshot.c#alloc_pagedir() and\nsimplify the functions called by it.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "f6143aa60ed71e58578bc92cc64d98158a694d99",
      "tree": "aa3ccc4327ecf950abb15800e3d008cde6dc26f3",
      "parents": [
        "f623f0db8e6aa86a37be86167e4ff478821a9f4f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: Reorder memory-allocating functions\n\nMove some functions in kernel/power/snapshot.c to a better place (in the\nsame file) and introduce free_image_page() (will be necessary in the\nfuture).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "f623f0db8e6aa86a37be86167e4ff478821a9f4f",
      "tree": "fab12e8dc57d14101e9e512ba708b83f74551dd9",
      "parents": [
        "e3920fb42c8ddfe63befb54d95c0e13eabacea9b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: Fix mark_free_pages\n\nClean up mm/page_alloc.c#mark_free_pages() and make it avoid clearing\nPageNosaveFree for PageNosave pages.  This allows us to get rid of an ugly\nhack in kernel/power/snapshot.c#copy_data_pages().\n\nAdditionally, the page-copying loop in copy_data_pages() is moved to an\ninline function.\n\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": "fb13a28b0f5ada60861868c4fa48a12bd0cb8dea",
      "tree": "e0a4611621f2d5abc94f0b0ea5a2c41f2962e5e1",
      "parents": [
        "ae83c5eef59ffe6eb61110b8c8fd1ea3e0881712"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:58 2006 -0700"
      },
      "message": "[PATCH] swsusp: struct snapshot_handle cleanup\n\nAdd comments describing struct snapshot_handle and its members, change the\nconfusing name of its member \u0027page\u0027 to \u0027cur\u0027.\n\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": "ae83c5eef59ffe6eb61110b8c8fd1ea3e0881712",
      "tree": "731e4d382ff408387624df1fc59e82ab50436f50",
      "parents": [
        "546e0d271941dd1ff6961e2a1f7eac75f1fc277e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:58 2006 -0700"
      },
      "message": "[PATCH] swsusp: clean up browsing of pfns\n\nClean up some loops over pfns for each zone in snapshot.c: reduce the\nnumber of additions to perform, rework detection of saveable pages and make\nthe code a bit less difficult to understand, hopefully.\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": "546e0d271941dd1ff6961e2a1f7eac75f1fc277e",
      "tree": "60c74a9598f7cb4622c1b6acd25df5df67284353",
      "parents": [
        "8c002494b55119a3fd1dddee83b4fb75cfda47e5"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Sep 25 23:32:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:58 2006 -0700"
      },
      "message": "[PATCH] swsusp: read speedup\n\nImplement async reads for swsusp resuming.\n\nCrufty old PIII testbox:\n\t15.7 MB/s -\u003e 20.3 MB/s\n\nSony Vaio:\n\t14.6 MB/s -\u003e 33.3 MB/s\n\nI didn\u0027t implement the post-resume bio_set_pages_dirty().  I don\u0027t really\nunderstand why resume needs to run set_page_dirty() against these pages.\n\nIt might be a worry that this code modifies PG_Uptodate, PG_Error and\nPG_Locked against the image pages.  Can this possibly affect the resumed-into\nkernel?  Hopefully not, if we\u0027re atomically restoring its mem_map?\n\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Laurent Riffard \u003claurent.riffard@free.fr\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95018f7c94cbe4e78fc014b6ce52004714c06e2a",
      "tree": "2f8434103bc670813120e6d64b1726301a6021ac",
      "parents": [
        "7ba1c6c88c945b065a75094830f6b76f414e42ad"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 10 04:45:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:22 2006 -0700"
      },
      "message": "[PATCH] swsusp: do not use memcpy for snapshotting memory\n\nswsusp should not use memcpy for snapshotting memory, because on some\narchitectures memcpy may increase preempt_count (i386 does this when\nCONFIG_X86_USE_3DNOW is set).  Then, as a result, wrong value of preempt_count\nis stored in the image.\n\nReplace memcpy in copy_data_pages with an open-coded loop.\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": "3448097fccdce4ea8f0fcad4f37f502a8cd72e68",
      "tree": "583ee97128a9e2657d5bf73def841c460371804a",
      "parents": [
        "5503967307f3fa443f5770a4df5ea4fbe9fb3917"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 18:41:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 18:41:00 2006 -0700"
      },
      "message": "Revert \"swsusp special saveable pages support\" commits\n\nThis reverts commits\n\n  3e3318dee0878d42ed62a19c292a2ac284135db3 [PATCH] swsusp: x86_64 mark special saveable/unsaveable pages\n  b6370d96e09944c6e3ae8d5743ca8a8ab1f79f6c [PATCH] swsusp: i386 mark special saveable/unsaveable pages\n  ce4ab0012b32c1a4a1d6e934aeb73bf3151c48d9 [PATCH] swsusp: add architecture special saveable pages support\n\nbecause not only do they apparently cause page faults on x86, the\ninfrastructure doesn\u0027t compile on powerpc.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "968808b8956e332e556b1eae9b4f7df77518f53b",
      "tree": "e90598c5640df24a250aa0beb3e526f2571ed6e2",
      "parents": [
        "7bff24e255ee11ecbc304315a252fcbd84f9ffce"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 23 02:04:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:00 2006 -0700"
      },
      "message": "[PATCH] swsusp: use less memory during resume\n\nMake swsusp allocate only as much memory as needed to store the image data\nand metadata during resume.\n\nWithout this patch swsusp additionally allocates many page frames that will\nconflict with the \"original\" locations of the image data and are considered\nas \"unsafe\", treating them as \"eaten\" pages (ie.  allocated but unusable).\n\nThe patch makes swsusp allocate as many pages as it\u0027ll need to store the\ndata read from the image in one shot, creating a list of allocated \"safe\"\npages, and use the observation that all pages allocated by it are marked\nwith the PG_nosave and PG_nosave_free flags set.   Namely, when it\u0027s about\nto load an image page, swsusp can check whether the page frame\ncorresponding to the \"original\" location of this page has been allocated\n(ie.  if the page frame has the PG_nosave and PG_nosave_free flags set) and\nif so, it can load the page directly into this page frame.   Otherwise it\nuses an allocated \"safe\" page from the list to store the data that will be\ncopied to their \"original\" location later on.\n\nThis allows us to save many page copyings and page allocations during\nresume and in the future it may allow us to load images greater than 50% of\nthe normal zone.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "7bff24e255ee11ecbc304315a252fcbd84f9ffce",
      "tree": "23397d27bad855d8b46da23ffc3d9ae5cc0c596c",
      "parents": [
        "a938c356d5b007fe6d28251c0ddbf6c11d0d92b5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 23 02:04:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:59 2006 -0700"
      },
      "message": "[PATCH] kernel/power/snapshot.c: cleanups\n\n- make needlessly global functions static\n- make dummy functions static inline\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\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": "ce4ab0012b32c1a4a1d6e934aeb73bf3151c48d9",
      "tree": "83b5ba44e93eeb8b72fe14028ac25943f77844fe",
      "parents": [
        "82dcaafc92fdfbe2c1d6c50b9f5e17d533caf950"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Jun 23 02:04:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: add architecture special saveable pages support\n\n1. Add architecture specific pages save/restore support.  Next two patches\n   will use this to save/restore \u0027ACPI NVS\u0027 pages.\n\n2. Allow reserved pages \u0027nosave\u0027.  This could avoid save/restore BIOS\n   reserved pages.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a3b98a422a20dedf3a2a40c44892d6e7e665157",
      "tree": "24387ffda32d2d7a8582116cd39654bf1fac19fe",
      "parents": [
        "8db08de4f6ae24e90aedf5125b5ddd52ffff15f4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 18 22:20:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 19 09:13:49 2006 -0700"
      },
      "message": "[PATCH] swsusp: prevent possible image corruption on resume\n\nThe function free_pagedir() used by swsusp for freeing its internal data\nstructures clears the PG_nosave and PG_nosave_free flags for each page\nbeing freed.\n\nHowever, during resume PG_nosave_free set means that the page in\nquestion is \"unsafe\" (ie.  it will be overwritten in the process of\nrestoring the saved system state from the image), so it should not be\nused for the image data.\n\nTherefore free_pagedir() should not clear PG_nosave_free if it\u0027s called\nduring resume (otherwise \"unsafe\" pages freed by it may be used for\nstoring the image data and the data may get corrupted later on).\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": "e4e4d665560c75afb6060cb43bb6738777648ca1",
      "tree": "6ba2593af7c9ad44c3348d7a66daa902b0fd3ecf",
      "parents": [
        "fc558a7496bfab3d29a68953b07a95883fdcfbb1"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Mar 23 03:00:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:08 2006 -0800"
      },
      "message": "[PATCH] swsusp: drain high mem pages\n\nHighmem could be in pcp list as well.\n\nSigned-off-by: Shaohua Li\u003cshaohua.li@intel.com\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": "ce6ed29f3136bc4b3644ecf4091d6390d444f628",
      "tree": "c85e83dd19f6954198721a5a3087aa97075c5f74",
      "parents": [
        "02aaeb9b952f30b1ad6284d5d45be02030f679db"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Thu Mar 23 03:00:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:08 2006 -0800"
      },
      "message": "[PATCH] suspend: make progress printing prettier\n\nCombination of printk/pr_debug led to \u003c7\u003e in the middle of the line, and we\nprinted way too many dots.\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": "6e1819d615f24ce0726a7d0bd3dd0152d7b21654",
      "tree": "abc68747446e8241a1a7103882b9f6b6e24fa274",
      "parents": [
        "543cc27d09643640cbc34189c03a40beb8227aef"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Mar 23 03:00:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:07 2006 -0800"
      },
      "message": "[PATCH] swsusp: userland interface\n\nThis patch introduces a user space interface for swsusp.\n\nThe interface is based on a special character device, called the snapshot\ndevice, that allows user space processes to perform suspend and resume-related\noperations with the help of some ioctls and the read()/write() functions.\n Additionally it allows these processes to allocate free swap pages from a\nselected swap partition, called the resume partition, so that they know which\nsectors of the resume partition are available to them.\n\nThe interface uses the same low-level system memory snapshot-handling\nfunctions that are used by the built-it swap-writing/reading code of swsusp.\n\nThe interface documentation is included in the patch.\n\nThe patch assumes that the major and minor numbers of the snapshot device will\nbe 10 (ie.  misc device) and 231, the registration of which has already been\nrequested.\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": "f577eb30afdc68233f25d4d82b04102129262365",
      "tree": "25d3c2fa8dfbf42fd0d4776a36166736fcc1446a",
      "parents": [
        "2b322ce210aec74ae0d02938d3a01e29fe079469"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Mar 23 02:59:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:07 2006 -0800"
      },
      "message": "[PATCH] swsusp: low level interface\n\nIntroduce the low level interface that can be used for handling the\nsnapshot of the system memory by the in-kernel swap-writing/reading code of\nswsusp and the userland interface code (to be introduced shortly).\n\nAlso change the way in which swsusp records the allocated swap pages and,\nconsequently, simplifies the in-kernel swap-writing/reading code (this is\nnecessary for the userland interface too).  To this end, it introduces two\nhelper functions in mm/swapfile.c, so that the swsusp code does not refer\ndirectly to the swap internals.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c8adb494a6df6b2be8e50a8dafd5bab231df3505",
      "tree": "e72592b1cf94a8018dfebd723870c6d8cf83f0ae",
      "parents": [
        "d1db4ec86c7b1bf5b44d2ed3bf84a4bb53c33b1c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Feb 15 15:17:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 15 15:32:22 2006 -0800"
      },
      "message": "[PATCH] swsusp: nuke noisy message\n\nI get about 88 squillion of these when suspending an old ad450nx server.\n\nCc: Pavel Roskin \u003cproski@gnu.org\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": "e5e2fa7857f6bf46605c77d949fa6698b9b0bc28",
      "tree": "e5d32d980939ce44ee8b60e7f1fd0732760f7607",
      "parents": [
        "72a97e08394a3b2e75481ff680ec2a0591e3cba4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 06 00:14:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:40 2006 -0800"
      },
      "message": "[PATCH] swsusp: fix enough_free_mem\n\nThis patch fixes a problem with the function enough_free_mem() used by\nswsusp to verify if there is a sufficient number of memory pages available\nto it to create and save the suspend image.\n\nNamely, enough_free_mem() uses nr_free_pages() to obtain the number of free\nmemory pages, which is incorrect, because this function returns the total\nnumber of free pages, including free highmem pages, and the highmem pages\ncannot be used by swsusp for storing the image data.\n\nThe patch makes enough_free_mem() avoid counting the free highmem\npages as available to swsusp.\n\nSigned-off-by: 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": "72a97e08394a3b2e75481ff680ec2a0591e3cba4",
      "tree": "d8ba72d6e81ad31ed10876386d3d2067921979e3",
      "parents": [
        "7088a5c00103ef48782d6c359cd12b13a10666e6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 06 00:13:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:40 2006 -0800"
      },
      "message": "[PATCH] swsusp: improve freeing of memory\n\nThis patch makes swsusp free only as much memory as needed to complete the\nsuspend and not as much as possible.   In the most of cases this should speed\nup the suspend and make the system much more responsive after resume,\nespecially if a GUI (eg.  X Windows) is used.\n\nIf needed, the old behavior (ie to free as much memory as possible during\nsuspend) can be restored by unsetting FAST_FREE in power.h\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "7088a5c00103ef48782d6c359cd12b13a10666e6",
      "tree": "b731c8af48e00c0ec88bbe57b6b2a2c1ec20fbde",
      "parents": [
        "f2d97f02961e8b1f8a24befb88ab0e5c886586ff"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 06 00:13:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:40 2006 -0800"
      },
      "message": "[PATCH] swsusp: introduce the swap map structure\n\nThis patch introduces the swap map structure that can be used by swsusp for\nkeeping tracks of data pages written to the swap.   The structure itself is\ndescribed in a comment within the patch.\n\nThe overall idea is to reduce the amount of metadata written to the swap and\nto write and read the image pages sequentially, in a file-alike way.  This\nmakes the swap-handling part of swsusp fairly independent of its\nsnapshot-handling part and will hopefully allow us to completely separate\nthese two parts in the future.\n\nThis patch is needed to remove the suspend image size limit imposed by the\nlimited size of the swsusp_info structure, which is essential for x86-64\nsystems with more than 512 MB of RAM.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "0fbeb5a45dccd493c35a68a5548e6a9d9882a791",
      "tree": "4cf24e2d08bd39d06cbe372376b4d996df8378f4",
      "parents": [
        "ed14b52701e6ef5a5aaf7bdb75932d5ea5dd7387"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 08 21:34:41 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:52 2005 -0800"
      },
      "message": "[PATCH] swsusp: rework swsusp_suspend\n\nThis patch makes only the functions in swsusp.c call functions in snapshot.c\nand not both ways.   It also moves the check for available swap out of\nswsusp_suspend() which is necessary for separating the swap-handling functions\nin swsusp from the core code.\n\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": "ed14b52701e6ef5a5aaf7bdb75932d5ea5dd7387",
      "tree": "d69e6cb3777daab9e7b98aaad5b3a96491044862",
      "parents": [
        "054bd4c18853f3a3851bd97aa90e11022a69dc42"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 08 21:34:40 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:52 2005 -0800"
      },
      "message": "[PATCH] swsusp: simplify pagedir relocation\n\nThis patch simplifies the relocation of the page backup list (aka pagedir)\nduring resume.\n\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": "054bd4c18853f3a3851bd97aa90e11022a69dc42",
      "tree": "6d4aa1416b4837930ed517aa8c6e741ff45e5d9b",
      "parents": [
        "a31751e04ea738acc8042e5aa1a825901aa7b97f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 08 21:34:39 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:52 2005 -0800"
      },
      "message": "[PATCH] swsusp: reduce code duplication\n\nThe changes made by this patch are necessary for the pagedir relocation\nsimplification in the next patch.   Additionally, these changes allow us to\ndrop check_pagedir() and make get_safe_page() be a one-line wrapper around\nalloc_image_page() (get_safe_page() goes to snapshot.c, because\nalloc_image_page() is static and it does not make sense to export it).\n\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": "dc19d507b17135069d9c5d6093d4458dc60e1861",
      "tree": "a5913fbd1185b3af5463a90aca59fe902aba2f73",
      "parents": [
        "36fabc248e5466e3f28897819b0400b5cdbb8dc6"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Mon Nov 07 00:58:40 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:53:29 2005 -0800"
      },
      "message": "[PATCH] swsusp cleanups\n\nThis cleans spaces between * and pointer up, and adds \"int\" in \"unsigned\nint\".\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": "2e32a43efdc8175579cc91e8b620ac331376a437",
      "tree": "fd46c6cf28d437fc53acc72cff03d2d796d834ff",
      "parents": [
        "de491861e1457c31aed6d44d96afb549365ff790"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 15:00:00 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:15 2005 -0800"
      },
      "message": "[PATCH] swsusp: get rid of unnecessary wrapper function\n\nThe following patch merges two functions in a trivial way.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "de491861e1457c31aed6d44d96afb549365ff790",
      "tree": "9480b80bab7d5f2ef141249b70a6beffde0c7599",
      "parents": [
        "96bc7aec20b50761822f96130127b8e31e168af1"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sun Oct 30 14:59:59 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: cleanups\n\nReduce number of ifdefs somehow, and fix whitespace a bit.  No real code\nchanges.\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": "96bc7aec20b50761822f96130127b8e31e168af1",
      "tree": "f1bb9562fcec1764a39b1b01423770d4ddbcc1dc",
      "parents": [
        "2c1b4a5ca48831595979a850f40ced8e7da026f8"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sun Oct 30 14:59:58 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: remove unneccessary includes\n\nCleanup comments and remove unneccessary includes.\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": "2c1b4a5ca48831595979a850f40ced8e7da026f8",
      "tree": "06fe8a400df8c5166c7f47ca2c30a584473f1170",
      "parents": [
        "a0f496517f3e28d651d0cbbcf2d4fb701ed6957e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 14:59:58 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: rework memory freeing on resume\n\nThe following patch makes swsusp use the PG_nosave and PG_nosave_free flags to\nmark pages that should be freed in case of an error during resume.\n\nThis allows us to simplify the code and to use swsusp_free() in all of the\nswsusp\u0027s resume error paths, which makes them actually work.\n\nSigned-off-by: 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": "a0f496517f3e28d651d0cbbcf2d4fb701ed6957e",
      "tree": "39ab8b387061cc5737c542f6cddea7320b82970b",
      "parents": [
        "25761b6eb7b33823bcfff6bfe2a015badcd76fb8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 14:59:57 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: reduce the use of global variables\n\nSigned-off-by: 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": "25761b6eb7b33823bcfff6bfe2a015badcd76fb8",
      "tree": "a25841a3f4c4cf087ce75c0907c00966f19d339a",
      "parents": [
        "351619baf9878731b4272fa10dda0f84f5582241"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 14:59:56 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: move snapshot functionality to separate file\n\nThe following patch moves the functionality of swsusp related to creating and\nhandling the snapshot of memory to a separate file, snapshot.c\n\nThis should enable us to untangle the code in the future and eventually to\nimplement some parts of swsusp.c in the user space.\n\nThe patch does not change the code.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\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"
    }
  ]
}
