)]}'
{
  "log": [
    {
      "commit": "e9b62693ae0a1e13ccc97a6792d9a7770c8d1b5b",
      "tree": "c676609730533fc1b7c5e01992e46b6eaf75f99b",
      "parents": [
        "548453fd107f789f5f1bc2dc13cc432ceb3b5efd",
        "838cb6aba4cebcf4fcd06b90e2adf890bef884ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 16:36:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 16:36:46 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/juhl/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/juhl/trivial: (24 commits)\n  DOC:  A couple corrections and clarifications in USB doc.\n  Generate a slightly more informative error msg for bad HZ\n  fix typo \"is\" -\u003e \"if\" in Makefile\n  ext*: spelling fix prefered -\u003e preferred\n  DOCUMENTATION:  Use newer DEFINE_SPINLOCK macro in docs.\n  KEYS:  Fix the comment to match the file name in rxrpc-type.h.\n  RAID: remove trailing space from printk line\n  DMA engine: typo fixes\n  Remove unused MAX_NODES_SHIFT\n  MAINTAINERS: Clarify access to OCFS2 development mailing list.\n  V4L: Storage class should be before const qualifier (sn9c102)\n  V4L: Storage class should be before const qualifier\n  sonypi: Storage class should be before const qualifier\n  intel_menlow: Storage class should be before const qualifier\n  DVB: Storage class should be before const qualifier\n  arm: Storage class should be before const qualifier\n  ALSA: Storage class should be before const qualifier\n  acpi: Storage class should be before const qualifier\n  firmware_sample_driver.c: fix coding style\n  MAINTAINERS: Add ati_remote2 driver\n  ...\n\nFixed up trivial conflicts in firmware_sample_driver.c\n"
    },
    {
      "commit": "429f731dea577bdd43693940cdca524135287e6a",
      "tree": "932337b7d23dd736612c6b6e6601c50bc24cfc5f",
      "parents": [
        "85b375a613085b78531ec86369a51c2f3b922f95",
        "d2f5e80862d33a7746a40569840248a592dbc395"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:41:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:41:27 2008 -0700"
      },
      "message": "Merge branch \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc:\n  Deprecate the asm/semaphore.h files in feature-removal-schedule.\n  Convert asm/semaphore.h users to linux/semaphore.h\n  security: Remove unnecessary inclusions of asm/semaphore.h\n  lib: Remove unnecessary inclusions of asm/semaphore.h\n  kernel: Remove unnecessary inclusions of asm/semaphore.h\n  include: Remove unnecessary inclusions of asm/semaphore.h\n  fs: Remove unnecessary inclusions of asm/semaphore.h\n  drivers: Remove unnecessary inclusions of asm/semaphore.h\n  net: Remove unnecessary inclusions of asm/semaphore.h\n  arch: Remove unnecessary inclusions of asm/semaphore.h\n"
    },
    {
      "commit": "f5264481c8049673e2cc8c7aca410931f571ba2d",
      "tree": "cfe54747b75be1c83d2102d9e7f80c650602fcdc",
      "parents": [
        "1fb7c6e4cba35b5e7cef88b58d0a2ad164d801a5"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@suse.cz",
        "time": "Mon Apr 21 22:15:06 2008 +0000"
      },
      "committer": {
        "name": "Jesper Juhl",
        "email": "juhl@hera.kernel.org",
        "time": "Mon Apr 21 22:15:06 2008 +0000"
      },
      "message": "trivial: small cleanups\n\nThese are small cleanups all over the tree.\n\nTrivial style and comment changes to\n  fs/select.c, kernel/signal.c, kernel/stop_machine.c \u0026 mm/pdflush.c\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\n"
    },
    {
      "commit": "f70316dace2bb99730800d47044acb818c6735f6",
      "tree": "03c0178c8d6c0213a82b800f4a3e00c2da9a4d5c",
      "parents": [
        "fc0e474840d1fd96f28fbd76d4f36b80e7ad1cc3"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Apr 04 18:11:06 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 19 19:44:58 2008 +0200"
      },
      "message": "generic: use new set_cpus_allowed_ptr function\n\n  * Use new set_cpus_allowed_ptr() function added by previous patch,\n    which instead of passing the \"newly allowed cpus\" cpumask_t arg\n    by value,  pass it by pointer:\n\n    -int set_cpus_allowed(struct task_struct *p, cpumask_t new_mask)\n    +int set_cpus_allowed_ptr(struct task_struct *p, const cpumask_t *new_mask)\n\n  * Modify CPU_MASK_ALL\n\nDepends on:\n\t[sched-devel]: sched: add new set_cpus_allowed_ptr function\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a6550207538619bc9b90bac2e1d5e54902a432ad",
      "tree": "cc9bb9b5153810b544c2afcc7721353ff5ce957d",
      "parents": [
        "5a6483feb0c5193519625d0ea8c4254364d423cc"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 10:47:18 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:17:04 2008 -0400"
      },
      "message": "kernel: Remove unnecessary inclusions of asm/semaphore.h\n\nNone of these files use any of the functionality promised by\nasm/semaphore.h.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "6c6080f74c8d83a83a1e36bce803de15c0633898",
      "tree": "fd017cd3697ca30a169572018e88bf628983509b",
      "parents": [
        "bcf11cbeccd7d981d68567942ba6ec184890bc29"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Wed Feb 06 01:37:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:08 2008 -0800"
      },
      "message": "stopmachine: semaphore to mutex\n\n[akpm@linux-foundation.org: cleanup]\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "86ef5c9a8edd78e6bf92879f32329d89b2d55b5a",
      "tree": "7bf46885326a6fdbb0c3596855408e9a5634dd3a",
      "parents": [
        "d221938c049f4845da13c8593132595a6b9222a8"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "message": "cpu-hotplug: replace lock_cpu_hotplug() with get_online_cpus()\n\nReplace all lock_cpu_hotplug/unlock_cpu_hotplug from the kernel and use\nget_online_cpus and put_online_cpus instead as it highlights the\nrefcount semantics in these operations.\n\nThe new API guarantees protection against the cpu-hotplug operation, but\nit doesn\u0027t guarantee serialized access to any of the local data\nstructures. Hence the changes needs to be reviewed.\n\nIn case of pseries_add_processor/pseries_remove_processor, use\ncpu_maps_update_begin()/cpu_maps_update_done() as we\u0027re modifying the\ncpu_present_map there.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85653af7d488702165eba72c6c1dd0250fae4e70",
      "tree": "f2e1340e3c19eda7c28b1c73c1f9f39c13e381a1",
      "parents": [
        "647bd61a5f3a51a38c670f91af9d861ad66149a3"
      ],
      "author": {
        "name": "Satoru Takeuchi",
        "email": "takeuchi_satoru@jp.fujitsu.com",
        "time": "Sun Jul 15 23:39:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:41 2007 -0700"
      },
      "message": "Fix stop_machine_run problem with naughty real time process\n\nstop_machine_run() does its work on \"kstopmachine\" thread having max\npriority.  However that thread get such priority after woken up.\nTherefore, in the following case ...\n\n  - \"kstopmachine\" try to run on CPU1\n\n  - There is a real time process which doesn\u0027t relinquish CPU time\n    voluntary on CPU1\n\n...  \"kstopmachine\" can\u0027t start to run and the CPU on which\n    stop_machine_run() is runing hangs up.  To fix this problem, call\n    sched_setscheduler() before waking up that thread.\n\nSigned-off-by: Satoru Takeuchi \u003ctakeuchi_satoru@jp.fujitsu.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a12bb44471b819c7f33d8a83044e7116c124e3d5",
      "tree": "cdf3fee16c535d70659fd343d11b3578941f3596",
      "parents": [
        "2d3fbbb391e280724f7f7804ab00ff61cf1b6a4c"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu May 10 22:22:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 08:29:34 2007 -0700"
      },
      "message": "stop_machine() now uses hard_irq_disable\n\nAdd a call to hard_irq_disable() to stop_machine so that we make sure IRQs are\nreally disabled and not only lazy-disabled on archs like powerpc as some users\nof stop_machine() may rely on that.\n\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee527cd3a20c2aeaac17d939e5d011f7a76d69f5",
      "tree": "113e8dd439c5a3656be07058f055e6340ad41623",
      "parents": [
        "616883df78bd4b3fcdb6ddc39bd3d4cb902bfa32"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Tue May 08 00:25:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:00 2007 -0700"
      },
      "message": "Use stop_machine_run in the Intel RNG driver\n\nReplace call_smp_function with stop_machine_run in the Intel RNG driver.\n\nCPU A has done read_lock(\u0026lock)\nCPU B has done write_lock_irq(\u0026lock) and is waiting for A to release the lock.\n\nA third CPU calls call_smp_function and issues the IPI.  CPU A takes CPU\nC\u0027s IPI.  CPU B is waiting with interrupts disabled and does not see the\nIPI.  CPU C is stuck waiting for CPU B to respond to the IPI.\n\nDeadlock.\n\nThe solution is to use stop_machine_run instead of call_smp_function\n(call_smp_function should not be called in situations where the CPUs may be\nsuspended).\n\n[haruo.tomita@toshiba.co.jp: fix a typo in mod_init()]\n[haruo.tomita@toshiba.co.jp: fix memory leak]\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: \"Tomita, Haruo\" \u003charuo.tomita@toshiba.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5582ca21af82929d5cd3613321ac9233c492ebc",
      "tree": "33d2b5cc6a42efac04320c7b566c55ca5388dfe9",
      "parents": [
        "39f0247d3823e4e0bf8f6838a10362864b1e1053"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Sep 29 02:01:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:24 2006 -0700"
      },
      "message": "[PATCH] stop_machine.c copyright\n\nI had to look back: this code was extracted from the module.c code in 2005.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4edb9a143e31d2e191c199262226e1a5923ff8f7",
      "tree": "c876dfb150124613dfb0564781de4fb2bf424d7c",
      "parents": [
        "ecdc63948763586e101108dfe1ba316ec069fe39"
      ],
      "author": {
        "name": "Yingchao Zhou",
        "email": "yingchao.zhou@gmail.com",
        "time": "Sun Aug 27 01:23:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 27 11:01:31 2006 -0700"
      },
      "message": "[PATCH] Remove redundant up() in stop_machine()\n\nAn up() is called in kernel/stop_machine.c on failure, and also in the\ncaller (unconditionally).\n\nSigned-off-by: Zhou Yingchao \u003cyingchao.zhou@gmail.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d8cb7c1ded6e5a80a7335716dde60784a0d51c1d",
      "tree": "e7c975ad049fa84549ef1c9fef45f9f96ccae829",
      "parents": [
        "38c54ee8d5338f49aca986081ea41a987c15cf9d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Jul 03 17:32:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 21:25:20 2006 -0700"
      },
      "message": "[PATCH] revert \"kthread: convert stop_machine into a kthread\"\n\nJiri reports that the stop_machin kthread conversion caused his machine to\nhang when suspending.  Hyperthreading is apparently involved.\n\nI don\u0027t see why that would be and I can\u0027t reproduce it.  Revert to the 2.6.17\ncode.\n\nCc: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8bdd1d1250d55afe403ac4affa6ccc5f9e60468f",
      "tree": "b7ffa764ccaa88e07753f9a75d837ea47ea9ea01",
      "parents": [
        "2b943cf09d75c0dfbfd22548988df48f6c24c727"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Sun Jun 25 05:49:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:22 2006 -0700"
      },
      "message": "[PATCH] kthread: convert stop_machine into a kthread\n\n- Update stop_machine.c to spawn stop_machine as kthreads rather than the\n  deprecated kernel_threads.\n\n- Update stop_machine to use the more efficient kthread_bind() before\n  running task in place of set_cpus_allowed() after.\n\n[akpm@osdl.org: remove now-wrong set_cpus_allowed()]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed653a640419cd9d1ad0f8dc176478e6634a694e",
      "tree": "9d7868679e51e7152e1fedfd34514b79ec3e4048",
      "parents": [
        "df2e71fb9115a8d4f721fb1464db09adc8332bc5"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Mon Jan 09 20:51:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:25 2006 -0800"
      },
      "message": "[PATCH] Remove set_fs() in stop_machine()\n\n\r)\n\nFrom: Brian Gerst \u003cbgerst@didntduck.org\u003e\n\nCall sched_setscheduler() directly instead.\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4557398f8cbaf9f254cff747534b4724c7f75c4f",
      "tree": "052b59279b1312a4fde83a76feb4a7a0c5cf7df1",
      "parents": [
        "c5b609797b8e212dbfaf23944da8bf8c53233d5c"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@sw.ru",
        "time": "Sun Nov 13 16:07:30 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:16 2005 -0800"
      },
      "message": "[PATCH] stop_machine() vs. synchronous IPI send deadlock\n\nThis fixes deadlock of stop_machine() vs.  synchronous IPI send.  The\nproblem is that stop_machine() disables interrupts before disabling\npreemption on other CPUs.  So if another CPU is preempted and then calls\nsomething like flush_tlb_all() it will deadlock with CPU doing\nstop_machine() and which can\u0027t process IPI due to disabled IRQs.\n\nI changed stop_machine() to do the same things exactly as it does on other\nCPUs, i.e.  it should disable preemption first on _all_ CPUs including\nitself and only after that disable IRQs.\n\nSigned-off-by: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Andrey Savochkin\" \u003csaw@sawoct.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39c715b71740c4a78ba4769fb54826929bac03cb",
      "tree": "94dd679dfc8e6c2db65971739aa8c8c6206f8174",
      "parents": [
        "84929801e14d968caeb84795bfbb88f04283fbd9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 21 17:14:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:13 2005 -0700"
      },
      "message": "[PATCH] smp_processor_id() cleanup\n\nThis patch implements a number of smp_processor_id() cleanup ideas that\nArjan van de Ven and I came up with.\n\nThe previous __smp_processor_id/_smp_processor_id/smp_processor_id API\nspaghetti was hard to follow both on the implementational and on the\nusage side.\n\nSome of the complexity arose from picking wrong names, some of the\ncomplexity comes from the fact that not all architectures defined\n__smp_processor_id.\n\nIn the new code, there are two externally visible symbols:\n\n - smp_processor_id(): debug variant.\n\n - raw_smp_processor_id(): nondebug variant. Replaces all existing\n   uses of _smp_processor_id() and __smp_processor_id(). Defined\n   by every SMP architecture in include/asm-*/smp.h.\n\nThere is one new internal symbol, dependent on DEBUG_PREEMPT:\n\n - debug_smp_processor_id(): internal debug variant, mapped to\n                             smp_processor_id().\n\nAlso, i moved debug_smp_processor_id() from lib/kernel_lock.c into a new\nlib/smp_processor_id.c file.  All related comments got updated and/or\nclarified.\n\nI have build/boot tested the following 8 .config combinations on x86:\n\n {SMP,UP} x {PREEMPT,!PREEMPT} x {DEBUG_PREEMPT,!DEBUG_PREEMPT}\n\nI have also build/boot tested x64 on UP/PREEMPT/DEBUG_PREEMPT.  (Other\narchitectures are untested, but should work just fine.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d59dd4620fb8d6422555a9e2b82a707718e68327",
      "tree": "78205657d24efcaa3f8314064951ac3814ed95a7",
      "parents": [
        "0d8d4d42f2d00eb65262b49f4edd4cf7ef4eb6fc"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "message": "[PATCH] use smp_mb/wmb/rmb where possible\n\nReplace a number of memory barriers with smp_ variants.  This means we won\u0027t\ntake the unnecessary hit on UP machines.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
