)]}'
{
  "log": [
    {
      "commit": "d4220f987cf473c65a342ca69e3eb13dea919a49",
      "tree": "dbb004a9c805d6de3f6e3955398fee1084a29f16",
      "parents": [
        "61cf693159d6a968a7014e24905143f71ed8ddcf",
        "f2c03debdfb387fa2e35cac6382779072b8b9209"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:49 2009 -0800"
      },
      "message": "Merge branch \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6\n\n* \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6: (34 commits)\n  HWPOISON: Remove stray phrase in a comment\n  HWPOISON: Try to allocate migration page on the same node\n  HWPOISON: Don\u0027t do early filtering if filter is disabled\n  HWPOISON: Add a madvise() injector for soft page offlining\n  HWPOISON: Add soft page offline support\n  HWPOISON: Undefine short-hand macros after use to avoid namespace conflict\n  HWPOISON: Use new shake_page in memory_failure\n  HWPOISON: Use correct name for MADV_HWPOISON in documentation\n  HWPOISON: mention HWPoison in Kconfig entry\n  HWPOISON: Use get_user_page_fast in hwpoison madvise\n  HWPOISON: add an interface to switch off/on all the page filters\n  HWPOISON: add memory cgroup filter\n  memcg: add accessor to mem_cgroup.css\n  memcg: rename and export try_get_mem_cgroup_from_page()\n  HWPOISON: add page flags filter\n  mm: export stable page flags\n  HWPOISON: limit hwpoison injector to known page types\n  HWPOISON: add fs/device filters\n  HWPOISON: return 0 to indicate success reliably\n  HWPOISON: make semantics of IGNORED/DELAYED clear\n  ...\n"
    },
    {
      "commit": "facb6011f3993947283fa15d039dacb4ad140230",
      "tree": "c317e401fa7c867e1652879627163331f43085ef",
      "parents": [
        "2326c467df4ff814dc07cf1bdaa1e6e0a9c9f21c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Dec 16 12:20:00 2009 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Dec 16 12:20:00 2009 +0100"
      },
      "message": "HWPOISON: Add soft page offline support\n\nThis is a simpler, gentler variant of memory_failure() for soft page\nofflining controlled from user space.  It doesn\u0027t kill anything, just\ntries to invalidate and if that doesn\u0027t work migrate the\npage away.\n\nThis is useful for predictive failure analysis, where a page has\na high rate of corrected errors, but hasn\u0027t gone bad yet. Instead\nit can be offlined early and avoided.\n\nThe offlining is controlled from sysfs, including a new generic\nentry point for hard page offlining for symmetry too.\n\nWe use the page isolate facility to prevent re-allocation\nrace. Normally this is only used by memory hotplug. To avoid\nraces with memory allocation I am using lock_system_sleep().\nThis avoids the situation where memory hotplug is about\nto isolate a page range and then hwpoison undoes that work.\nThis is a big hammer currently, but the simplest solution\ncurrently.\n\nWhen the page is not free or LRU we try to free pages\nfrom slab and other caches. The slab freeing is currently\nquite dumb and does not try to focus on the specific slab\ncache which might own the page. This could be potentially\nimproved later.\n\nThanks to Fengguang Wu and Haicheng Li for some fixes.\n\n[Added fix from Andrew Morton to adapt to new migrate_pages prototype]\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "d8bed5a4f343d1826153ecf8e7932126c757a21d",
      "tree": "6fab621d5005ed847b24962eb2ca707225ac870b",
      "parents": [
        "33c3374031facf7599c30a1548dfa4c83da87da3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 13 20:48:54 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Dec 15 20:42:06 2009 +0100"
      },
      "message": "PM: rwsem.h need not be included into main.c\n\nIt is not necessary to include \u003clinux/rwsem.h\u003e into\ndrivers/base/power/main.c, so don\u0027t do that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "33c3374031facf7599c30a1548dfa4c83da87da3",
      "tree": "a13c07cf40f4a6d26236c4ec97420f4854f91fca",
      "parents": [
        "f2511774863487e61b56a97da07ebf8dd61d7836"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 13 20:31:12 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Dec 15 20:42:06 2009 +0100"
      },
      "message": "PM: Remove unnecessary goto from device_resume_noirq()\n\nIn device_resume_noirq() there is the \u0027End\u0027 label and the associated\ngoto statement that aren\u0027t strictly necessary, so rework the code to\nget rid of them.  Also modify device_suspend_noirq() so that it looks\ncompletely analogous to device_resume_noirq().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "f2511774863487e61b56a97da07ebf8dd61d7836",
      "tree": "892a238299f4e69e120b037310623e4bae5b690f",
      "parents": [
        "1d531c14d2ed4b24472a4d773f00ed6d1cd34ee7"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Sun Dec 13 20:29:01 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Dec 15 20:42:06 2009 +0100"
      },
      "message": "PM: Add initcall_debug style timing for suspend/resume\n\nIn order to diagnose overall suspend/resume times, we need\nbasic instrumentation to break down the total time into per\ndevice timing, similar to initcall_debug.\n\nThis patch adds the basic timing instrumentation, needed\nfor a scritps/bootgraph.pl equivalent or humans.\nThe bootgraph.pl program is still a work in progress, but\nis far enough along to know that this patch is sufficient.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1d531c14d2ed4b24472a4d773f00ed6d1cd34ee7",
      "tree": "a61fd40d1104c9a02e15baa4496c11e148f20804",
      "parents": [
        "8bea8672edfca7ec5f661cafb218f1205863b343"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sun Dec 13 20:28:30 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Dec 15 20:42:06 2009 +0100"
      },
      "message": "PM: allow for usage_count \u003e 0 in pm_runtime_get()\n\nThis patch (as1308c) fixes __pm_runtime_get().  Currently the routine\nwill resume a device if the prior usage count was 0.  But this isn\u0027t\nright; thanks to pm_runtime_get_noresume() the usage count can be\npositive even while the device is suspended.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "9ae49fab239fb49de92a657c7426271e0793c4e1",
      "tree": "156f78df3db4dbc408f6839febe7adba148c2c9f",
      "parents": [
        "caed0f486e582eeeb6e3546417fd758230fe4ad9"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Dec 14 17:59:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:20 2009 -0800"
      },
      "message": "mm: slab-allocate memory section nodemask for large systems\n\nNodemasks should not be allocated on the stack for large systems (when it\nis larger than 256 bytes) since there is a threat of overflow.\n\nThis patch causes the unregister_mem_sect_under_nodes() nodemask to be\nallocated on the stack for smaller systems and be allocated by slab for\nlarger systems.\n\nGFP_KERNEL is used since remove_memory_block() can block.\n\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Alex Chiang \u003cachiang@hp.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@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": "1830794ae6392ce12d36dbcc5ff52f11298ddab6",
      "tree": "b1ebda5a62d2b8d904840f041fc334fecc274b18",
      "parents": [
        "b9d52dad9447d0db4b52d67d5e9e9d339b5e8302"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Mon Dec 14 17:59:08 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:18 2009 -0800"
      },
      "message": "mm: add numa node symlink for cpu devices in sysfs\n\nYou can discover which CPUs belong to a NUMA node by examining\n/sys/devices/system/node/node#/\n\nHowever, it\u0027s not convenient to go in the other direction, when looking at\n/sys/devices/system/cpu/cpu#/\n\nYes, you can muck about in sysfs, but adding these symlinks makes life a\nlot more convenient.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b9d52dad9447d0db4b52d67d5e9e9d339b5e8302",
      "tree": "a3b58ae9c722e21567429b71dfc9b7abeee409c6",
      "parents": [
        "f8246f3159dfdf97b8b40f9e03e715bafedd22fc"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Mon Dec 14 17:59:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:17 2009 -0800"
      },
      "message": "mm: refactor unregister_cpu_under_node()\n\nBy returning early if the node is not online, we can unindent the\ninteresting code by two levels.\n\nNo functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f8246f3159dfdf97b8b40f9e03e715bafedd22fc",
      "tree": "1e0b87b800a6efbba7c963665c1f129e208a6293",
      "parents": [
        "dee5d0d518defd0337a41f1a504428c9acc87be5"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Mon Dec 14 17:59:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:17 2009 -0800"
      },
      "message": "mm: refactor register_cpu_under_node()\n\nBy returning early if the node is not online, we can unindent the\ninteresting code by one level.\n\nNo functional change.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dee5d0d518defd0337a41f1a504428c9acc87be5",
      "tree": "deb540b5ccc58f0e83114509e17dacb281fc12e5",
      "parents": [
        "d99be1a8ecf377c2c9b3372d36411ad6547bbd4c"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Mon Dec 14 17:59:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:17 2009 -0800"
      },
      "message": "mm: add numa node symlink for memory section in sysfs\n\nCommit c04fc586c (mm: show node to memory section relationship with\nsymlinks in sysfs) created symlinks from nodes to memory sections, e.g.\n\n/sys/devices/system/node/node1/memory135 -\u003e ../../memory/memory135\n\nIf you\u0027re examining the memory section though and are wondering what node\nit might belong to, you can find it by grovelling around in sysfs, but\nit\u0027s a little cumbersome.\n\nAdd a reverse symlink for each memory section that points back to the\nnode to which it belongs.\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39da08cb074cf19cb249832a2a955dfb28837e65",
      "tree": "fded7c1757adb29aa682f86251addc66549b6907",
      "parents": [
        "4faf8d950ec438c49ae4526b897c30f8a2cad741"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Dec 14 17:58:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:13 2009 -0800"
      },
      "message": "hugetlb: offload per node attribute registrations\n\nOffload the registration and unregistration of per node hstate sysfs\nattributes to a worker thread rather than attempt the\nallocation/attachment or detachment/freeing of the attributes in the\ncontext of the memory hotplug handler.\n\nI don\u0027t know that this is absolutely required, but the registration can\nsleep in allocations and other mem hot plug handlers do it this way.  If\nit turns out this is NOT required, we can drop this patch.\n\nN.B.,  Only tested build, boot, libhugetlbfs regression.\n       i.e., no memory hotplug testing.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4faf8d950ec438c49ae4526b897c30f8a2cad741",
      "tree": "2764787c538868e73958e176d46c542008f345c2",
      "parents": [
        "8fe23e057172223fe2048768a4d87ab7de7477bc"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Dec 14 17:58:35 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:13 2009 -0800"
      },
      "message": "hugetlb: handle memory hot-plug events\n\nRegister per node hstate attributes only for nodes with memory.  As\nsuggested by David Rientjes.\n\nWith Memory Hotplug, memory can be added to a memoryless node and a node\nwith memory can become memoryless.  Therefore, add a memory on/off-line\nnotifier callback to [un]register a node\u0027s attributes on transition\nto/from memoryless state.\n\nN.B.,  Only tested build, boot, libhugetlbfs regression.\n       i.e., no memory hotplug testing.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a30523066cde73c1442b76224bb540de9f9b0b0",
      "tree": "57165f74e16def0b74bb6e6e05ec9a6b7bd42403",
      "parents": [
        "4e25b2576efda24c02e2d6b9bcb5965a3f865f33"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Dec 14 17:58:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:12 2009 -0800"
      },
      "message": "hugetlb: add per node hstate attributes\n\nAdd the per huge page size control/query attributes to the per node\nsysdevs:\n\n/sys/devices/system/node/node\u003cID\u003e/hugepages/hugepages-\u003csize\u003e/\n\tnr_hugepages       - r/w\n\tfree_huge_pages    - r/o\n\tsurplus_huge_pages - r/o\n\nThe patch attempts to re-use/share as much of the existing global hstate\nattribute initialization and handling, and the \"nodes_allowed\" constraint\nprocessing as possible.\n\nCalling set_max_huge_pages() with no node indicates a change to global\nhstate parameters.  In this case, any non-default task mempolicy will be\nused to generate the nodes_allowed mask.  A valid node id indicates an\nupdate to that node\u0027s hstate parameters, and the count argument specifies\nthe target count for the specified node.  From this info, we compute the\ntarget global count for the hstate and construct a nodes_allowed node mask\ncontain only the specified node.\n\nSetting the node specific nr_hugepages via the per node attribute\neffectively ignores any task mempolicy or cpuset constraints.\n\nWith this patch:\n\n(me):ls /sys/devices/system/node/node0/hugepages/hugepages-2048kB\n./  ../  free_hugepages  nr_hugepages  surplus_hugepages\n\nStarting from:\nNode 0 HugePages_Total:     0\nNode 0 HugePages_Free:      0\nNode 0 HugePages_Surp:      0\nNode 1 HugePages_Total:     0\nNode 1 HugePages_Free:      0\nNode 1 HugePages_Surp:      0\nNode 2 HugePages_Total:     0\nNode 2 HugePages_Free:      0\nNode 2 HugePages_Surp:      0\nNode 3 HugePages_Total:     0\nNode 3 HugePages_Free:      0\nNode 3 HugePages_Surp:      0\nvm.nr_hugepages \u003d 0\n\nAllocate 16 persistent huge pages on node 2:\n(me):echo 16 \u003e/sys/devices/system/node/node2/hugepages/hugepages-2048kB/nr_hugepages\n\n[Note that this is equivalent to:\n\tnumactl -m 2 hugeadmin --pool-pages-min 2M:+16\n]\n\nYields:\nNode 0 HugePages_Total:     0\nNode 0 HugePages_Free:      0\nNode 0 HugePages_Surp:      0\nNode 1 HugePages_Total:     0\nNode 1 HugePages_Free:      0\nNode 1 HugePages_Surp:      0\nNode 2 HugePages_Total:    16\nNode 2 HugePages_Free:     16\nNode 2 HugePages_Surp:      0\nNode 3 HugePages_Total:     0\nNode 3 HugePages_Free:      0\nNode 3 HugePages_Surp:      0\nvm.nr_hugepages \u003d 16\n\nGlobal controls work as expected--reduce pool to 8 persistent huge pages:\n(me):echo 8 \u003e/sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages\n\nNode 0 HugePages_Total:     0\nNode 0 HugePages_Free:      0\nNode 0 HugePages_Surp:      0\nNode 1 HugePages_Total:     0\nNode 1 HugePages_Free:      0\nNode 1 HugePages_Surp:      0\nNode 2 HugePages_Total:     8\nNode 2 HugePages_Free:      8\nNode 2 HugePages_Surp:      0\nNode 3 HugePages_Total:     0\nNode 3 HugePages_Free:      0\nNode 3 HugePages_Surp:      0\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d0316554d3586cbea60592a41391b5def2553d6f",
      "tree": "5e7418f0bacbc68cec5dfd1541e03eb56870aa02",
      "parents": [
        "fb0bbb92d42d5bd0ab224605444efdfed06d6934",
        "51e99be00ce2713cbb841cedc997cafa6e26c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)\n  m68k: rename global variable vmalloc_end to m68k_vmalloc_end\n  percpu: add missing per_cpu_ptr_to_phys() definition for UP\n  percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n  percpu: make misc percpu symbols unique\n  percpu: make percpu symbols in ia64 unique\n  percpu: make percpu symbols in powerpc unique\n  percpu: make percpu symbols in x86 unique\n  percpu: make percpu symbols in xen unique\n  percpu: make percpu symbols in cpufreq unique\n  percpu: make percpu symbols in oprofile unique\n  percpu: make percpu symbols in tracer unique\n  percpu: make percpu symbols under kernel/ and mm/ unique\n  percpu: remove some sparse warnings\n  percpu: make alloc_percpu() handle array types\n  vmalloc: fix use of non-existent percpu variable in put_cpu_var()\n  this_cpu: Use this_cpu_xx in trace_functions_graph.c\n  this_cpu: Use this_cpu_xx for ftrace\n  this_cpu: Use this_cpu_xx in nmi handling\n  this_cpu: Use this_cpu operations in RCU\n  this_cpu: Use this_cpu ops for VM statistics\n  ...\n\nFix up trivial (famous last words) global per-cpu naming conflicts in\n\tarch/x86/kvm/svm.c\n\tmm/slab.c\n"
    },
    {
      "commit": "09cea96caa59fabab3030c53bd698b9b568d959a",
      "tree": "a991cdc0c887fdcda37f4b751ee98d3db9559f4e",
      "parents": [
        "6eb7365db6f3a4a9d8d9922bb0b800f9cbaad641",
        "e090aa80321b64c3b793f3b047e31ecf1af9538d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 12 14:27:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 12 14:27:24 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (151 commits)\n  powerpc: Fix usage of 64-bit instruction in 32-bit altivec code\n  MAINTAINERS: Add PowerPC patterns\n  powerpc/pseries: Track previous CPPR values to correctly EOI interrupts\n  powerpc/pseries: Correct pseries/dlpar.c build break without CONFIG_SMP\n  powerpc: Make \"intspec\" pointers in irq_host-\u003exlate() const\n  powerpc/8xx: DTLB Miss cleanup\n  powerpc/8xx: Remove DIRTY pte handling in DTLB Error.\n  powerpc/8xx: Start using dcbX instructions in various copy routines\n  powerpc/8xx: Restore _PAGE_WRITETHRU\n  powerpc/8xx: Add missing Guarded setting in DTLB Error.\n  powerpc/8xx: Fixup DAR from buggy dcbX instructions.\n  powerpc/8xx: Tag DAR with 0x00f0 to catch buggy instructions.\n  powerpc/8xx: Update TLB asm so it behaves as linux mm expects.\n  powerpc/8xx: Invalidate non present TLBs\n  powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate\n  pseries/pseries: Add code to online/offline CPUs of a DLPAR node\n  powerpc: stop_this_cpu: remove the cpu from the online map.\n  powerpc/pseries: Add kernel based CPU DLPAR handling\n  sysfs/cpu: Add probe/release files\n  powerpc/pseries: Kernel DLPAR Infrastructure\n  ...\n"
    },
    {
      "commit": "3589972e51fac1e02d0aaa576fa47f568cb94d40",
      "tree": "05e89c751f410a3b54583f948ff9ffc841c333ea",
      "parents": [
        "c60e0504c8e4fa14179d0687d80ef25148dd6dd4"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Dec 04 11:06:57 2009 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:55 2009 -0800"
      },
      "message": "Driver core: fix race in dev_driver_string\n\nThis patch (as1310) works around a race in dev_driver_string().  If\nthe device is unbound while the function is running, dev-\u003edriver might\nbecome NULL after we test it and before we dereference it.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: stable \u003cstable@kernel.org\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "c60e0504c8e4fa14179d0687d80ef25148dd6dd4",
      "tree": "01e8ba58e367cb6bd2ae4ee334265e5bd2800769",
      "parents": [
        "e16acb503b42ef241a9396de7c5a1614c74d8ca6"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@opensource.se",
        "time": "Fri Nov 27 17:38:51 2009 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:55 2009 -0800"
      },
      "message": "Driver Core: Early platform driver buffer\n\nAdd early_platform_init_buffer() support and update the\nearly platform driver code to allow passing parameters\nto the driver on the kernel command line.\n\nearly_platform_init_buffer() simply allows early platform\ndrivers to provide a pointer and length to a memory area\nwhere the remaining part of the kernel command line option\nwill be stored.\n\nNeeded to pass baud rate and other serial port options\nto the reworked early serial console code on SuperH.\n\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "18ef545e47c126abd87c013b762b5fbb574858ce",
      "tree": "f401af6e65f441898e4832878895a182b81a33c4",
      "parents": [
        "9ebfbd45f9d4ee9cd72529cf99e5f300eb398e67"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Nov 04 02:50:28 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:52 2009 -0800"
      },
      "message": "Driver core: Don\u0027t remove kobjects in device_shutdown.\n\ndevice_shutdown is defined to just shutdown the hardware and to not\nclean up any kernel data structures.  Therefore don\u0027t put the kobjects\nfor /sys/dev and /sys/dev/block and /sys/dev/char.\n\nThis ensures we don\u0027t remove /sys/dev/block and /sys/dev/char while\nwe still have symlinks from there to the actual devices.\n\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9ebfbd45f9d4ee9cd72529cf99e5f300eb398e67",
      "tree": "6ad661c4b38d0fad8a88c4a0d28997e9303632f2",
      "parents": [
        "03d673e6af6490371aaf64dfe1f84c658c48b71d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 29 12:36:02 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:52 2009 -0800"
      },
      "message": "firmware_class: make request_firmware_nowait more useful\n\nUnfortunately, one cannot hold on to the struct firmware\nthat request_firmware_nowait() hands off, which is needed\nin some cases. Allow this by requiring the callback to\nfree it (via release_firmware).\n\nAdditionally, give it a gfp_t parameter -- all the current\nusers call it from a GFP_KERNEL context so the GFP_ATOMIC\nisn\u0027t necessary. This also marks an API break which is\nuseful in a sense, although that is obviously not the\nprimary purpose of this change.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: Pavel Roskin \u003cproski@gnu.org\u003e\nCc: Abhay Salunke \u003cabhay_salunke@dell.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "03d673e6af6490371aaf64dfe1f84c658c48b71d",
      "tree": "56c566d65852a24c807b9cda92e660c9a0564c29",
      "parents": [
        "ad72956df2ce83f58be1dc4e503c78c28e414c2c"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Oct 30 12:48:32 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:52 2009 -0800"
      },
      "message": "Driver-Core: devtmpfs - set root directory mode to 0755\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Mark Rosenstand \u003crosenstand@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ad72956df2ce83f58be1dc4e503c78c28e414c2c",
      "tree": "78c250e4e578251a6e09ec24b24c14c9aede6fd8",
      "parents": [
        "015bf43b07158668c2f38af463939afcc6d19403"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:51:37 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:52 2009 -0800"
      },
      "message": "Driver Core: devtmpfs: cleanup node on device creation error\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "015bf43b07158668c2f38af463939afcc6d19403",
      "tree": "eb0b7fd69fbbe304e8fcf1490f1ba9d745d1019c",
      "parents": [
        "073120cc28ad9f6003452c8bb9d15a87b1820201"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:51:26 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:52 2009 -0800"
      },
      "message": "Driver Core: devtmpfs: do not remove non-kernel-created directories\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "073120cc28ad9f6003452c8bb9d15a87b1820201",
      "tree": "e4c523586ad6d77069004d7f51d4ea65a7c507b2",
      "parents": [
        "ed413ae6e7813d3227eef43bc6d84ca4f4fe6b21"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:51:17 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:51 2009 -0800"
      },
      "message": "Driver Core: devtmpfs: use sys_mount()\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ed413ae6e7813d3227eef43bc6d84ca4f4fe6b21",
      "tree": "648580b63fd02a8abd55b1f84171f93c2956dbe5",
      "parents": [
        "0092699643703aefca6af0aa758a73f1624d53be"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:51:06 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:51 2009 -0800"
      },
      "message": "Driver core: devtmpfs: prevent concurrent subdirectory creation and removal\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0092699643703aefca6af0aa758a73f1624d53be",
      "tree": "7d6a4f563f995afea99e9a6b66af974f1bfa7437",
      "parents": [
        "f38506c49dab2751567423865941f32f2ea61c45"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:50:57 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:51 2009 -0800"
      },
      "message": "Driver Core: devtmpfs: ignore umask while setting file mode\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "bcd6acd51f3d4d1ada201e9bc5c40a31d6d80c71",
      "tree": "2f6dffd2d3e4dd67355a224de7e7a960335a92fd",
      "parents": [
        "11c34c7deaeeebcee342cbc35e1bb2a6711b2431",
        "3ff6a468b45b5dfeb0e903e56f4eb27d34b2437c"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Dec 09 17:14:38 2009 +1100"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Dec 09 17:14:38 2009 +1100"
      },
      "message": "Merge commit \u0027origin/master\u0027 into next\n\nConflicts:\n\tinclude/linux/kvm.h\n"
    },
    {
      "commit": "51badebdcf394cc5fd574a524b55b3f6085e5e9c",
      "tree": "2e8173c3995f45a88826d5f453545a2c8dd86621",
      "parents": [
        "b6db63d1a7f0138f348ba7a648df35ac6365988e"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Thu Nov 26 09:59:05 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Dec 09 17:09:36 2009 +1100"
      },
      "message": "powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate\n\nCurrently the cpu-allocation/deallocation process comprises of two steps:\n- Set the indicators and to update the device tree with DLPAR node\n  information.\n\n- Online/offline the allocated/deallocated CPU.\n\nThis is achieved by writing to the sysfs tunables \"probe\" during allocation\nand \"release\" during deallocation.\n\nAt the sametime, the userspace can independently online/offline the CPUs of\nthe system using the sysfs tunable \"online\".\n\nIt is quite possible that when a userspace tool offlines a CPU\nfor the purpose of deallocation and is in the process of updating the device\ntree, some other userspace tool could bring the CPU back online by writing to\nthe \"online\" sysfs tunable thereby causing the deallocate process to fail.\n\nThe solution to this is to serialize writes to the \"probe/release\" sysfs\ntunable with the writes to the \"online\" sysfs tunable.\n\nThis patch employs a mutex to provide this serialization, which is a no-op on\nall architectures except PPC_PSERIES\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "12633e803a2a556f6469e0933d08233d0844a2d9",
      "tree": "d32e3e32c163a57c9681009f5ea965088d9e4579",
      "parents": [
        "ab519a011caa5ec47d992cb8a4fc8e7af9b9e3f8"
      ],
      "author": {
        "name": "Nathan Fontenot",
        "email": "nfont@austin.ibm.com",
        "time": "Wed Nov 25 17:23:25 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Dec 09 17:09:33 2009 +1100"
      },
      "message": "sysfs/cpu: Add probe/release files\n\nVersion 3 of this patch is updated with documentation added to\nDocumentation/ABI.  There are no changes to any of the C code from v2\nof the patch.\n\nIn order to support kernel DLPAR of CPU resources we need to provide an\ninterface to add (probe) and remove (release) the resource from the system.\nThis patch Creates new generic probe and release sysfs files to facilitate\ncpu probe/release.  The probe/release interface provides for allowing each\narch to supply their own routines for implementing the backend of adding\nand removing cpus to/from the system.\n\nThis also creates the powerpc specific stubs to handle the arch callouts\nfrom writes to the sysfs files.\n\nThe creation and use of these files is regulated by the\nCONFIG_ARCH_CPU_PROBE_RELEASE option so that only architectures that need the\ncapability will have the files created.\n\nSigned-off-by: Nathan Fontenot \u003cnfont@austin.ibm.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "d014d043869cdc591f3a33243d3481fa4479c2d0",
      "tree": "63626829498e647ba058a1ce06419fe7e4d5f97d",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d",
        "6070d81eb5f2d4943223c96e7609a53cdc984364"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\n\tkernel/irq/chip.c\n"
    },
    {
      "commit": "965c4ac0613b071d6f035334c5d9d942013df4f9",
      "tree": "6108441b938fe0c309a09e96784edcc91d9b8b3f",
      "parents": [
        "e1b1903eee71c5fa6063bbf713cfc947e76c4e04"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 03 21:04:41 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 06 16:17:57 2009 +0100"
      },
      "message": "PM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()\n\nSome braces in __pm_runtime_set_status() are not necessary, so\nremove them.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "0ddf0ed1d47e2d4170fa2989273886a1df66a862",
      "tree": "179d0f0de4ef726209c068ea9616f5ccd6a73173",
      "parents": [
        "63c94801701abfea21570d3302687ec027ed33e8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 03 21:03:57 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 06 16:17:56 2009 +0100"
      },
      "message": "PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()\n\nThe runtime PM core code assumes that dev-\u003epower.timer_expires is\nnonzero when the timer is scheduled, but it may become zero\nincidentally in pm_schedule_suspend().  Prevent this from happening\nby bumping dev-\u003epower.timer_expires up to 1 if it\u0027s 0 before calling\nmod_timer().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\n"
    },
    {
      "commit": "63c94801701abfea21570d3302687ec027ed33e8",
      "tree": "4806596c35a8c92640e26fe66394b775dca2208c",
      "parents": [
        "7b199ca2025f4756daceec8802f07da636c524c9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Dec 03 20:22:34 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 06 16:17:56 2009 +0100"
      },
      "message": "PM / Runtime: Use deferred_resume flag in pm_request_resume\n\nThis patch (as1307) adds a small optimization to\n__pm_request_resume().  If the device is currently being suspended,\nthere\u0027s no need to queue a work routine to resume it.  Setting the\ndeferred_resume flag will suffice.  (There\u0027s also a minor improvement\nto the function\u0027s code layout: An unnecessary \"else\" is removed.)\n\nAlso, the patch clarifies the usage of the deferred_resume flag.  It\nis meaningful only while a suspend is in progress, so it should be\ncleared just before a suspend starts, not just after one ends.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "bab636b921017f0db6e0c2979438f50b898a9808",
      "tree": "c220981cad0f886c0a7e34f54735e7bf384ff462",
      "parents": [
        "66d0ae4d6ffa45b8e6d8bdbf85f8f1b285c8152d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 03 20:21:21 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Dec 06 16:17:56 2009 +0100"
      },
      "message": "PM / Runtime: Fix lockdep warning in __pm_runtime_set_status()\n\nLockdep complains about taking the parent lock in\n__pm_runtime_set_status(), so mark it as nested.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "862f89b3d4c6bf3caab7fc69661fc6e725edd00a",
      "tree": "65d29f636f8c0f488524220b5accea674b5101cf",
      "parents": [
        "a8a8a669ea13d792296737505adc43ccacf3a648"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Nov 25 01:06:37 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Nov 29 16:51:27 2009 +0100"
      },
      "message": "PM: fix irq enable/disable in runtime PM code\n\nThis patch (as1305) fixes a bug in the irq-enable settings and removes\nsome related overhead in the runtime PM code.\n\n\tIn __pm_runtime_resume(), within the scope of the original\n\tspin_lock_irq(), we know that irqs are disabled.  There\u0027s no\n\treason to go through a pair of enable/disable cycles when\n\tacquiring and releasing the parent\u0027s lock.\n\n\tIn __pm_runtime_set_status(), irqs are already disabled when\n\tthe parent\u0027s lock is acquired, and they must remain disabled\n\twhen it is released.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "3b034b0d084221596bf35c8d893e1d4d5477b9cc",
      "tree": "c3b9f33dc9fc748a9460036ae8647b16541a7547",
      "parents": [
        "833af8427be4b217b5bc522f61afdbd3f1d282c2"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Tue Nov 24 15:50:03 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Nov 25 21:49:22 2009 +0900"
      },
      "message": "percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n\no kdump functionality reserves a per cpu area at boot time and exports the\n  physical address of that area to user space through sys interface. This\n  area stores some dump related information like cpu register states etc\n  at the time of crash.\n\no We were assuming that per cpu area always come from linearly mapped meory\n  region and using __pa() to determine physical address.\n  With percpu_alloc\u003dpage, per cpu area can come from vmalloc region also and\n  __pa() breaks.\n\no This patch implments a new function to convert per cpu address to\n  physical address.\n\nBefore the patch, crash_notes addresses looked as follows.\n\ncpu0 60fffff49800\ncpu1 60fffff60800\ncpu2 60fffff77800\n\nThese are bogus phsyical addresses.\n\nAfter the patch, address are following.\n\ncpu0 13eb44000\ncpu1 13eb43000\ncpu2 13eb42000\ncpu3 13eb41000\n\nThese look fine. I got 4G of memory and /proc/iomem tell me following.\n\n100000000-13fffffff : System RAM\n\ntj: * added missing asm/io.h include reported by Stephen Rothwell\n    * repositioned per_cpu_ptr_phys() in percpu.c and added comment.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\n"
    },
    {
      "commit": "2ddac2a6a8f13e95664fe7ad1b728ac84fb1bd07",
      "tree": "c6634784c63a0c11b50c60fba24f288b684fe159",
      "parents": [
        "e528e876897217465d5cd7cb28130d8489596e34"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Wed Oct 28 22:56:10 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 03 11:18:18 2009 +0100"
      },
      "message": "PM: Remove some debug messages producing too much noise\n\npm_runtime_idle() is somewhat noisy. Remove debug prints.\n\nSigned-off-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e528e876897217465d5cd7cb28130d8489596e34",
      "tree": "23426f3bfa55e9cf046087e28bed83d9ce678027",
      "parents": [
        "bf9fd67a0328d56eff6022f80d4eb88ba6614119"
      ],
      "author": {
        "name": "Romit Dasgupta",
        "email": "romit@ti.com",
        "time": "Wed Oct 28 22:56:02 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Nov 03 11:03:33 2009 +0100"
      },
      "message": "PM: Fix warning on suspend errors\n\nFixes the point where we need to complete the power transition when\ndevice suspend fails, so that we don\u0027t print warnings about devices\nadded to the device hierarchy after a failing suspend.\n\n[rjw: Modified changelog.]\n\nSigned-off-by: Romit Dasgupta \u003cromit@ti.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1a6f2a7512021ceae3c4201c7aab07f032e9ce91",
      "tree": "03fdca9848003b3a6fda57113b3e750ec1e22a55",
      "parents": [
        "39acbc12affcaa23ef1d887ba3d197baca8e6e47"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 12 20:17:41 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 30 14:59:51 2009 -0700"
      },
      "message": "Driver core: allow certain drivers prohibit bind/unbind via sysfs\n\nPlatform drivers registered via platform_driver_probe() can be bound\nto devices only once, upon registration, because discard their probe()\nroutines to save memory. Unbinding the driver through sysfs \u0027unbind\u0027\nleaves the device stranded and confuses users so let\u0027s not create\nbind and unbind attributes for such drivers.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Éric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "39acbc12affcaa23ef1d887ba3d197baca8e6e47",
      "tree": "51249000a01a41a4036c8be1313186b0c4116206",
      "parents": [
        "2e2ec952350f25242f2e0539db16b1e46f9eb01b"
      ],
      "author": {
        "name": "Stas Sergeev",
        "email": "stsp@aknet.ru",
        "time": "Sun Oct 18 00:31:38 2009 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 30 14:59:51 2009 -0700"
      },
      "message": "Driver core: fix driver_register() return value\n\nIn this patch:\nhttp://git.kernel.org/?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommitdiff;h\u003d16dc42e018c2868211b4928f20a957c0c216126c\nthe check was added for another driver to already claim the same device\non the same bus. But the returned error code was wrong: to modprobe, the\n-EEXIST means that _this_ driver is already installed. It therefore\ndoesn\u0027t produce the needed error message when _another_ driver is trying\nto register for the same device.  Returning -EBUSY fixes the problem.\n\nSigned-off-by: Stas Sergeev \u003cstsp@aknet.ru\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4b02108ac1b3354a22b0d83c684797692efdc395",
      "tree": "9f65d6e8e35ddce940e7b9da6305cf5a19e5904e",
      "parents": [
        "c6a7f5728a1db45d30df55a01adc130b4ab0327c"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:01:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:27 2009 -0700"
      },
      "message": "mm: oom analysis: add shmem vmstat\n\nRecently we encountered OOM problems due to memory use of the GEM cache.\nGenerally a large amuont of Shmem/Tmpfs pages tend to create a memory\nshortage problem.\n\nWe often use the following calculation to determine the amount of shmem\npages:\n\nshmem \u003d NR_ACTIVE_ANON + NR_INACTIVE_ANON - NR_ANON_PAGES\n\nhowever the expression does not consider isolated and mlocked pages.\n\nThis patch adds explicit accounting for pages used by shmem and tmpfs.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6a7f5728a1db45d30df55a01adc130b4ab0327c",
      "tree": "36649bc6ebb959841a5097c699968722cfd99c4d",
      "parents": [
        "71de1ccbe1fb40203edd3beb473f8580d917d2ca"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:01:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:27 2009 -0700"
      },
      "message": "mm: oom analysis: Show kernel stack usage in /proc/meminfo and OOM log output\n\nThe amount of memory allocated to kernel stacks can become significant and\ncause OOM conditions.  However, we do not display the amount of memory\nconsumed by stacks.\n\nAdd code to display the amount of memory used for stacks in /proc/meminfo.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e454cea20bdcff10ee698d11b8882662a0153a47",
      "tree": "f44581fe57787aef0a4f4dc00993a90ea8e688f6",
      "parents": [
        "78f28b7c555359c67c2a0d23f7436e915329421e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Sep 18 23:01:12 2009 +0200"
      },
      "committer": {
        "name": "Live-CD User",
        "email": "linux@linux.site",
        "time": "Sat Sep 19 12:50:38 2009 -0700"
      },
      "message": "Driver-Core: extend devnode callbacks to provide permissions\n\nThis allows subsytems to provide devtmpfs with non-default permissions\nfor the device node. Instead of the default mode of 0600, null, zero,\nrandom, urandom, full, tty, ptmx now have a mode of 0666, which allows\nnon-privileged processes to access standard device nodes in case no\nother userspace process applies the expected permissions.\n\nThis also fixes a wrong assignment in pktcdvd and a checkpatch.pl complain.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2b2af54a5bb6f7e80ccf78f20084b93c398c3a8b",
      "tree": "bb27e3b16a2a8fadeea869033a406f0a19b63e29",
      "parents": [
        "ea5ffff57dce2f4c85ab056f4b0a202f71db2bdf"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Apr 30 15:23:42 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:49 2009 -0700"
      },
      "message": "Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev\n\nDevtmpfs lets the kernel create a tmpfs instance called devtmpfs\nvery early at kernel initialization, before any driver-core device\nis registered. Every device with a major/minor will provide a\ndevice node in devtmpfs.\n\nDevtmpfs can be changed and altered by userspace at any time,\nand in any way needed - just like today\u0027s udev-mounted tmpfs.\nUnmodified udev versions will run just fine on top of it, and will\nrecognize an already existing kernel-created device node and use it.\nThe default node permissions are root:root 0600. Proper permissions\nand user/group ownership, meaningful symlinks, all other policy still\nneeds to be applied by userspace.\n\nIf a node is created by devtmps, devtmpfs will remove the device node\nwhen the device goes away. If the device node was created by\nuserspace, or the devtmpfs created node was replaced by userspace, it\nwill no longer be removed by devtmpfs.\n\nIf it is requested to auto-mount it, it makes init\u003d/bin/sh work\nwithout any further userspace support. /dev will be fully populated\nand dynamic, and always reflect the current device state of the kernel.\nWith the commonly used dynamic device numbers, it solves the problem\nwhere static devices nodes may point to the wrong devices.\n\nIt is intended to make the initial bootup logic simpler and more robust,\nby de-coupling the creation of the inital environment, to reliably run\nuserspace processes, from a complex userspace bootstrap logic to provide\na working /dev.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nTested-By: Harald Hoyer \u003charald@redhat.com\u003e\nTested-By: Scott James Remnant \u003cscott@ubuntu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "daa4122673f002911122cac2b996bd36b6c01b32",
      "tree": "cd99fcfdedcaf94efc60585968c60ed417f1430c",
      "parents": [
        "4622709445705c1e423d2addcfd8ccae052fe0ba"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Aug 06 16:00:44 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:48 2009 -0700"
      },
      "message": "driver core: platform_device_add_data(): use kmemdup()\n\nInstead of open-coding it.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4622709445705c1e423d2addcfd8ccae052fe0ba",
      "tree": "c9032374e8f99a5bb9b8b8e012e0a6de4c9c3846",
      "parents": [
        "ccb86a6907c9ba7b5be5f521362fc308e80bed34"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Aug 04 12:55:34 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:48 2009 -0700"
      },
      "message": "Driver core: Add support for compatibility classes\n\nWhen turning class devices into bus devices, we may need to\ntemporarily add links in sysfs so that user-space applications\nare not confused. This is done by adding the following API:\n\n* Functions to register and unregister compatibility classes.\n  These appear in sysfs at the same location as regular classes, but\n  instead of class devices, they contain links to bus devices.\n* Functions to create and delete such links. Additionally, the caller\n  can optionally pass a target device to which a \"device\" link should\n  point (typically that would be the device\u0027s parent), to fully emulate\n  the original class device.\n\nThe i2c subsystem will be the first user of this API, as i2c adapters\nare being converted from class devices to bus devices.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\n\n"
    },
    {
      "commit": "a56af87648054089d89874b52e3fc23ed4f274ad",
      "tree": "81714be5cc39f830b4acf55ec782b46f36e67ebe",
      "parents": [
        "162dd4212409fd2d36ff22547ea821bf3e86bcc9"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun Jul 12 21:44:55 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "driver-core: move dma-coherent.c from kernel to driver/base\n\nPlacing dma-coherent.c in driver/base is better than in kernel,\nsince it contains code to do per-device coherent dma memory\nhandling.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a4dbd6740df0872cdf0a86841f75beec8381964d",
      "tree": "1093687845d89f8397d61e7df1ad8546a5a25225",
      "parents": [
        "5b2ea2f10dbb2fa91d8033993000f8664309395f"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jun 24 10:06:31 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "driver model: constify attribute groups\n\nLet attribute group vectors be declared \"const\".  We\u0027d\nlike to let most attribute metadata live in read-only\nsections... this is a start.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b4028437876866aba4747a655ede00f892089e14",
      "tree": "f6c34315c3e6d2899a894f028bd6f9899e80cd01",
      "parents": [
        "2023c610dc54a4f4130b0494309a9bd668ca3df8"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon May 11 14:16:57 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "Driver core: move dev_get/set_drvdata to drivers/base/dd.c\n\nNo one should directly access the driver_data field, so remove the field\nand make it private.  We dynamically create the private field now if it\nis needed, to handle drivers that call get/set before they are\nregistered with the driver core.\n\nAlso update the copyright notices on these files while we are there.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2023c610dc54a4f4130b0494309a9bd668ca3df8",
      "tree": "2ffc4b19491df0f6131905d22bbb05c517a8c24c",
      "parents": [
        "18240904960a39e582ced8ba8ececb10b8c22dd3"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Jul 30 15:27:18 2009 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:46 2009 -0700"
      },
      "message": "Driver core: add new device to bus\u0027s list before probing\n\nThis patch (as1271) affects when new devices get linked into their\nbus\u0027s list of devices.  Currently this happens after probing, and it\ndoesn\u0027t happen at all if probing fails.  Clearly this is wrong,\nbecause at that point quite a few symbolic links have already been\ncreated in sysfs.  We are committed to adding the device, so it should\nbe linked into the bus\u0027s list regardless.\n\nIn addition, this needs to happen before the uevent announcing the new\ndevice gets issued.  Otherwise user programs might try to access the\ndevice before it has been added to the bus.\n\nTo fix both these problems, the patch moves the call to\nklist_add_tail() forward from bus_attach_device() to bus_add_device().\nSince bus_attach_device() now does nothing but probe for drivers, it\nhas been renamed to bus_probe_device().  And lastly, the kerneldoc is\nupdated.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n\n\n"
    },
    {
      "commit": "3eb132c986f04f64b9c360abd67a1e0d18d6d5b4",
      "tree": "d51e8e2d3d9de0ad365f1f0c4cdcc02aa72b1aaa",
      "parents": [
        "20d652d7d1c2f202215ecf0306ccecc3569df9ba"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Thu Aug 20 20:28:33 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "PM: Reset transition_started at dpm_resume_noirq\n\ntransition_started should be set once the preparation of devices for\na PM has started, reset before starting to resume devices. When\nresuming devices, kernel calls dpm_resume_noirq then\ndpm_resume_end(dpm_resume).  Thus we should reset transition_started\nat dpm_resume_noirq.\n\nThis patch fixes ACPI warning when resuming from suspend/hibernate:\n\nACPI: \\_SB_.PCI0.IDE1.PRI1.MAS1 - docking\n------------[ cut here ]------------\nWARNING: at drivers/base/power/main.c:87 device_pm_add+0x8b/0xcc()\nHardware name: OptiPlex 760\nDevice: acpi\nParentless device registered during a PM transaction\n\n[rjw: Fixed up the changelog.]\n\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "20d652d7d1c2f202215ecf0306ccecc3569df9ba",
      "tree": "f08619cec4964478d764477ca45931f7d49401a3",
      "parents": [
        "9d62ec6ca71d71c8a0d2cb1004f476d33f668955"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 20 20:25:52 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "PM: Update kerneldoc comments in drivers/base/power/main.c\n\nThe kerneldoc comments in drivers/base/power/main.c are generally\noutdated and some of them don\u0027t describe the functions very\naccurately.  Update them and standardize the format to use spaces\ninstead of tabs.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\n"
    },
    {
      "commit": "9d7302299ee96ca954fe4ab8ca640333b6e19ad0",
      "tree": "6694cfef0d50e53841af9b0954831c03f136af20",
      "parents": [
        "5e928f77a09a07f9dd595bb8a489965d69a83458"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Aug 20 20:25:32 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Aug 23 00:05:31 2009 +0200"
      },
      "message": "PM: Run-time PM platform device bus support\n\nThis patch adds default Runtime PM callbacks to the dev_pm_ops\nbelonging to the platform bus. The callbacks are weak symbols\nthat architecture specific code can override.\n\nAllows Runtime PM even though CONFIG_PM_SLEEP\u003dn.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "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": "3e2bcad89814030ad6a369a97ad1481fd35938d3",
      "tree": "8d6b9b163dc9ed44ec377ca5b57be1a1fb80f923",
      "parents": [
        "dcbf77cac640af0ab944d5cbb07934bf6708b4d9",
        "b2add73dbf93fd50f00564d7abc3e2b9aa9dd20c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Aug 16 11:50:10 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Aug 16 11:50:10 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "651b1f125c7e3806bbd635739d009433dc07372d",
      "tree": "775534db63651213a6de14599094161ca8f40ec2",
      "parents": [
        "85dfd81dc57e8183a277ddd7a56aa65c96f3f487"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Mon Aug 10 23:41:18 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Aug 10 23:41:18 2009 +0200"
      },
      "message": "PM / Driver Core: Kill dev_pm_ops platform warning for now\n\nCommit 783ea7d4eeefe895f2731fe73ac951e94418927b\n(Driver Core: Rework platform suspend/resume, print warning)\nadded a warning message printed for platform drivers that use the\nlegacy PM callbacks rather than struct dev_pm_ops.  Unfortunately,\nthis resulted in some confusion and made some people try to convert\ndrivers by replacing the old callbacks with struct dev_pm_ops in\nautomatic way, which generally is not a good idea.\n\nRemove the platform device runtime dev_pm_ops warning for now,\nbecause it\u0027s annoying to users and it\u0027s not really necessary right\nnow.\n\n[rjw: Modified the changelog to be more informative.]\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "2e6713c7662cc5ebc7346b033c404cb2f708fd51",
      "tree": "8492ea548fea2d8243e4af4b877906afc4e32783",
      "parents": [
        "b4093d6235b7e4249616651ee328600ced48a18a",
        "658874f05d040ca96eb5ba9b1c30ce0ff287d762"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 30 19:38:04 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 30 19:38:04 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "79f0313bfc67aa13abb931e8c12a1411f0161a68",
      "tree": "51eebd9f4d5886139849ff42df24cec4169ea343",
      "parents": [
        "4df7b3e0370ab6161ea2f258f51dd7c43bef2bda"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Fri Jul 24 17:31:41 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 28 13:45:22 2009 -0700"
      },
      "message": "driver core: sysdev: do not send KOBJ_ADD uevent if kobject_init_and_add fails\n\nIf kobject_init_and_add fails, sysdev_register should not send KOBJ_ADD\nuevent to userspace.\n\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3b4418c67a70278964b063b5e1f56dcb3d0a41f3",
      "tree": "4112e10d4d523a55bc95fdfc46306881f7569820",
      "parents": [
        "0f58b44582001c8bcdb75f36cf85ebbe5170e959"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sat Jul 11 11:11:10 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 28 13:45:22 2009 -0700"
      },
      "message": "driver core: firmware_class:fix memory leak of page pointers array\n\nThe page pointers array is allocated in fw_realloc_buffer() called by\nfirmware_data_write(), and should be freed in release function of firmware\ndevice.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nReported-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d9ab77161d811ffb0bccf396f7155cc905c1b9e1",
      "tree": "6d055acd69351a56b7014388e24d33199139d79c",
      "parents": [
        "511647ff58fd0f1c1f415d2c757d841650edac91"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Jul 22 00:37:25 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 24 00:17:28 2009 +0200"
      },
      "message": "Driver Core: Make PM operations a const pointer\n\nThey are not supposed to be modified by drivers, so make them const.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "511647ff58fd0f1c1f415d2c757d841650edac91",
      "tree": "8df47b78208093d7f06d7e305d013e4cb85e6275",
      "parents": [
        "48fea9659ec1a35641db3832adaf3860ecabb6ba"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Wed Jul 08 13:23:07 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 22 00:28:39 2009 +0200"
      },
      "message": "PM: Remove platform device suspend_late()/resume_early() V2\n\nThis is V2 of the platform driver power management late/early\ncallback removal patch. The callbacks -\u003esuspend_late() and\n-\u003eresume_early() are removed since all in-tree users now have\nbeen migrated to dev_pm_ops.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "308975fa7ab2a8e0b91186158128668c823790ce",
      "tree": "4998a1a0213172b682168325e0d2a3a5ed797845",
      "parents": [
        "4ead0a2b6b3aa0b527871ec978c3ef12aafb6bfb"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Sun Jun 21 23:57:31 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Jul 12 13:02:10 2009 -0700"
      },
      "message": "Firmware: firmware_class, fix lock imbalance\n\nAdd omitted unlock in firmware_data_read.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eb8d3c604fe7496323efb9a858bef84c489ca584",
      "tree": "fe47cc2d57f7a7e2ba7936b7a89bbd49caf5bb5c",
      "parents": [
        "81e4e1ba7ed4a1fdcf0e2ee944f1575010471464"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jun 10 12:43:02 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Jul 12 13:02:09 2009 -0700"
      },
      "message": "devres: WARN() and return, don\u0027t crash on device_del() of uninitialized device\n\nI just debugged an obscure crash caused by a device_del() of a all NULL\u0027d\nout struct device (in usb-serial) and found that a patch like this one would\nhave saved me time (in addition to improved chances of a bug report from\nusers hitting similar driver bugs).\n\n[akpm@linux-foundation.org: cleanup]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ed7ba2ef09254b2fd9698708b407f4652d26e36a",
      "tree": "d16ea988b54d906704003ab086498c184afe1a1f",
      "parents": [
        "4b99d3527041bec1abe9903263a3a1b7d2ba0c4a",
        "886a7a3371da8ee46a13f8e598a536bd8765b837"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:22 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM: Clear -EAGAIN in dpm_prepare\n  x86: Fix resume from suspend when CONFIG_CC_STACKPROTECTOR\n"
    },
    {
      "commit": "0f2f2221b4ad816567394a52643963428fd353cd",
      "tree": "9677b25ca9df0bfb59e0bc70e8c19e2b4d3cc0af",
      "parents": [
        "d5ce5b40bc66880d1732461d4b47d7fc3331ed30"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jul 08 11:17:40 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:34:08 2009 -0700"
      },
      "message": "Free struct device in fw_dev_release()\n\nThe f_dev in _request_firmware() is allocated via the fw_setup_device()\nand fw_register_device() calls and its class set to firmware_class (the\nclass release function is fw_dev_release).\n\nCommit 6acf70f078ca replaced the kfree(dev) in fw_dev_release() with a\nput_device() call but my understanding is that the release function is\ncalled via put_device -\u003e kobject_put -\u003e kref_put -\u003e koject_release etc.\nand it should call kfree since it\u0027s the last to see this device\nstructure alive.\n\nBecause of that, the _request_firmware() function on its -ENOENT error\npath only calls device_unregister(f_dev) which would eventually call\nfw_dev_release() but there is no kfree (the subsequent put_device call\nwould just make the kref negative).\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "886a7a3371da8ee46a13f8e598a536bd8765b837",
      "tree": "5b6b9fb297cc3f59cd1777548e2fa82d4e1bb5f9",
      "parents": [
        "00024be9689963c55cf2ab10ce3fb4502016c09a"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Wed Jul 08 13:26:05 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:26:05 2009 +0200"
      },
      "message": "PM: Clear -EAGAIN in dpm_prepare\n\nWhen the last device in the dpm list is unregistered directly after its\nprepare() callback returned with -EAGAIN, the return code is passed to\nthe calling function, resulting in a suspend failure. Prevent this by\nclearing the return code after -EAGAIN.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "517d08699b250021303f9a7cf0d758b6dc0748ed",
      "tree": "5e5b0134c3fffb78fe9d8b1641a64ff28fdd7bbc",
      "parents": [
        "8eeee4e2f04fc551f50c9d9847da2d73d7d33728",
        "a34601c5d84134055782ee031d58d82f5440e918"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:50:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:50:13 2009 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm: (182 commits)\n  fbdev: bf54x-lq043fb: use kzalloc over kmalloc/memset\n  fbdev: *bfin*: fix __dev{init,exit} markings\n  fbdev: *bfin*: drop unnecessary calls to memset\n  fbdev: bfin-t350mcqb-fb: drop unused local variables\n  fbdev: blackfin has __raw I/O accessors, so use them in fb.h\n  fbdev: s1d13xxxfb: add accelerated bitblt functions\n  tcx: use standard fields for framebuffer physical address and length\n  fbdev: add support for handoff from firmware to hw framebuffers\n  intelfb: fix a bug when changing video timing\n  fbdev: use framebuffer_release() for freeing fb_info structures\n  radeon: P2G2CLK_ALWAYS_ONb tested twice, should 2nd be P2G2CLK_DAC_ALWAYS_ONb?\n  s3c-fb: CPUFREQ frequency scaling support\n  s3c-fb: fix resource releasing on error during probing\n  carminefb: fix possible access beyond end of carmine_modedb[]\n  acornfb: remove fb_mmap function\n  mb862xxfb: use CONFIG_OF instead of CONFIG_PPC_OF\n  mb862xxfb: restrict compliation of platform driver to PPC\n  Samsung SoC Framebuffer driver: add Alpha Channel support\n  atmel-lcdc: fix pixclock upper bound detection\n  offb: use framebuffer_alloc() to allocate fb_info struct\n  ...\n\nManually fix up conflicts due to kmemcheck in mm/slab.c\n"
    },
    {
      "commit": "6837765963f1723e80ca97b1fae660f3a60d77df",
      "tree": "a9a6ed4b7e3bf188966da78b04bf39298f24375a",
      "parents": [
        "bce7394a3ef82b8477952fbab838e4a6e8cb47d2"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Jun 16 15:32:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:47:42 2009 -0700"
      },
      "message": "mm: remove CONFIG_UNEVICTABLE_LRU config option\n\nCurrently, nobody wants to turn UNEVICTABLE_LRU off.  Thus this\nconfigurability is unnecessary.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nAcked-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6fcf53acccf85b4b0d0260e66c692a341760f464",
      "tree": "445f725558bde27492095f8d05cc645315f8c1c1",
      "parents": [
        "acc0e90fbccbc6e4d48184cba0983ea044e131af"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Apr 30 15:23:42 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:25 2009 -0700"
      },
      "message": "Driver Core: add nodename callbacks\n\nThis adds the nodename callback for struct class, struct device_type and\nstruct device, to allow drivers to send userspace hints on the device\nname and subdirectory that should be used for it.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "acc0e90fbccbc6e4d48184cba0983ea044e131af",
      "tree": "5dee80c06dcb97739f6fae7e397fa8f4a4f8ee25",
      "parents": [
        "d12b77afb4f0a06e9c7e82a0e88d5f011b862c10"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jun 02 15:39:55 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:25 2009 -0700"
      },
      "message": "driver core: fix gcc 4.3.3 warnings about string literals\n\nThis removes the\n\twarning: format not a string literal and no format arguments\nwarnings in the driver core that gcc 4.3.3 complains about.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "976821d756c53b421d7c58a9ed60125016d330aa",
      "tree": "c4da7b73e909439b664cb5e03f602229c6abdc2c",
      "parents": [
        "7fcab099795812a8a08eb3b8c8ddb35c3685045f"
      ],
      "author": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Wed May 27 00:49:31 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "firmware: allocate firmware id dynamically\n\nThe firmware loader has a statically allocated 30 bytes long string for\nthe firmware id (a.k.a. the firmware file name). There is no reason why\nwe couldnt allocate it dynamically, and avoid having restrictions on the\nfirmware names lengths.\n\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nCc: Marcel Holtmann \u003choltmann@linux.intel.com\u003e\nCc: Zhu Yi \u003cyi.zhu@intel.com\u003e,\nCc: John Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "7fcab099795812a8a08eb3b8c8ddb35c3685045f",
      "tree": "de2bd852d27ac721e6d40b85e7661d7f438119e0",
      "parents": [
        "c4c01684349ac0821ad8c27de9516fe493f3361d"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Fri May 29 11:33:19 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: fix documentation of request_firmware_nowait\n\nrequest_firmware_nowait declares it can be called in non-sleep contexts,\nbut kthead_run called by request_firmware_nowait may sleep. So fix its\ndocumentation and comment to make callers clear about it.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "401097ea4b89846d66ac78f7f108d49c2e922d9c",
      "tree": "b16007ce17630731002757c02b25052e7ec7529c",
      "parents": [
        "400ced61fa4914457d7e0a38e7c0fc6fd208694b"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Tue May 12 13:37:57 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: synchronize device shutdown\n\nA patch series to make .shutdown execute asynchronously.  Some drivers\u0027s\nshutdown can take a lot of time.  The patches can help save some shutdown\ntime.  The patches use Arjan\u0027s async API.\n\n\nThis patch:\n\nsynchronize all tasks submitted by .shutdown\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9227c47bbdd87f276e08ed17877cc1649f5ed10a",
      "tree": "af576b46ed9825573a11321db63c4038b4abcd9f",
      "parents": [
        "d9cd8f37855b012757818f31390e8f84db251c89"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Mon May 11 14:18:55 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver-core: make sysdev_class_register check kobject_set_name return value\n\nsysdev_class_register should check the kobject_set_name return value.\n\nAdd the return value checking code.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "59a3cd7f9da60ac4ba8ae5a4cddc48fe4a450129",
      "tree": "9e3e5ae3439c119452862aee8a7c35887a3625d1",
      "parents": [
        "56a83cc92991ed5bf76e224dd2ad53b5e9c00681"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue May 05 20:38:28 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "Driver core: fix comment for device_attach()\n\nWe are looking for matching drivers, not devices.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c0afe7ba5e71d8ab66bc42f90b3e237581d3c509",
      "tree": "a4fb6323ac6e21df4ea1264bee306c073479648f",
      "parents": [
        "309b7d60a345f402bec3cf9caadb53de4028e2aa"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.ml.walleij@gmail.com",
        "time": "Mon Apr 27 02:38:16 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: Const-correct platform getbyname functions\n\nThis converts resource and IRQ getbyname functions for the platform\nbus to use const char *, I ran into compiler moanings when I tried\nusing a const char * for looking up a certain resource.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "309b7d60a345f402bec3cf9caadb53de4028e2aa",
      "tree": "1e3a493c6c042155af67e062ac3f722b2cc4c6bd",
      "parents": [
        "6acf70f078ca42a63397b8b84bf6383b01303009"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Apr 24 14:57:00 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: add BUS_NOTIFY_UNBOUND_DRIVER event\n\nThis patch adds a new bus notifier event which is emitted _after_ a\ndevice is removed from its driver. This event will be used by the\ndma-api debug code to check if a driver has released all dma allocations\nfor that device.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6acf70f078ca42a63397b8b84bf6383b01303009",
      "tree": "73b5b8264cd7663c807edabcf8545151f43f0386",
      "parents": [
        "557411eb2ce61ef5e87bd759a6f86881586df857"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Apr 23 22:31:52 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: firmware_class: replace kfree(dev) with put_device(dev)\n\nagainst v2.6.30-rc3-next tree.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "489f7ab6c18cdd64a2d444e056d60a0e722f4ad7",
      "tree": "2c7ed6a0042dc15c91ece08c5a3866f610ddca6d",
      "parents": [
        "b322b7816908487c08b89b72f838174c37d8c836",
        "82d27b2b2f3a80ffa7759a49b9cba39e47df476e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 13:46:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 13:46:25 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (31 commits)\n  trivial: remove the trivial patch monkey\u0027s name from SubmittingPatches\n  trivial: Fix a typo in comment of addrconf_dad_start()\n  trivial: usb: fix missing space typo in doc\n  trivial: pci hotplug: adding __init/__exit macros to sgi_hotplug\n  trivial: Remove the hyphen from git commands\n  trivial: fix ETIMEOUT -\u003e ETIMEDOUT typos\n  trivial: Kconfig: .ko is normally not included in module names\n  trivial: SubmittingPatches: fix typo\n  trivial: Documentation/dell_rbu.txt: fix typos\n  trivial: Fix Pavel\u0027s address in MAINTAINERS\n  trivial: ftrace:fix description of trace directory\n  trivial: unnecessary (void*) cast removal in sound/oss/msnd.c\n  trivial: input/misc: Fix typo in Kconfig\n  trivial: fix grammo in bus_for_each_dev() kerneldoc\n  trivial: rbtree.txt: fix rb_entry() parameters in sample code\n  trivial: spelling fix in ppc code comments\n  trivial: fix typo in bio_alloc kernel doc\n  trivial: Documentation/rbtree.txt: cleanup kerneldoc of rbtree.txt\n  trivial: Miscellaneous documentation typo fixes\n  trivial: fix typo milisecond/millisecond for documentation and source comments.\n  ...\n"
    },
    {
      "commit": "783ea7d4eeefe895f2731fe73ac951e94418927b",
      "tree": "175b7ec1684d55710a7a921d4bd81e549ae4ed52",
      "parents": [
        "00725787511e20dbd1fdc1fb233606120ae5c8cf"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Jun 04 22:13:33 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "Driver Core: Rework platform suspend/resume, print warning\n\nThis patch reworks the platform driver code for legacy\nsuspend and resume to avoid installing callbacks in\nstruct device_driver. A warning is also added telling\nusers to update the platform driver to use dev_pm_ops.\n\nThe functions platform_legacy_suspend()/resume() directly\ncall suspend and resume callbacks in struct platform_driver\ninstead of wrapping things in platform_drv_suspend()/resume().\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "00725787511e20dbd1fdc1fb233606120ae5c8cf",
      "tree": "82fa3c48aca074a993a122751a2333000e1668a3",
      "parents": [
        "fe419535d82724314bbf1244a0e740e4ea1bd3ae"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Jun 04 22:13:25 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "PM: Remove device_type suspend()/resume()\n\nThis patch removes the legacy callbacks -\u003esuspend() and\n-\u003eresume() from struct device_type. These callbacks seem\nunused, and new code should instead make use of struct\ndev_pm_ops.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e240b58c79144708530138e05f17c6d0d8d744a8",
      "tree": "c42553ae8ffb034a767cebb0b4876db3528a2e11",
      "parents": [
        "d161630297a20802d01c55847bfcba85d2118a9f"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Sun May 24 22:05:54 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM: Remove bus_type suspend_late()/resume_early() V2\n\nRemove the -\u003esuspend_late() and -\u003eresume_early() callbacks\nfrom struct bus_type V2. These callbacks are legacy stuff\nat this point and since there seem to be no in-tree users\nwe may as well remove them. New users should use dev_pm_ops.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "62b0124761b9c2e304ee07dcf4db46c4a3dfec11",
      "tree": "81f27bb0e7eb92cd2d14a3ae3088ef3fa90a3cc2",
      "parents": [
        "ce4b3c55475e451cb489e857640396c37ca88974"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Apr 18 13:45:13 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:29 2009 +0200"
      },
      "message": "PM: Warn if interrupts are enabled during suspend-resume of sysdevs\n\nSysdevs have to be suspended and resumed with interrupts disabled and\nthings usually break in a way that\u0027s difficult to debug if one of\nsysdev drivers enables interrupts by mistake during suspend or\nresume.  Add extra checks that will generate warnings in such cases.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c59a264c9e932c828d533497e286b89e43c8d1be",
      "tree": "ccbc50e44e5b6142bd17519829f12d8e7cf57cc6",
      "parents": [
        "6cb8a911745616eee0bdd97a2e82eb9723e9599a",
        "6e03a201bbe8137487f340d26aa662110e324b20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 09:44:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 09:44:30 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/firmware-2.6\n\n* git://git.infradead.org/~dwmw2/firmware-2.6:\n  firmware: speed up request_firmware(), v3\n"
    },
    {
      "commit": "0fa1b0a144ee3e57f63ae25a7c5402f57232853d",
      "tree": "65b0047077d4a2580d4b26cc76e285708bb9b5a2",
      "parents": [
        "190342335c2a7939407d7391e5bb6c9ee39244eb"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Thu May 14 23:15:22 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:48 2009 +0200"
      },
      "message": "trivial: fix grammo in bus_for_each_dev() kerneldoc\n\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "5c8563d773c0e9f0ac2a552e84806decd98ce732",
      "tree": "b771f23cd143c4efb4f140f8ef98204cf9c6ef93",
      "parents": [
        "086a377edc969aea6c761176a7e4ff68f264d6fe"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu May 28 14:24:07 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 28 14:24:07 2009 -0700"
      },
      "message": "Driver Core: do not oops when driver_unregister() is called for unregistered drivers\n\nWe also fix a problem with cleaning up properly when initializing\ndrivers and devices, so checks like this will work successfully.\n\nPortions of the patch by Linus and Greg and Ingo.\n\nReported-by: Ozan Çağlayan \u003cozan@pardus.org.tr\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\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": "6e03a201bbe8137487f340d26aa662110e324b20",
      "tree": "5a2c61945ea2fad720e7a18b061dd31303a28523",
      "parents": [
        "091bf7624d1c90cec9e578a18529f615213ff847"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Apr 09 22:04:07 2009 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri May 15 12:51:29 2009 +0100"
      },
      "message": "firmware: speed up request_firmware(), v3\n\nRather than calling vmalloc() repeatedly to grow the firmware image as\nwe receive data from userspace, just allocate and fill individual pages.\nThen vmap() the whole lot in one go when we\u0027re done.\n\nA quick test with a 337KiB iwlagn firmware shows the time taken for\nrequest_firmware() going from ~32ms to ~5ms after I apply this patch.\n\n[v2: define PAGE_KERNEL_RO as PAGE_KERNEL where necessary, use min_t()]\n[v3: kunmap() takes the struct page *, not the virtual address]\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\n"
    },
    {
      "commit": "e67c85626cd02e306da1b4195bfaf68d61050796",
      "tree": "c7cccc5780599f668a36f18caa622b1c7469a08a",
      "parents": [
        "bee86321b7b2312fbb62f4cb903eba1cca45e8ad"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 08 23:13:32 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 08 19:22:21 2009 -0700"
      },
      "message": "Revert driver core: move platform_data into platform_device\n\nThis reverts commit 006f4571a15fae3a0575f2a0f9e9b63b3d1012f8:\n\n\tThis patch moves platform_data from struct device into\n\tstruct platform_device, based on the two ideas:\n\n\t1. Now all platform_driver is registered by platform_driver_register,\n\t   which makes probe()/release()/... of platform_driver passed parameter\n\t   of platform_device *, so platform driver can get platform_data from\n\t   platform_device;\n\n\t2. Other kind of devices do not need to use platform_data, we can\n\t   decrease size of device if moving it to platform_device.\n\n\tTaking into consideration of thousands of files to be fixed and they\n\tcan\u0027t be finished in one night(maybe it will take a long time), so we\n\tkeep platform_data in device to allow two kind of cases coexist until\n\tall platform devices pass its platfrom data from\n\tplatform_device-\u003eplatform_data.\n\n\tAll patches to do this kind of conversion are welcome.\n\nAs we don\u0027t really want to do it, it was a bad idea.\n\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "bee86321b7b2312fbb62f4cb903eba1cca45e8ad",
      "tree": "ccfc761adc4ffab4948feda94a05840f3fcfa36a",
      "parents": [
        "fe0e2bb9b3ca55b78e637b1260faeaa951523959"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Fri Mar 13 23:06:59 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 08 19:22:21 2009 -0700"
      },
      "message": "Revert driver core: fix passing platform_data\n\nThis reverts commit ce21c7bcd796fc4f45d48781b7e85f493cc55ee5:\n\tWe will remove platform_data field from struct device until\n\tall platform devices pass its specific data from platfom_device\n\tand all platform drivers use platform specific data passed by\n\tplatform_device-\u003eplatform_data. This kind of conversion will\n\tneed a long time, for thousands of files is affected.\n\n\tTo make the conversion easily, we allow platform specific data\n\tpassed by struct device or struct platform_device and platform\n\tdriver may use it from struct device or struct platform_device.\n\nAs we really don\u0027t want to do this at all.\n\n\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d86c1302c58e4d4ebd99d459c2daff13613ac7f4",
      "tree": "9d7d2a5e67d827fc0bd8c712d9d56ed16767a6cf",
      "parents": [
        "091bf7624d1c90cec9e578a18529f615213ff847"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Apr 21 07:22:53 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 08 19:22:20 2009 -0700"
      },
      "message": "Driver core: platform: fix kernel-doc warnings\n\nFix function parameter notation in platform.c;\nfixes kernel-doc warnings.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "60db402780ec257b287de591d65157575952bb4a",
      "tree": "bd33672a9ee16e422342c67faafa080d42075a72",
      "parents": [
        "a1e6b6c1a676d25acdf079ee8ab5cdfeb5e5b835"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed May 06 16:03:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:10 2009 -0700"
      },
      "message": "drivers/base/iommu.c: add missing includes\n\nFix zillions of -mm x86_64 allmodconfig build errors - the file uses\nEXPORT_SYMBOL() and kmalloc but misses the needed includes.\n\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4d5291c8cd499b1b590336059d5cc3e24c1ced6",
      "tree": "bb4c2ea559001e066bf3355c1e4d82b36cb916d6",
      "parents": [
        "5dd559f020c98a2a4b3e063f09c0e4bc771ed838"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Tue Apr 21 13:32:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 21 19:40:00 2009 -0700"
      },
      "message": "driver synchronization: make scsi_wait_scan more advanced\n\nThere is currently only one way for userspace to say \"wait for my storage\ndevice to get ready for the modules I just loaded\": to load the\nscsi_wait_scan module. Expectations of userspace are that once this\nmodule is loaded, all the (storage) devices for which the drivers\nwere loaded before the module load are present.\n\nNow, there are some issues with the implementation, and the async\nstuff got caught in the middle of this: The existing code only\nwaits for the scsy async probing to finish, but it did not take\ninto account at all that probing might not have begun yet.\n(Russell ran into this problem on his computer and the fix works for him)\n\nThis patch fixes this more thoroughly than the previous \"fix\", which\nhad some bad side effects (namely, for kernel code that wanted to wait for\nthe scsi scan it would also do an async sync, which would deadlock if you did\nit from async context already.. there\u0027s a report about that on lkml):\nThe patch makes the module first wait for all device driver probes, and then it\nwill wait for the scsi parallel scan to finish.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nTested-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a577ffc75d9194fe8cdb7479236f2081c26ca1f",
      "tree": "f15b037eb9d8463a8fe4a984e35b76e5af34ad67",
      "parents": [
        "d91dfbb41bb2e9bdbfbd2cc7078ed7436eab027a"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sat Apr 18 15:05:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 20 08:12:58 2009 -0700"
      },
      "message": "driver: dont update dev_name via device_add path\n\nnotice one system /proc/iomem some entries missed the name for pci_devices\n\nit turns that dev-\u003edev.kobj name is changed after device_add.\n\nfor pci code: via acpi_pci_root_driver.ops.add (aka acpi_pci_root_add)\n\u003d\u003d\u003e pci_acpi_scan_root is used to scan pci bus/device, and at the same\ntime we read the resource for pci_dev in the pci_read_bases, we have\nres-\u003ename \u003d pci_name(pci_dev); pci_name is calling dev_name.\n\nlater via acpi_pci_root_driver.ops.start (aka acpi_pci_root_start) \u003d\u003d\u003e\npci_bus_add_device to add all pci_dev in kobj tree.  pci_bus_add_device\nwill call device_add.\n\nactually in device_add\n\n        /* first, register with generic layer. */\n        error \u003d kobject_add(\u0026dev-\u003ekobj, dev-\u003ekobj.parent, \"%s\", dev_name(dev));\n        if (error)\n                goto Error;\n\nwill get one new name for that kobj, old name is freed.\n\n[Impact: fix corrupted names in /proc/iomem ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "014c90dbb9b63bae067afc80a7931a76c5268ae3",
      "tree": "0cdea5ea29cc1cee3ec2f03baf7afc3d6a4d45be",
      "parents": [
        "4ccb457966391295bd9b3644f6bdc9ddd97b6051"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 15 16:00:12 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Apr 16 16:17:11 2009 -0700"
      },
      "message": "driver core: prevent device_for_each_child from oopsing\n\nDavid Vrabel noticed that the wireless usb stack likes to call\ndevice_for_each_chile() with an empty bus.  This used to work fine, but\nnow oopses.  This patch fixes the oops and makes the code behave like it\nused to.\n\nReported-by: David Vrabel \u003cdavid.vrabel@csr.com\u003e\nTested-by: David Vrabel \u003cdavid.vrabel@csr.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "13977091a988fb0d21821c2221ddc920eba36b79",
      "tree": "9e077f6d22e351c3bab494d49d954d5e30deaa1b",
      "parents": [
        "31b07093c44a7a442394d44423e21d783f5523b8"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Mon Mar 30 14:37:25 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Apr 16 16:17:10 2009 -0700"
      },
      "message": "Driver Core: early platform driver\n\nV3 of the early platform driver implementation.\n\nPlatform drivers are great for embedded platforms because we can separate\ndriver configuration from the actual driver.  So base addresses,\ninterrupts and other configuration can be kept with the processor or board\ncode, and the platform driver can be reused by many different platforms.\n\nFor early devices we have nothing today.  For instance, to configure early\ntimers and early serial ports we cannot use platform devices.  This\nbecause the setup order during boot.  Timers are needed before the\nplatform driver core code is available.  The same goes for early printk\nsupport.  Early in this case means before initcalls.\n\nThese early drivers today have their configuration either hard coded or\nthey receive it using some special configuration method.  This is working\nquite well, but if we want to support both regular kernel modules and\nearly devices then we need to have two ways of configuring the same\ndriver.  A single way would be better.\n\nThe early platform driver patch is basically a set of functions that allow\ndrivers to register themselves and architecture code to locate them and\nprobe.  Registration happens through early_param().  The time for the\nprobe is decided by the architecture code.\n\nSee Documentation/driver-model/platform.txt for more details.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ],
  "next": "5247aecfe62266ffdedf2fc9e4243638554455b6"
}
