)]}'
{
  "log": [
    {
      "commit": "d645727bdc2aed8e2e0e9496248f735481b5049a",
      "tree": "079fa3cf369dbf0dc0663fe1b0a62460c522a8e9",
      "parents": [
        "cd166bd0dde265a97dd9aa8e3451a2646d96d04b",
        "310d6b671588dd7695cbc0d09d02e41d94a42bed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 18:18:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 18:18:05 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6: (30 commits)\n  [S390] wire up sys_perf_counter_open\n  [S390] wire up sys_rt_tgsigqueueinfo\n  [S390] ftrace: add system call tracer support\n  [S390] ftrace: add function graph tracer support\n  [S390] ftrace: add function trace mcount test support\n  [S390] ftrace: add dynamic ftrace support\n  [S390] kprobes: use probe_kernel_write\n  [S390] maccess: arch specific probe_kernel_write() implementation\n  [S390] maccess: add weak attribute to probe_kernel_write\n  [S390] profile_tick called twice\n  [S390] dasd: forward internal errors to dasd_sleep_on caller\n  [S390] dasd: sync after async probe\n  [S390] dasd: check_characteristics cleanup\n  [S390] dasd: no High Performance FICON in 31-bit mode\n  [S390] dcssblk: revert devt conversion\n  [S390] qdio: fix access beyond ARRAY_SIZE of irq_ptr-\u003e{in,out}put_qs\n  [S390] vmalloc: add vmalloc kernel parameter support\n  [S390] uaccess: use might_fault() instead of might_sleep()\n  [S390] 3270: lock dependency fixes\n  [S390] 3270: do not register with tty_register_device\n  ...\n"
    },
    {
      "commit": "c6f37f12197ac3bd2e5a35f2f0e195ae63d437de",
      "tree": "e9609ca63d211911582afcc4b8314887b85a6c46",
      "parents": [
        "e240b58c79144708530138e05f17c6d0d8d744a8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 22:16:31 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "PM/Suspend: Do not shrink memory before suspend\n\nRemove the shrinking of memory from the suspend-to-RAM code, where\nit is not really necessary.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Nigel Cunningham \u003cnigel@tuxonice.net\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "8429db5c6336083594036c30f49401405d536911",
      "tree": "00ab1aa8e222f384bac0e66b7da195279b1c7698",
      "parents": [
        "7e85ee0c1d15ca5f8bff0f514f158eba1742dd87"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 15:58:59 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 18:53:58 2009 +0300"
      },
      "message": "slab: setup cpu caches later on when interrupts are enabled\n\nFixes the following boot-time warning:\n\n  [    0.000000] ------------[ cut here ]------------\n  [    0.000000] WARNING: at kernel/smp.c:369 smp_call_function_many+0x56/0x1bc()\n  [    0.000000] Hardware name:\n  [    0.000000] Modules linked in:\n  [    0.000000] Pid: 0, comm: swapper Not tainted 2.6.30 #492\n  [    0.000000] Call Trace:\n  [    0.000000]  [\u003cffffffff8149e021\u003e] ? _spin_unlock+0x4f/0x5c\n  [    0.000000]  [\u003cffffffff8108f11b\u003e] ? smp_call_function_many+0x56/0x1bc\n  [    0.000000]  [\u003cffffffff81061764\u003e] warn_slowpath_common+0x7c/0xa9\n  [    0.000000]  [\u003cffffffff810617a5\u003e] warn_slowpath_null+0x14/0x16\n  [    0.000000]  [\u003cffffffff8108f11b\u003e] smp_call_function_many+0x56/0x1bc\n  [    0.000000]  [\u003cffffffff810f3e00\u003e] ? do_ccupdate_local+0x0/0x54\n  [    0.000000]  [\u003cffffffff810f3e00\u003e] ? do_ccupdate_local+0x0/0x54\n  [    0.000000]  [\u003cffffffff8108f2be\u003e] smp_call_function+0x3d/0x68\n  [    0.000000]  [\u003cffffffff810f3e00\u003e] ? do_ccupdate_local+0x0/0x54\n  [    0.000000]  [\u003cffffffff81066fd8\u003e] on_each_cpu+0x31/0x7c\n  [    0.000000]  [\u003cffffffff810f64f5\u003e] do_tune_cpucache+0x119/0x454\n  [    0.000000]  [\u003cffffffff81087080\u003e] ? lockdep_init_map+0x94/0x10b\n  [    0.000000]  [\u003cffffffff818133b0\u003e] ? kmem_cache_init+0x421/0x593\n  [    0.000000]  [\u003cffffffff810f69cf\u003e] enable_cpucache+0x68/0xad\n  [    0.000000]  [\u003cffffffff818133c3\u003e] kmem_cache_init+0x434/0x593\n  [    0.000000]  [\u003cffffffff8180987c\u003e] ? mem_init+0x156/0x161\n  [    0.000000]  [\u003cffffffff817f8aae\u003e] start_kernel+0x1cc/0x3b9\n  [    0.000000]  [\u003cffffffff817f829a\u003e] x86_64_start_reservations+0xaa/0xae\n  [    0.000000]  [\u003cffffffff817f837f\u003e] x86_64_start_kernel+0xe1/0xe8\n  [    0.000000] ---[ end trace 4eaa2a86a8e2da22 ]---\n\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "7e85ee0c1d15ca5f8bff0f514f158eba1742dd87",
      "tree": "8f9c21f0df6bea88740d7dd48834ac9ffc238e93",
      "parents": [
        "eb91f1d0a531289e18f5587dc197d12a251c66a3"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 14:03:06 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 18:53:33 2009 +0300"
      },
      "message": "slab,slub: don\u0027t enable interrupts during early boot\n\nAs explained by Benjamin Herrenschmidt:\n\n  Oh and btw, your patch alone doesn\u0027t fix powerpc, because it\u0027s missing\n  a whole bunch of GFP_KERNEL\u0027s in the arch code... You would have to\n  grep the entire kernel for things that check slab_is_available() and\n  even then you\u0027ll be missing some.\n\n  For example, slab_is_available() didn\u0027t always exist, and so in the\n  early days on powerpc, we used a mem_init_done global that is set form\n  mem_init() (not perfect but works in practice). And we still have code\n  using that to do the test.\n\nTherefore, mask out __GFP_WAIT, __GFP_IO, and __GFP_FS in the slab allocators\nin early boot code to avoid enabling interrupts.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "eb91f1d0a531289e18f5587dc197d12a251c66a3",
      "tree": "1f790559b312d7481aecad90a7fd4ccf47ccdfa2",
      "parents": [
        "55cd63676e0c5710fbe1ea86dfd9f8ea9aaa90f2"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 14:56:09 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 18:34:32 2009 +0300"
      },
      "message": "slab: fix gfp flag in setup_cpu_cache()\n\nFixes the following warning during bootup when compiling with CONFIG_SLAB:\n\n  [    0.000000] ------------[ cut here ]------------\n  [    0.000000] WARNING: at kernel/lockdep.c:2282 lockdep_trace_alloc+0x91/0xb9()\n  [    0.000000] Hardware name:\n  [    0.000000] Modules linked in:\n  [    0.000000] Pid: 0, comm: swapper Not tainted 2.6.30 #491\n  [    0.000000] Call Trace:\n  [    0.000000]  [\u003cffffffff81087d84\u003e] ? lockdep_trace_alloc+0x91/0xb9\n  [    0.000000]  [\u003cffffffff81061764\u003e] warn_slowpath_common+0x7c/0xa9\n  [    0.000000]  [\u003cffffffff810617a5\u003e] warn_slowpath_null+0x14/0x16\n  [    0.000000]  [\u003cffffffff81087d84\u003e] lockdep_trace_alloc+0x91/0xb9\n  [    0.000000]  [\u003cffffffff810f5b03\u003e] kmem_cache_alloc_node_notrace+0x26/0xdf\n  [    0.000000]  [\u003cffffffff81487f4e\u003e] ? setup_cpu_cache+0x7e/0x210\n  [    0.000000]  [\u003cffffffff81487fe3\u003e] setup_cpu_cache+0x113/0x210\n  [    0.000000]  [\u003cffffffff810f73ff\u003e] kmem_cache_create+0x409/0x486\n  [    0.000000]  [\u003cffffffff818131c1\u003e] kmem_cache_init+0x232/0x593\n  [    0.000000]  [\u003cffffffff8180987c\u003e] ? mem_init+0x156/0x161\n  [    0.000000]  [\u003cffffffff817f8aae\u003e] start_kernel+0x1cc/0x3b9\n  [    0.000000]  [\u003cffffffff817f829a\u003e] x86_64_start_reservations+0xaa/0xae\n  [    0.000000]  [\u003cffffffff817f837f\u003e] x86_64_start_kernel+0xe1/0xe8\n  [    0.000000] ---[ end trace 4eaa2a86a8e2da22 ]---\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "d93f82b6e0c12a4373f2d04b1f92fcb2d175b62c",
      "tree": "622e2232d7ccb3ceba765051ecb9895fa068125f",
      "parents": [
        "f3d0a0d96a7a2b4e1335437f68b3181ab252050a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Jun 12 10:26:41 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:37 2009 +0200"
      },
      "message": "[S390] maccess: add weak attribute to probe_kernel_write\n\nprobe_kernel_write() gets used to write to the kernel address space.\nE.g. to patch the kernel (kgdb, ftrace, kprobes...). Some architectures\nhowever enable write protection for the kernel text section, so that\nwrites to this region would fault.\nThis patch allows to specify an architecture specific version of\nprobe_kernel_write() which allows to handle and bypass write protection\nof the text segment.\nThat way it is still possible to catch random writes to kernel text\nand explicitly allow writes via this interface.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ca371c0d7e23d0d0afae65fc83a0e91cf7399573",
      "tree": "20ca26fbdceefe25d1c362dc23a2152c1aac8b4c",
      "parents": [
        "8ebf975608aaebd7feb33d77f07ba21a6380e086"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Fri Jun 12 10:33:53 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 11:00:54 2009 +0300"
      },
      "message": "memcg: fix page_cgroup fatal error in FLATMEM\n\nNow, SLAB is configured in very early stage and it can be used in\ninit routine now.\n\nBut replacing alloc_bootmem() in FLAT/DISCONTIGMEM\u0027s page_cgroup()\ninitialization breaks the allocation, now.\n(Works well in SPARSEMEM case...it supports MEMORY_HOTPLUG and\n size of page_cgroup is in reasonable size (\u003c 1 \u003c\u003c MAX_ORDER.)\n\nThis patch revive FLATMEM+memory cgroup by using alloc_bootmem.\n\nIn future,\nWe stop to support FLATMEM (if no users) or rewrite codes for flatmem\ncompletely.But this will adds more messy codes and overheads.\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nTested-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nTested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "512626a04e72aca60effe111fa0333ed0b195d21",
      "tree": "c22e23b0dcc2dd2ff5a9a96a007de6799e9223de",
      "parents": [
        "8a1ca8cedd108c8e76a6ab34079d0bbb4f244799",
        "3aa27bbe7a6536d1ec859d3a97caf3319b5081b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 14:15:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 14:15:57 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://linux-arm.org/linux-2.6\n\n* \u0027for-linus\u0027 of git://linux-arm.org/linux-2.6:\n  kmemleak: Add the corresponding MAINTAINERS entry\n  kmemleak: Simple testing module for kmemleak\n  kmemleak: Enable the building of the memory leak detector\n  kmemleak: Remove some of the kmemleak false positives\n  kmemleak: Add modules support\n  kmemleak: Add kmemleak_alloc callback from alloc_large_system_hash\n  kmemleak: Add the vmalloc memory allocation/freeing hooks\n  kmemleak: Add the slub memory allocation/freeing hooks\n  kmemleak: Add the slob memory allocation/freeing hooks\n  kmemleak: Add the slab memory allocation/freeing hooks\n  kmemleak: Add documentation on the memory leak detector\n  kmemleak: Add the base support\n\nManual conflict resolution (with the slab/earlyboot changes) in:\n\tdrivers/char/vt.c\n\tinit/main.c\n\tmm/slab.c\n"
    },
    {
      "commit": "8a1ca8cedd108c8e76a6ab34079d0bbb4f244799",
      "tree": "636c715524f1718599209cc289908ea44b6cb859",
      "parents": [
        "b640f042faa2a2fad6464f259a8afec06e2f6386",
        "940010c5a314a7bd9b498593bc6ba1718ac5aec5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 14:01:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 14:01:07 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (574 commits)\n  perf_counter: Turn off by default\n  perf_counter: Add counter-\u003eid to the throttle event\n  perf_counter: Better align code\n  perf_counter: Rename L2 to LL cache\n  perf_counter: Standardize event names\n  perf_counter: Rename enums\n  perf_counter tools: Clean up u64 usage\n  perf_counter: Rename perf_counter_limit sysctl\n  perf_counter: More paranoia settings\n  perf_counter: powerpc: Implement generalized cache events for POWER processors\n  perf_counters: powerpc: Add support for POWER7 processors\n  perf_counter: Accurate period data\n  perf_counter: Introduce struct for sample data\n  perf_counter tools: Normalize data using per sample period data\n  perf_counter: Annotate exit ctx recursion\n  perf_counter tools: Propagate signals properly\n  perf_counter tools: Small frequency related fixes\n  perf_counter: More aggressive frequency adjustment\n  perf_counter/x86: Fix the model number of Intel Core2 processors\n  perf_counter, x86: Correct some event and umask values for Intel processors\n  ...\n"
    },
    {
      "commit": "b640f042faa2a2fad6464f259a8afec06e2f6386",
      "tree": "44a2943f91859422a207612229031a767c0accd5",
      "parents": [
        "871fa90791a6f83dd8e2e489feb9534a8c02088d",
        "b8ec757390282e21d349bf6b602a8cb182da0429"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 12:25:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 12:25:06 2009 -0700"
      },
      "message": "Merge branch \u0027topic/slab/earlyboot\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027topic/slab/earlyboot\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  vgacon: use slab allocator instead of the bootmem allocator\n  irq: use kcalloc() instead of the bootmem allocator\n  sched: use slab in cpupri_init()\n  sched: use alloc_cpumask_var() instead of alloc_bootmem_cpumask_var()\n  memcg: don\u0027t use bootmem allocator in setup code\n  irq/cpumask: make memoryless node zero happy\n  x86: remove some alloc_bootmem_cpumask_var calling\n  vt: use kzalloc() instead of the bootmem allocator\n  sched: use kzalloc() instead of the bootmem allocator\n  init: introduce mm_init()\n  vmalloc: use kzalloc() instead of alloc_bootmem()\n  slab: setup allocators earlier in the boot sequence\n  bootmem: fix slab fallback on numa\n  bootmem: use slab if bootmem is no longer available\n"
    },
    {
      "commit": "c9059598ea8981d02356eead3188bf7fa4d717b8",
      "tree": "03e73b20a30e988da7c6a3e0ad93b2dc5843274d",
      "parents": [
        "0a33f80a8373eca7f4bea3961d1346c3815fa5ed",
        "b0fd271d5fba0b2d00888363f3869e3f9b26caa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:52:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 11:10:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block: (153 commits)\n  block: add request clone interface (v2)\n  floppy: fix hibernation\n  ramdisk: remove long-deprecated \"ramdisk\u003d\" boot-time parameter\n  fs/bio.c: add missing __user annotation\n  block: prevent possible io_context-\u003erefcount overflow\n  Add serial number support for virtio_blk, V4a\n  block: Add missing bounce_pfn stacking and fix comments\n  Revert \"block: Fix bounce limit setting in DM\"\n  cciss: decode unit attention in SCSI error handling code\n  cciss: Remove no longer needed sendcmd reject processing code\n  cciss: change SCSI error handling routines to work with interrupts enabled.\n  cciss: separate error processing and command retrying code in sendcmd_withirq_core()\n  cciss: factor out fix target status processing code from sendcmd functions\n  cciss: simplify interface of sendcmd() and sendcmd_withirq()\n  cciss: factor out core of sendcmd_withirq() for use by SCSI error handling code\n  cciss: Use schedule_timeout_uninterruptible in SCSI error handling code\n  block: needs to set the residual length of a bidi request\n  Revert \"block: implement blkdev_readpages\"\n  block: Fix bounce limit setting in DM\n  Removed reference to non-existing file Documentation/PCI/PCI-DMA-mapping.txt\n  ...\n\nManually fix conflicts with tracing updates in:\n\tblock/blk-sysfs.c\n\tdrivers/ide/ide-atapi.c\n\tdrivers/ide/ide-cd.c\n\tdrivers/ide/ide-floppy.c\n\tdrivers/ide/ide-tape.c\n\tinclude/trace/events/block.h\n\tkernel/trace/blktrace.c\n"
    },
    {
      "commit": "3296ca27f50ecbd71db1d808c7a72d311027f919",
      "tree": "833eaa58b2013bda86d4bd95faf6efad7a2d5ca4",
      "parents": [
        "e893123c7378192c094747dadec326b7c000c190",
        "73fbad283cfbbcf02939bdbda31fc4a30e729cca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:01:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:01:41 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (44 commits)\n  nommu: Provide mmap_min_addr definition.\n  TOMOYO: Add description of lists and structures.\n  TOMOYO: Remove unused field.\n  integrity: ima audit dentry_open failure\n  TOMOYO: Remove unused parameter.\n  security: use mmap_min_addr indepedently of security models\n  TOMOYO: Simplify policy reader.\n  TOMOYO: Remove redundant markers.\n  SELinux: define audit permissions for audit tree netlink messages\n  TOMOYO: Remove unused mutex.\n  tomoyo: avoid get+put of task_struct\n  smack: Remove redundant initialization.\n  integrity: nfsd imbalance bug fix\n  rootplug: Remove redundant initialization.\n  smack: do not beyond ARRAY_SIZE of data\n  integrity: move ima_counts_get\n  integrity: path_check update\n  IMA: Add __init notation to ima functions\n  IMA: Minimal IMA policy and boot param for TCB IMA policy\n  selinux: remove obsolete read buffer limit from sel_read_bool\n  ...\n"
    },
    {
      "commit": "959982fee4e635c61780e989c3e34267143fcc02",
      "tree": "08ff2d07020a908a10bbebb64729ca5b325843f3",
      "parents": [
        "dad213aeb59718623fc59defeff95fe8c3feb8a0"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu May 28 18:15:16 2009 -0700"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:27:10 2009 +0300"
      },
      "message": "memcg: don\u0027t use bootmem allocator in setup code\n\nThe bootmem allocator is no longer available for page_cgroup_init() because we\nset up the kernel slab allocator much earlier now.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "43ebdac42f16037263b52a5aeedcd1bfa4a9bb29",
      "tree": "8f288e9875418fbebd48f9bb31ac22ebae37838c",
      "parents": [
        "83b519e8b9572c319c8e0c615ee5dd7272856090"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon May 25 15:01:35 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:17:05 2009 +0300"
      },
      "message": "vmalloc: use kzalloc() instead of alloc_bootmem()\n\nWe can call vmalloc_init() after kmem_cache_init() and use kzalloc() instead of\nthe bootmem allocator when initializing vmalloc data structures.\n\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "83b519e8b9572c319c8e0c615ee5dd7272856090",
      "tree": "ecf130629f6228d509bb52c533ca2287f966f972",
      "parents": [
        "c91c4773b334d4d3a6d44626dc2a558ad97b86f3"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Jun 10 19:40:04 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:15:56 2009 +0300"
      },
      "message": "slab: setup allocators earlier in the boot sequence\n\nThis patch makes kmalloc() available earlier in the boot sequence so we can get\nrid of some bootmem allocations. The bulk of the changes are due to\nkmem_cache_init() being called with interrupts disabled which requires some\nchanges to allocator boostrap code.\n\nNote: 32-bit x86 does WP protect test in mem_init() so we must setup traps\nbefore we call mem_init() during boot as reported by Ingo Molnar:\n\n  We have a hard crash in the WP-protect code:\n\n  [    0.000000] Checking if this processor honours the WP bit even in supervisor mode...BUG: Int 14: CR2 ffcff000\n  [    0.000000]      EDI 00000188  ESI 00000ac7  EBP c17eaf9c  ESP c17eaf8c\n  [    0.000000]      EBX 000014e0  EDX 0000000e  ECX 01856067  EAX 00000001\n  [    0.000000]      err 00000003  EIP c10135b1   CS 00000060  flg 00010002\n  [    0.000000] Stack: c17eafa8 c17fd410 c16747bc c17eafc4 c17fd7e5 000011fd f8616000 c18237cc\n  [    0.000000]        00099800 c17bb000 c17eafec c17f1668 000001c5 c17f1322 c166e039 c1822bf0\n  [    0.000000]        c166e033 c153a014 c18237cc 00020800 c17eaff8 c17f106a 00020800 01ba5003\n  [    0.000000] Pid: 0, comm: swapper Not tainted 2.6.30-tip-02161-g7a74539-dirty #52203\n  [    0.000000] Call Trace:\n  [    0.000000]  [\u003cc15357c2\u003e] ? printk+0x14/0x16\n  [    0.000000]  [\u003cc10135b1\u003e] ? do_test_wp_bit+0x19/0x23\n  [    0.000000]  [\u003cc17fd410\u003e] ? test_wp_bit+0x26/0x64\n  [    0.000000]  [\u003cc17fd7e5\u003e] ? mem_init+0x1ba/0x1d8\n  [    0.000000]  [\u003cc17f1668\u003e] ? start_kernel+0x164/0x2f7\n  [    0.000000]  [\u003cc17f1322\u003e] ? unknown_bootoption+0x0/0x19c\n  [    0.000000]  [\u003cc17f106a\u003e] ? __init_begin+0x6a/0x6f\n\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "c91c4773b334d4d3a6d44626dc2a558ad97b86f3",
      "tree": "7703e307ec9b33577365130dc0e8665333ea1487",
      "parents": [
        "441c7e0a2ed38827b48b907bd1fa29faba2017a3"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 08:10:28 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:15:54 2009 +0300"
      },
      "message": "bootmem: fix slab fallback on numa\n\nIf the user requested bootmem allocation on a specific node, we should use\nkzalloc_node() for the fallback allocation.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "441c7e0a2ed38827b48b907bd1fa29faba2017a3",
      "tree": "7e614a14e34a39a63520600b810319da9f0f98ca",
      "parents": [
        "991ec02cdca33b03a132a0cacfe6f0aa0be9aa8d"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Jun 10 20:05:53 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:10:41 2009 +0300"
      },
      "message": "bootmem: use slab if bootmem is no longer available\n\nAs a preparation for initializing the slab allocator early, make sure the\nbootmem allocator does not crash and burn if someone calls it after slab is up;\notherwise we\u0027d need a flag day for switching to early slab.\n\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "0822ee4ac1ae6af5a953f97f75553738834b10b9",
      "tree": "e7c27ca1abcaa7f0dad8de409c84601accf90565",
      "parents": [
        "3bba00d7bdd57cb7aa739b751fa0a1fbbb04dc18"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:24:14 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:04:19 2009 +0100"
      },
      "message": "kmemleak: Simple testing module for kmemleak\n\nThis patch adds a loadable module that deliberately leaks memory. It\nis used for testing various memory leaking scenarios.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "3bba00d7bdd57cb7aa739b751fa0a1fbbb04dc18",
      "tree": "e4a8634757a489f9a5c28d14dcb7d3f7e00fe348",
      "parents": [
        "2e1483c995bbd0fa6cbd055ad76088a520799ba4"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:24:13 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:04:18 2009 +0100"
      },
      "message": "kmemleak: Enable the building of the memory leak detector\n\nThis patch adds the Kconfig.debug and Makefile entries needed for\nbuilding kmemleak into the kernel.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "dbb1f81ca67a56c6cfce4c94d07c76378fd4af9e",
      "tree": "a3a973f1790713fea944b293bb439c7fe84ea1ab",
      "parents": [
        "89219d37a2377c44fde7bff0bf0623453c05329a"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:23:19 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:30 2009 +0100"
      },
      "message": "kmemleak: Add kmemleak_alloc callback from alloc_large_system_hash\n\nThe alloc_large_system_hash function is called from various places in\nthe kernel and it contains pointers to other allocated structures. It\ntherefore needs to be traced by kmemleak.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "89219d37a2377c44fde7bff0bf0623453c05329a",
      "tree": "8183d7bb948f06868e3687b59336c8a99360ce7b",
      "parents": [
        "06f22f13f3cc2eff00db09f053218e5d4b757bc8"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:23:19 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:30 2009 +0100"
      },
      "message": "kmemleak: Add the vmalloc memory allocation/freeing hooks\n\nThis patch adds the callbacks to kmemleak_(alloc|free) functions from\nvmalloc/vfree.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "06f22f13f3cc2eff00db09f053218e5d4b757bc8",
      "tree": "ec913d87a0ed78912e22c78ce03d65f9ebd7061d",
      "parents": [
        "4374e616d28e65265a5b433ceece275449f3d2e3"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:23:18 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:30 2009 +0100"
      },
      "message": "kmemleak: Add the slub memory allocation/freeing hooks\n\nThis patch adds the callbacks to kmemleak_(alloc|free) functions from the\nslub allocator.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "4374e616d28e65265a5b433ceece275449f3d2e3",
      "tree": "3261fe75f806c87b447f8273dd4c101bd656881d",
      "parents": [
        "d5cff635290aec9ad7e6ee546aa4fae895361cbb"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:23:17 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:30 2009 +0100"
      },
      "message": "kmemleak: Add the slob memory allocation/freeing hooks\n\nThis patch adds the callbacks to kmemleak_(alloc|free) functions from the\nslob allocator.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "d5cff635290aec9ad7e6ee546aa4fae895361cbb",
      "tree": "172d99e0775a2e858d6cfa3ba0a197ecfdd03fce",
      "parents": [
        "04f70336c80c43a15e617b36c2043dfa0ad6ed0f"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:22:40 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:29 2009 +0100"
      },
      "message": "kmemleak: Add the slab memory allocation/freeing hooks\n\nThis patch adds the callbacks to kmemleak_(alloc|free) functions from\nthe slab allocator. The patch also adds the SLAB_NOLEAKTRACE flag to\navoid recursive calls to kmemleak when it allocates its own data\nstructures.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nReviewed-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "3c7b4e6b8be4c16f1e6e5c558e33b7ff0db2dfaf",
      "tree": "3722fc5220bf8d611def5618758b05160ff05312",
      "parents": [
        "991ec02cdca33b03a132a0cacfe6f0aa0be9aa8d"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 13:22:39 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jun 11 17:03:28 2009 +0100"
      },
      "message": "kmemleak: Add the base support\n\nThis patch adds the base support for the kernel memory leak\ndetector. It traces the memory allocation/freeing in a way similar to\nthe Boehm\u0027s conservative garbage collector, the difference being that\nthe unreferenced objects are not freed but only shown in\n/sys/kernel/debug/kmemleak. Enabling this feature introduces an\noverhead to memory allocations.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "940010c5a314a7bd9b498593bc6ba1718ac5aec5",
      "tree": "d141e08ced08c40c6a8e3ab2cdecde5ff14e560f",
      "parents": [
        "8dc8e5e8bc0ce00b0f656bf972f67cd8a72759e5",
        "991ec02cdca33b03a132a0cacfe6f0aa0be9aa8d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 17:55:42 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 17:55:42 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nConflicts:\n\tarch/x86/kernel/irqinit.c\n\tarch/x86/kernel/irqinit_64.c\n\tarch/x86/kernel/traps.c\n\tarch/x86/mm/fault.c\n\tinclude/linux/sched.h\n\tkernel/exit.c\n"
    },
    {
      "commit": "862366118026a358882eefc70238dbcc3db37aac",
      "tree": "4eb62bc10327a5afac064a95a091ea05ecd2acc1",
      "parents": [
        "57eee9ae7bbcfb692dc96c739a5184adb6349733",
        "511b01bdf64ad8a38414096eab283c7784aebfc4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 19:53:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 19:53:40 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (244 commits)\n  Revert \"x86, bts: reenable ptrace branch trace support\"\n  tracing: do not translate event helper macros in print format\n  ftrace/documentation: fix typo in function grapher name\n  tracing/events: convert block trace points to TRACE_EVENT(), fix !CONFIG_BLOCK\n  tracing: add protection around module events unload\n  tracing: add trace_seq_vprint interface\n  tracing: fix the block trace points print size\n  tracing/events: convert block trace points to TRACE_EVENT()\n  ring-buffer: fix ret in rb_add_time_stamp\n  ring-buffer: pass in lockdep class key for reader_lock\n  tracing: add annotation to what type of stack trace is recorded\n  tracing: fix multiple use of __print_flags and __print_symbolic\n  tracing/events: fix output format of user stack\n  tracing/events: fix output format of kernel stack\n  tracing/trace_stack: fix the number of entries in the header\n  ring-buffer: discard timestamps that are at the start of the buffer\n  ring-buffer: try to discard unneeded timestamps\n  ring-buffer: fix bug in ring_buffer_discard_commit\n  ftrace: do not profile functions when disabled\n  tracing: make trace pipe recognize latency format flag\n  ...\n"
    },
    {
      "commit": "73fbad283cfbbcf02939bdbda31fc4a30e729cca",
      "tree": "7c89fe13e1b4a2c7f2d60f4ea6eaf69c14bccab7",
      "parents": [
        "769f3e8c384795cc350e2aae27de2a12374d19d4",
        "35f2c2f6f6ae13ef23c4f68e6d3073753077ca43"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Jun 11 11:03:14 2009 +1000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Jun 11 11:03:14 2009 +1000"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "c0d254504fdaeb0878b8415295e365ebb78684f8",
      "tree": "8fe8c7ebdf184a9c6c9e61b78992c8640af8cdbe",
      "parents": [
        "e7241d771419b8a8671ebc46a043c324ccb0dcf7",
        "e1b9aa3f47242e757c776a3771bb6613e675bf9c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 16:20:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 16:20:30 2009 -0700"
      },
      "message": "Merge branch \u0027percpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027percpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  percpu: remove rbtree and use page-\u003eindex instead\n  percpu: don\u0027t put the first chunk in reverse-map rbtree\n"
    },
    {
      "commit": "bb7762961d3ce745688e9050e914c1d3f980268d",
      "tree": "e841f58cd6188cc44583cd055798b4475a4d68f0",
      "parents": [
        "48c72d1ab4ec86789a23aed0b0b5f31ac083c0c6",
        "35d5a9a61490bf39d2e48d7f499c8c801a39ebe9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 16:13:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 16:13:20 2009 -0700"
      },
      "message": "Merge branch \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (22 commits)\n  x86: fix system without memory on node0\n  x86, mm: Fix node_possible_map logic\n  mm, x86: remove MEMORY_HOTPLUG_RESERVE related code\n  x86: make sparse mem work in non-NUMA mode\n  x86: process.c, remove useless headers\n  x86: merge process.c a bit\n  x86: use sparse_memory_present_with_active_regions() on UMA\n  x86: unify 64-bit UMA and NUMA paging_init()\n  x86: Allow 1MB of slack between the e820 map and SRAT, not 4GB\n  x86: Sanity check the e820 against the SRAT table using e820 map only\n  x86: clean up and and print out initial max_pfn_mapped\n  x86/pci: remove rounding quirk from e820_setup_gap()\n  x86, e820, pci: reserve extra free space near end of RAM\n  x86: fix typo in address space documentation\n  x86: 46 bit physical address support on 64 bits\n  x86, mm: fault.c, use printk_once() in is_errata93()\n  x86: move per-cpu mmu_gathers to mm/init.c\n  x86: move max_pfn_mapped and max_low_pfn_mapped to setup.c\n  x86: unify noexec handling\n  x86: remove (null) in /sys kernel_page_tables\n  ...\n"
    },
    {
      "commit": "35f2c2f6f6ae13ef23c4f68e6d3073753077ca43",
      "tree": "9196736b9a1a70ae8dfaa9504b0ce94552a09d73",
      "parents": [
        "c3fa109a5894077d1eaf8731ea741a15dd117b3c"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Jun 09 17:48:56 2009 +0900"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Jun 10 09:24:09 2009 +1000"
      },
      "message": "nommu: Provide mmap_min_addr definition.\n\nWith the \"security: use mmap_min_addr indepedently of security models\"\nchange, mmap_min_addr is used in common areas, which susbsequently blows\nup the nommu build. This stubs in the definition in the nommu case as\nwell.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n\n--\n\n mm/nommu.c |    3 +++\n 1 file changed, 3 insertions(+)\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "55782138e47d9baf2f7d3a7af9e7cf42adf72c56",
      "tree": "c7ccabae20e27bbeb08b69a358e8b86c98d1d9f3",
      "parents": [
        "f57a8a1911342265e7acdc190333c4e9235a6632"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jun 09 13:43:05 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 12:34:23 2009 -0400"
      },
      "message": "tracing/events: convert block trace points to TRACE_EVENT()\n\nTRACE_EVENT is a more generic way to define tracepoints. Doing so adds\nthese new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n  ...\n\nCons:\n\n  - no dev_t info for the output of plug, unplug_timer and unplug_io events.\n    no dev_t info for getrq and sleeprq events if bio \u003d\u003d NULL.\n    no dev_t info for rq_abort,...,rq_requeue events if rq-\u003erq_disk \u003d\u003d NULL.\n\n    This is mainly because we can\u0027t get the deivce from a request queue.\n    But this may change in the future.\n\n  - A packet command is converted to a string in TP_assign, not TP_print.\n    While blktrace do the convertion just before output.\n\n    Since pc requests should be rather rare, this is not a big issue.\n\n  - In blktrace, an event can have 2 different print formats, but a TRACE_EVENT\n    has a unique format, which means we have some unused data in a trace entry.\n\n    The overhead is minimized by using __dynamic_array() instead of __array().\n\nI\u0027ve benchmarked the ioctl blktrace vs the splice based TRACE_EVENT tracing:\n\n      dd                   dd + ioctl blktrace       dd + TRACE_EVENT (splice)\n1     7.36s, 42.7 MB/s     7.50s, 42.0 MB/s          7.41s, 42.5 MB/s\n2     7.43s, 42.3 MB/s     7.48s, 42.1 MB/s          7.43s, 42.4 MB/s\n3     7.38s, 42.6 MB/s     7.45s, 42.2 MB/s          7.41s, 42.5 MB/s\n\nSo the overhead of tracing is very small, and no regression when using\nthose trace events vs blktrace.\n\nAnd the binary output of TRACE_EVENT is much smaller than blktrace:\n\n # ls -l -h\n -rw-r--r-- 1 root root 8.8M 06-09 13:24 sda.blktrace.0\n -rw-r--r-- 1 root root 195K 06-09 13:24 sda.blktrace.1\n -rw-r--r-- 1 root root 2.7M 06-09 13:25 trace_splice.out\n\nFollowing are some comparisons between TRACE_EVENT and blktrace:\n\nplug:\n  kjournald-480   [000]   303.084981: block_plug: [kjournald]\n  kjournald-480   [000]   303.084981:   8,0    P   N [kjournald]\n\nunplug_io:\n  kblockd/0-118   [000]   300.052973: block_unplug_io: [kblockd/0] 1\n  kblockd/0-118   [000]   300.052974:   8,0    U   N [kblockd/0] 1\n\nremap:\n  kjournald-480   [000]   303.085042: block_remap: 8,0 W 102736992 + 8 \u003c- (8,8) 33384\n  kjournald-480   [000]   303.085043:   8,0    A   W 102736992 + 8 \u003c- (8,8) 33384\n\nbio_backmerge:\n  kjournald-480   [000]   303.085086: block_bio_backmerge: 8,0 W 102737032 + 8 [kjournald]\n  kjournald-480   [000]   303.085086:   8,0    M   W 102737032 + 8 [kjournald]\n\ngetrq:\n  kjournald-480   [000]   303.084974: block_getrq: 8,0 W 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084975:   8,0    G   W 102736984 + 8 [kjournald]\n\n  bash-2066  [001]  1072.953770:   8,0    G   N [bash]\n  bash-2066  [001]  1072.953773: block_getrq: 0,0 N 0 + 0 [bash]\n\nrq_complete:\n  konsole-2065  [001]   300.053184: block_rq_complete: 8,0 W () 103669040 + 16 [0]\n  konsole-2065  [001]   300.053191:   8,0    C   W 103669040 + 16 [0]\n\n  ksoftirqd/1-7   [001]  1072.953811:   8,0    C   N (5a 00 08 00 00 00 00 00 24 00) [0]\n  ksoftirqd/1-7   [001]  1072.953813: block_rq_complete: 0,0 N (5a 00 08 00 00 00 00 00 24 00) 0 + 0 [0]\n\nrq_insert:\n  kjournald-480   [000]   303.084985: block_rq_insert: 8,0 W 0 () 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084986:   8,0    I   W 102736984 + 8 [kjournald]\n\nChangelog from v2 -\u003e v3:\n\n- use the newly introduced __dynamic_array().\n\nChangelog from v1 -\u003e v2:\n\n- use __string() instead of __array() to minimize the memory required\n  to store hex dump of rq-\u003ecmd().\n\n- support large pc requests.\n\n- add missing blk_fill_rwbs_rq() in block_rq_requeue TRACE_EVENT.\n\n- some cleanups.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2DF669.5070905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0b4ec6e4e01d98e55ae325a41304cccd87fa4c0f",
      "tree": "1e075fdf4aaf0c5c003564b3f3414bb4a92ef2ed",
      "parents": [
        "04288f42033607099cebf5ca15ce8dcec3a9688b",
        "3af968e066d593bc4dacc021715f3e95ddf0996f"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Jun 09 09:27:53 2009 +1000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Jun 09 09:27:53 2009 +1000"
      },
      "message": "Merge branch \u0027master\u0027 into next\n"
    },
    {
      "commit": "dab5855b12411334355ba21349a06700e4ae7a3b",
      "tree": "ab4e5c1893fc24e0bdb39ab8fc291aba39278c35",
      "parents": [
        "820a644211bc1ac7715333abdb0f0b9ea4fbb549"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jun 08 21:11:57 2009 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 08 23:10:43 2009 +0200"
      },
      "message": "perf_counter: Add mmap event hooks to mprotect()\n\nSome JIT compilers allocate memory for generated code with\nposix_memalign() + mprotect() so we need to hook into mprotect()\nto make sure \u0027perf\u0027 is aware that we\u0027re executing code in\nanonymous memory.\n\n[ penberg@cs.helsinki.fi: move the hook to sys_mprotect() ]\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003cPine.LNX.4.64.0906082111030.12407@melkki.cs.Helsinki.FI\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "089dd79db9264dc0da602bad45d42f1b3e7d1e07",
      "tree": "017b1efd0bc4f3d15b92ed6fae5dfc3d1b164872",
      "parents": [
        "f7b6eb3fa07269da20dbbde8ba37a0273fdbd9c9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 05 14:04:55 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 05 14:46:41 2009 +0200"
      },
      "message": "perf_counter: Generate mmap events for install_special_mapping()\n\nIn order to track the vdso also generate mmap events for\ninstall_special_mapping().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d99e9446200c1ffab28cb0e39b76c34a2bfafd06",
      "tree": "10cd2f67f3bffaf8dcec79c197689f440faf9265",
      "parents": [
        "60313ebed739b331e8e61079da27a11ee3b73a30"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 04 17:08:58 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 04 17:51:38 2009 +0200"
      },
      "message": "perf_counter: Remove munmap stuff\n\nIn name of keeping it simple, only track mmap events. Userspace\nwill have to remove old overlapping maps when it encounters them.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e0a94c2a63f2644826069044649669b5e7ca75d3",
      "tree": "debf8a9af6ac23dadd116dc1cd1f9dcefe9629c6",
      "parents": [
        "7d2948b1248109dbc7f4aaf9867c54b1912d494c"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "cl@linux-foundation.org",
        "time": "Wed Jun 03 16:04:31 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Jun 04 12:07:48 2009 +1000"
      },
      "message": "security: use mmap_min_addr indepedently of security models\n\nThis patch removes the dependency of mmap_min_addr on CONFIG_SECURITY.\nIt also sets a default mmap_min_addr of 4096.\n\nmmapping of addresses below 4096 will only be possible for processes\nwith CAP_SYS_RAWIO.\n\nSigned-off-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nLooks-ok-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "23db9f430be9325a861c7762c1ffadad9ca528a8",
      "tree": "1ebb681611c96f17aa4f96e28d6923824a8b210f",
      "parents": [
        "27b9613b7be39412775d0ab80f57229aa73bb07d",
        "3218911f839b6c85acbf872ad264ea69aa4d89ad"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 01 10:01:03 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 01 10:01:39 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nMerge reason: merge almost-rc8 into perfcounters/core, which was -rc6\n              based - to pick up the latest upstream fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "46f7e602fb32e02145ef14f8c0ca6d399f0a96b9",
      "tree": "3db67ceec30ffc1ababad1d79c11ba8a61fa037c",
      "parents": [
        "f83a275dbc5ca1721143698e844243fcadfabf6a"
      ],
      "author": {
        "name": "Nikanth Karthikesan",
        "email": "knikanth@suse.de",
        "time": "Thu May 28 14:34:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:40:03 2009 -0700"
      },
      "message": "memcg: fix build warning and avoid checking for mem !\u003d null again and again\n\nFix build warning, \"mem_cgroup_is_obsolete defined but not used\" when\nCONFIG_DEBUG_VM is not set.  Also avoid checking for !mem again and again.\n\nSigned-off-by: Nikanth Karthikesan \u003cknikanth@suse.de\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@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": "f83a275dbc5ca1721143698e844243fcadfabf6a",
      "tree": "d76da760e6e234d1d445211c59f0f1087d57facf",
      "parents": [
        "32b154c0b0bae2879bf4e549d861caf1759a3546"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Thu May 28 14:34:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:40:03 2009 -0700"
      },
      "message": "mm: account for MAP_SHARED mappings using VM_MAYSHARE and not VM_SHARED in hugetlbfs\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d13302\n\nhugetlbfs reserves huge pages but does not fault them at mmap() time to\nensure that future faults succeed.  The reservation behaviour differs\ndepending on whether the mapping was mapped MAP_SHARED or MAP_PRIVATE.\nFor MAP_SHARED mappings, hugepages are reserved when mmap() is first\ncalled and are tracked based on information associated with the inode.\nOther processes mapping MAP_SHARED use the same reservation.  MAP_PRIVATE\ntrack the reservations based on the VMA created as part of the mmap()\noperation.  Each process mapping MAP_PRIVATE must make its own\nreservation.\n\nhugetlbfs currently checks if a VMA is MAP_SHARED with the VM_SHARED flag\nand not VM_MAYSHARE.  For file-backed mappings, such as hugetlbfs,\nVM_SHARED is set only if the mapping is MAP_SHARED and the file was opened\nread-write.  If a shared memory mapping was mapped shared-read-write for\npopulating of data and mapped shared-read-only by other processes, then\nhugetlbfs would account for the mapping as if it was MAP_PRIVATE.  This\ncauses processes to fail to map the file MAP_SHARED even though it should\nsucceed as the reservation is there.\n\nThis patch alters mm/hugetlb.c and replaces VM_SHARED with VM_MAYSHARE\nwhen the intent of the code was to check whether the VMA was mapped\nMAP_SHARED or MAP_PRIVATE.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: \u003cstarlight@binnacle.cx\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e767e0561d7fd2333df1921f1ab4176211f9036b",
      "tree": "3b936733f80ceb1ee61ce99f927d002d2296250e",
      "parents": [
        "bd6daba909d8484bd2ccf6017db4028d7a420927"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu May 28 14:34:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:40:02 2009 -0700"
      },
      "message": "memcg: fix deadlock between lock_page_cgroup and mapping tree_lock\n\nmapping-\u003etree_lock can be acquired from interrupt context.  Then,\nfollowing dead lock can occur.\n\nAssume \"A\" as a page.\n\n CPU0:\n       lock_page_cgroup(A)\n\t\tinterrupted\n\t\t\t-\u003e take mapping-\u003etree_lock.\n CPU1:\n       take mapping-\u003etree_lock\n\t\t-\u003e lock_page_cgroup(A)\n\nThis patch tries to fix above deadlock by moving memcg\u0027s hook to out of\nmapping-\u003etree_lock.  charge/uncharge of pagecache/swapcache is protected\nby page lock, not tree_lock.\n\nAfter this patch, lock_page_cgroup() is not called under mapping-\u003etree_lock.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.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": "6d2661ede5f20f968422e790af3334908c3bc857",
      "tree": "2e002d883eee9be5c52d844a7b0c3354338d8995",
      "parents": [
        "681a1b4032d72f4ad6d4beed751bc65574572746"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Thu May 28 14:34:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:40:01 2009 -0700"
      },
      "message": "oom: fix possible oom_dump_tasks NULL pointer\n\nWhen /proc/sys/vm/oom_dump_tasks is enabled, it is possible to get a NULL\npointer for tasks that have detached mm\u0027s since task_lock() is not held\nduring the tasklist scan.  Add the task_lock().\n\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: 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": "ae03bf639a5027d27270123f5f6e3ee6a412781d",
      "tree": "d705f41a188ad656b1f47f7952626a9f992e3b8f",
      "parents": [
        "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:50 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Use accessor functions for queue limits\n\nConvert all external users of queue limits to using wrapper functions\ninstead of poking the request queue variables directly.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2c9e703c618106f5383226fbb1f526cb11034f8a",
      "tree": "87d7548001ea82f655fede0640466fc16aabcdf7",
      "parents": [
        "6470c077cae12227318f40f3e6d756caadcce4b0",
        "5805977e63a36ad56594a623f3bd2bebcb7db233"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri May 22 18:40:59 2009 +1000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri May 22 18:40:59 2009 +1000"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/exec.c\n\nRemoved IMA changes (the IMA checks are now performed via may_open()).\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "c9d9ac525a0285a5b5ad9c3f9aa8b7c1753e6121",
      "tree": "e7fcde1841bf0b1d77a5332656f9cf975509c7b8",
      "parents": [
        "b9fc745db833bbf74b4988493b8cd902a84c9415"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Tue May 19 13:25:58 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri May 22 09:45:33 2009 +1000"
      },
      "message": "integrity: move ima_counts_get\n\nBased on discussion on lkml (Andrew Morton and Eric Paris),\nmove ima_counts_get down a layer into shmem/hugetlb__file_setup().\nResolves drm shmem_file_setup() usage case as well.\n\nHD comment:\n  I still think you\u0027re doing this at the wrong level, but recognize\n  that you probably won\u0027t be persuaded until a few more users of\n  alloc_file() emerge, all wanting your ima_counts_get().\n\n  Resolving GEM\u0027s shmem_file_setup() is an improvement, so I\u0027ll say\n\nAcked-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "b9fc745db833bbf74b4988493b8cd902a84c9415",
      "tree": "45a15174efb3b1c3dcbe5f0dc503e790c4f6fd70",
      "parents": [
        "932995f0ce52525b32ff5127b522c2c164de3810"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Tue May 19 13:25:57 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri May 22 09:43:41 2009 +1000"
      },
      "message": "integrity: path_check update\n\n- Add support in ima_path_check() for integrity checking without\nincrementing the counts. (Required for nfsd.)\n- rename and export opencount_get to ima_counts_get\n- replace ima_shm_check calls with ima_counts_get\n- export ima_path_check\n\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "98f32602d42951e61a059685f842aa7d778ffab0",
      "tree": "283a357f417f2ddf99a783dddeac8257e9342de3",
      "parents": [
        "ecca1c5e3a55d1581be9aa9144642c67de70e33b"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Thu May 21 20:33:58 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 21 13:14:32 2009 -0700"
      },
      "message": "hugh: update email address\n\nMy old address will shut down in a few days time: remove it from the tree,\nand add a tmpfs (shmem filesystem) maintainer entry with the new address.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9fe02c03b4e892acb3c33819ac4385d43b2f0bd7",
      "tree": "c2b7503c9ce846aaeacde76141314e2dbcde927a",
      "parents": [
        "6c2445efb816a34dab7bb7357317e2d656f14cb1",
        "03fbdb15c14e9746c63168e3ff2c64b9c8336d33"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 20 16:30:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 20 16:30:36 2009 -0700"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm: (25 commits)\n  [ARM] 5519/1: amba probe: pass \"struct amba_id *\" instead of void *\n  [ARM] 5517/1: integrator: don\u0027t put clock lookups in __initdata\n  [ARM] 5518/1: versatile: don\u0027t put clock lookups in __initdata\n  [ARM] mach-l7200: fix spelling of SYS_CLOCK_OFF\n  [ARM] Double check memmap is actually valid with a memmap has unexpected holes V2\n  [ARM] realview: fix broadcast tick support\n  [ARM] realview: remove useless smp_cross_call_done()\n  [ARM] smp: fix cpumask usage in ARM SMP code\n  [ARM] 5513/1: Eurotech VIPER SBC: fix compilation error\n  [ARM] 5509/1: ep93xx: clkdev enable UARTS\n  ARM: OMAP2/3: Change omapfb to use clkdev for dispc and rfbi, v2\n  ARM: OMAP3: Fix HW SAVEANDRESTORE shift define\n  ARM: OMAP3: Fix number of GPIO lines for 34xx\n  [ARM] S3C: Do not set clk-\u003eowner field if unset\n  [ARM] S3C2410: mach-bast.c registering i2c data too early\n  [ARM] S3C24XX: Fix unused code warning in arch/arm/plat-s3c24xx/dma.c\n  [ARM] S3C64XX: fix GPIO debug\n  [ARM] S3C64XX: GPIO include cleanup\n  [ARM] nwfpe: fix \u0027floatx80_is_nan\u0027 sparse warning\n  [ARM] nwfpe: Add decleration for ExtendedCPDO\n  ...\n"
    },
    {
      "commit": "eb33575cf67d3f35fa2510210ef92631266e2465",
      "tree": "55dd9958dd10758aa5b1ad0186a3356ae620da44",
      "parents": [
        "e1342f1da06d39b3bbd530e9306347c4438bc6e5"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Wed May 13 17:34:48 2009 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Mon May 18 11:22:24 2009 +0100"
      },
      "message": "[ARM] Double check memmap is actually valid with a memmap has unexpected holes V2\n\npfn_valid() is meant to be able to tell if a given PFN has valid memmap\nassociated with it or not. In FLATMEM, it is expected that holes always\nhave valid memmap as long as there is valid PFNs either side of the hole.\nIn SPARSEMEM, it is assumed that a valid section has a memmap for the\nentire section.\n\nHowever, ARM and maybe other embedded architectures in the future free\nmemmap backing holes to save memory on the assumption the memmap is never\nused. The page_zone linkages are then broken even though pfn_valid()\nreturns true. A walker of the full memmap must then do this additional\ncheck to ensure the memmap they are looking at is sane by making sure the\nzone and PFN linkages are still valid. This is expensive, but walkers of\nthe full memmap are extremely rare.\n\nThis was caught before for FLATMEM and hacked around but it hits again for\nSPARSEMEM because the page_zone linkages can look ok where the PFN linkages\nare totally screwed. This looks like a hatchet job but the reality is that\nany clean solution would end up consumning all the memory saved by punching\nthese unexpected holes in the memmap. For example, we tried marking the\nmemmap within the section invalid but the section size exceeds the size of\nthe hole in most cases so pfn_valid() starts returning false where valid\nmemmap exists. Shrinking the size of the section would increase memory\nconsumption offsetting the gains.\n\nThis patch identifies when an architecture is punching unexpected holes\nin the memmap that the memory model cannot automatically detect and sets\nARCH_HAS_HOLES_MEMORYMODEL. At the moment, this is restricted to EP93xx\nwhich is the model sub-architecture this has been reported on but may expand\nlater. When set, walkers of the full memmap must call memmap_valid_within()\nfor each PFN and passing in what it expects the page and zone to be for\nthat PFN. If it finds the linkages to be broken, it assumes the memmap is\ninvalid for that PFN.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "1079cac0f4eb7d968395378b1625979d4c818dd6",
      "tree": "d261058d95d27fe7250511d5fad69db30dc17731",
      "parents": [
        "5872144f64b34a5942f6b4acedc90b02de72c58b",
        "1406de8e11eb043681297adf86d6892ff8efc27a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 10:15:09 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 10:15:35 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc6\u0027 into tracing/core\n\nMerge reason: we were on an -rc4 base, sync up to -rc6\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "888a589f6be07d624e21e2174d98375e9f95911b",
      "tree": "5c2c210796a114479807f41fc15fe69805d66074",
      "parents": [
        "b286e21868ea1af724a7a4802da2c8e144fa70de"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri May 15 13:59:37 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 09:13:31 2009 +0200"
      },
      "message": "mm, x86: remove MEMORY_HOTPLUG_RESERVE related code\n\nafter:\n\n | commit b263295dbffd33b0fbff670720fa178c30e3392a\n | Author: Christoph Lameter \u003cclameter@sgi.com\u003e\n | Date:   Wed Jan 30 13:30:47 2008 +0100\n |\n |    x86: 64-bit, make sparsemem vmemmap the only memory model\n\nwe don\u0027t have MEMORY_HOTPLUG_RESERVE anymore.\n\nHistorically, x86-64 had an architecture-specific method for memory hotplug\nwhereby it scanned the SRAT for physical memory ranges that could be\npotentially used for memory hot-add later. By reserving those ranges\nwithout physical memory, the memmap would be allocated and left dormant\nuntil needed. This depended on the DISCONTIG memory model which has been\nremoved so the code implementing HOTPLUG_RESERVE is now dead.\n\nThis patch removes the dead code used by MEMORY_HOTPLUG_RESERVE.\n\n(Changelog authored by Mel.)\n\nv2: updated changelog, and remove hotadd\u003d in doc\n\n[ Impact: remove dead code ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nWorkflow-found-OK-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c4A0C4910.7090508@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc3f81b129b5439ba7bac265bbc6a51a39275dae",
      "tree": "216030731d911249496d2e97206cd61431e31c89",
      "parents": [
        "d2517a49d55536b38c7a87e5289550cfedaa4dcc",
        "1406de8e11eb043681297adf86d6892ff8efc27a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 07:37:44 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 07:37:49 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc6\u0027 into perfcounters/core\n\nMerge reason: this branch was on an -rc4 base, merge it up to -rc6\n              to get the latest upstream fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "22ef37eed673587ac984965dc88ba94c68873291",
      "tree": "7bc26e056bcd88a0d62bdaab9f0375343844f9ff",
      "parents": [
        "cd208bcc7cb0acd851e25c951ec2a9c14b084eab"
      ],
      "author": {
        "name": "Toshiyuki Okajima",
        "email": "toshi.okajima@jp.fujitsu.com",
        "time": "Sat May 16 22:56:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 17 16:36:11 2009 -0700"
      },
      "message": "page-writeback: fix the calculation of the oldest_jif in wb_kupdate()\n\nwb_kupdate() function has a bug on linux-2.6.30-rc5.  This bug causes\ngeneric_sync_sb_inodes() to start to write inodes back much earlier than\nour expectations because it miscalculates oldest_jif in wb_kupdate().\n\nThis bug was introduced in 704503d836042d4a4c7685b7036e7de0418fbc0f\n(\u0027mm: fix proc_dointvec_userhz_jiffies \"breakage\"\u0027).\n\nSigned-off-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bba0b4ec3cd6c52cb778af34ad70f6cc3aec1c7e",
      "tree": "d065f4b4d74992cc02fdb91fa54bb9c9d6ca213c",
      "parents": [
        "0f6f49a8cd0163fdb1723ed29f01fc65177108dc",
        "42ddc4cbbad1b87b00e00095305d61cc248c2305"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 17 11:44:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 17 11:44:19 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  mm: SLOB fix reclaim_state\n  mm: SLUB fix reclaim_state\n  slub: add Documentation/ABI/testing/sysfs-kernel-slab\n  slub: enforce MAX_ORDER\n"
    },
    {
      "commit": "c6538499814d8112c5d4d08570a7cf0758e5f8f5",
      "tree": "3c3574d8aea838d91372765847577772092f09bc",
      "parents": [
        "662f11cf2aaedd3d5fe6afbec78ba3288fd0c4ca",
        "cd17cbfda004fe5f406c01b318c6378d9895896f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  Revert \"mm: add /proc controls for pdflush threads\"\n  viocd: needs to depend on BLOCK\n  block: fix the bio_vec array index out-of-bounds test\n"
    },
    {
      "commit": "cd17cbfda004fe5f406c01b318c6378d9895896f",
      "tree": "821e279bc6d9d52bc13fa6c3905ebbd44a2e4860",
      "parents": [
        "05dc7b613481c695bb4fc476c6fbb46364b63f62"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "message": "Revert \"mm: add /proc controls for pdflush threads\"\n\nThis reverts commit fafd688e4c0c34da0f3de909881117d374e4c7af.\n\nWork is progressing to switch away from pdflush as the process backing\nfor flushing out dirty data. So it seems pointless to add more knobs\nto control pdflush threads. The original author of the patch did not\nhave any specific use cases for adding the knobs, so we can easily\nrevert this before 2.6.30 to avoid having to maintain this API\nforever.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0f181328287db30671e9997329cff71395d4af8b",
      "tree": "0fc4abf67c2b32fee89e3dce8ae2030ba99a54a5",
      "parents": [
        "f2deae9d4e70793568ef9e85d227abb7bef5b622"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 13 08:29:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 13 08:29:12 2009 -0700"
      },
      "message": "Revert \"Ignore madvise(MADV_WILLNEED) for hugetlbfs-backed regions\"\n\nThis reverts commit a425a638c858fd10370b573bde81df3ba500e271.\n\nNow that the previous commit removed the \"readpage\" actor for hugetlb\nfiles, read-ahead will no longer mess up the mapping, and there\u0027s no\nlonger any reason to treat hugetlbfs mappings specially.\n\nTested-and-acked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c9ed899b44c19e81859fbb0e9d659fe2f8630fc",
      "tree": "6cc4ebd5d050accad0d706e596f8ea1609d26bc9",
      "parents": [
        "ee7fee0b91ceb1c057c67fcc573b2d8dfe6d92c5"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu May 07 11:41:37 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 07 12:03:41 2009 -0700"
      },
      "message": "NOMMU: Don\u0027t check vm_region::vm_start is page aligned in add_nommu_region()\n\nDon\u0027t check vm_region::vm_start is page aligned in add_nommu_region() because\nthe region may reflect some non-page-aligned mapped file, such as could be\nobtained from RomFS XIP.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ad5d703c6c0fcd385d956555460df95dff7eb7e",
      "tree": "4b777100f9be4fe90ca4bd043b9f98df672b5b3b",
      "parents": [
        "44347d947f628060b92449702071bfe1d31dfb75",
        "1cb81b143fa8f0e4629f10690862e2e52ca792ff"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:18:34 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 13:36:22 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/hw-branch-tracing\u0027 into tracing/core\n\nMerge reason: this topic is ready for upstream now. It passed\n              Oleg\u0027s review and Andrew had no further mm/*\n              objections/observations either.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44347d947f628060b92449702071bfe1d31dfb75",
      "tree": "c6ed74610d5b3295df4296659f80f5feb94b28cc",
      "parents": [
        "d94fc523f3c35bd8013f04827e94756cbc0212f4",
        "413f81eba35d6ede9289b0c8a920c013a84fac71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:13 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:34 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: tracing/core was on a .30-rc1 base and was missing out on\n              on a handful of tracing fixes present in .30-rc5-almost.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fc4d5c292b68ef02514d2072dcbf82d090c34875",
      "tree": "6baf6c7a472e57e99e1b6555c277060f7065f482",
      "parents": [
        "3a6be87fd1e5cdbbc3b6a14d02a3efa9ecba1d3f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed May 06 16:03:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:10 2009 -0700"
      },
      "message": "nommu: make the initial mmap allocation excess behaviour Kconfig configurable\n\nNOMMU mmap() has an option controlled by a sysctl variable that determines\nwhether the allocations made by do_mmap_private() should have the excess\nspace trimmed off and returned to the allocator.  Make the initial setting\nof this variable a Kconfig configuration option.\n\nThe reason there can be excess space is that the allocator only allocates\nin power-of-2 size chunks, but mmap()\u0027s can be made in sizes that aren\u0027t a\npower of 2.\n\nThere are two alternatives:\n\n (1) Keep the excess as dead space.  The dead space then remains unused for the\n     lifetime of the mapping.  Mappings of shared objects such as libc, ld.so\n     or busybox\u0027s text segment may retain their dead space forever.\n\n (2) Return the excess to the allocator.  This means that the dead space is\n     limited to less than a page per mapping, but it means that for a transient\n     process, there\u0027s more chance of fragmentation as the excess space may be\n     reused fairly quickly.\n\nDuring the boot process, a lot of transient processes are created, and\nthis can cause a lot of fragmentation as the pagecache and various slabs\ngrow greatly during this time.\n\nBy turning off the trimming of excess space during boot and disabling\nbatching of frees, Coldfire can manage to boot.\n\nA better way of doing things might be to have /sbin/init turn this option\noff.  By that point libc, ld.so and init - which are all long-duration\nprocesses - have all been loaded and trimmed.\n\nReported-by: Lanttor Guo \u003clanttor.guo@freescale.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Lanttor Guo \u003clanttor.guo@freescale.com\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a6be87fd1e5cdbbc3b6a14d02a3efa9ecba1d3f",
      "tree": "bb58ea44178d8a16861d445df8fa3623ddf02d38",
      "parents": [
        "9155203a5de94278525647b16733f0c315f3b786"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed May 06 16:03:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:10 2009 -0700"
      },
      "message": "nommu: clamp zone_batchsize() to 0 under NOMMU conditions\n\nClamp zone_batchsize() to 0 under NOMMU conditions to stop\nfree_hot_cold_page() from queueing and batching frees.\n\nThe problem is that under NOMMU conditions it is really important to be\nable to allocate large contiguous chunks of memory, but when munmap() or\nexit_mmap() releases big stretches of memory, return of these to the buddy\nallocator can be deferred, and when it does finally happen, it can be in\nsmall chunks.\n\nWhilst the fragmentation this incurs isn\u0027t so much of a problem under MMU\nconditions as userspace VM is glued together from individual pages with\nthe aid of the MMU, it is a real problem if there isn\u0027t an MMU.\n\nBy clamping the page freeing queue size to 0, pages are returned to the\nallocator immediately, and the buddy detector is more likely to be able to\nglue them together into large chunks immediately, and fragmentation is\nless likely to occur.\n\nBy disabling batching of frees, and by turning off the trimming of excess\nspace during boot, Coldfire can manage to boot.\n\nReported-by: Lanttor Guo \u003clanttor.guo@freescale.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Lanttor Guo \u003clanttor.guo@freescale.com\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9155203a5de94278525647b16733f0c315f3b786",
      "tree": "68d64b7cf9671c2a725f4f191b3cfb4b37e41f32",
      "parents": [
        "74614f8d9d4141a3752fc1c38706859b63f4842b"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed May 06 16:03:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:10 2009 -0700"
      },
      "message": "mm: use roundown_pow_of_two() in zone_batchsize()\n\nUse roundown_pow_of_two(N) in zone_batchsize() rather than (1 \u003c\u003c\n(fls(N)-1)) as they are equivalent, and with the former it is easier to\nsee what is going on.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Lanttor Guo \u003clanttor.guo@freescale.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2498ce42d3a4d1a498f1df4884da960087547db7",
      "tree": "52e46a1b944aa0e2e291a3c847c4063827b725b4",
      "parents": [
        "ca1eda2d75b855f434b1d5458534332ffad92d65"
      ],
      "author": {
        "name": "Ralph Wuerthner",
        "email": "ralphw@linux.vnet.ibm.com",
        "time": "Wed May 06 16:02:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:10 2009 -0700"
      },
      "message": "alloc_vmap_area: fix memory leak\n\nIf alloc_vmap_area() fails the allocated struct vmap_area has to be freed.\n\nSigned-off-by: Ralph Wuerthner \u003cralphw@linux.vnet.ibm.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Nick Piggin \u003cnpiggin@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": "184101bf143ac96d62b3dcc17e7b3550f98d3350",
      "tree": "c16b7d56d5603ae9d120a99cbf814195d750a380",
      "parents": [
        "df3935ffd6166fdd00702cf548fb5bb55737758b"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 06 16:02:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 06 16:36:09 2009 -0700"
      },
      "message": "oom: prevent livelock when oom_kill_allocating_task is set\n\nWhen /proc/sys/vm/oom_kill_allocating_task is set for large systems that\nwant to avoid the lengthy tasklist scan, it\u0027s possible to livelock if\ncurrent is ineligible for oom kill.  This normally happens when it is set\nto OOM_DISABLE, but is also possible if any threads are sharing the same\n-\u003emm with a different tgid.\n\nSo change __out_of_memory() to fall back to the full task-list scan if it\nwas unable to kill `current\u0027.\n\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: 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": "42ddc4cbbad1b87b00e00095305d61cc248c2305",
      "tree": "02ca6642c29ad0cca2ab41b1d72fe02df148cdc4",
      "parents": [
        "51e95bed6263f6a2e558ca04fc4ff877f3b0cca3",
        "818cf5909701806285d977f7a9365c5cadb062a7",
        "1f0532eb617d28f65c93593a1491f662f14f7eac"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed May 06 10:27:43 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed May 06 10:27:43 2009 +0300"
      },
      "message": "Merge branches \u0027topic/documentation\u0027, \u0027topic/slub/fixes\u0027 and \u0027topic/urgent\u0027 into for-linus\n"
    },
    {
      "commit": "1f0532eb617d28f65c93593a1491f662f14f7eac",
      "tree": "6023123bae2ed717b35c1c70be0de692e439bf80",
      "parents": [
        "1eb5ac6466d4be7b15b38ce3ab709600f1bc891f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue May 05 19:13:45 2009 +1000"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed May 06 10:23:17 2009 +0300"
      },
      "message": "mm: SLOB fix reclaim_state\n\nSLOB does not correctly account reclaim_state.reclaimed_slab, so it will\nbreak memory reclaim. Account it like SLAB does.\n\nCc: stable@kernel.org\nCc: linux-mm@kvack.org\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "1eb5ac6466d4be7b15b38ce3ab709600f1bc891f",
      "tree": "f10c11cb78e8b4716fe4c98d1fa838a7cd19e9b0",
      "parents": [
        "ce8a7424d23a36f043d0de8484f888971c831119"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue May 05 19:13:44 2009 +1000"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed May 06 10:23:02 2009 +0300"
      },
      "message": "mm: SLUB fix reclaim_state\n\nSLUB does not correctly account reclaim_state.reclaimed_slab, so it will\nbreak memory reclaim. Account it like SLAB does.\n\nCc: stable@kernel.org\nCc: linux-mm@kvack.org\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "a425a638c858fd10370b573bde81df3ba500e271",
      "tree": "4cb1f1172467ed07999b0aff952dc12b1e61add6",
      "parents": [
        "99ee12973e5fd1123ed1779fb4d11ac7d381d430"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue May 05 16:37:17 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 05 14:37:58 2009 -0700"
      },
      "message": "Ignore madvise(MADV_WILLNEED) for hugetlbfs-backed regions\n\nmadvise(MADV_WILLNEED) forces page cache readahead on a range of memory\nbacked by a file.  The assumption is made that the page required is\norder-0 and \"normal\" page cache.\n\nOn hugetlbfs, this assumption is not true and order-0 pages are\nallocated and inserted into the hugetlbfs page cache.  This leaks\nhugetlbfs page reservations and can cause BUGs to trigger related to\ncorrupted page tables.\n\nThis patch causes MADV_WILLNEED to be ignored for hugetlbfs-backed\nregions.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8713e01295140f674a41f2199b0f7ca99dfb69d5",
      "tree": "0e222bd3469534f040c087c334b68e869e2dbb5f",
      "parents": [
        "0ae05fb254a5f2617fc8fcfff7be959b54a5e963"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Apr 30 15:08:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:10 2009 -0700"
      },
      "message": "vmscan: avoid multiplication overflow in shrink_zone()\n\nLocal variable `scan\u0027 can overflow on zones which are larger than\n\n\t(2G * 4k) / 100 \u003d 80GB.\n\nMaking it 64-bit on 64-bit will fix that up.\n\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\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": "00a62ce91e554198ef28234c91c36f850f5a3bc9",
      "tree": "367ef134219deef91903c3fa0eb108c13658f2c7",
      "parents": [
        "0763ed2355198cdef2f6a2098e9d52eb1fe4365d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu Apr 30 15:08:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:10 2009 -0700"
      },
      "message": "mm: fix Committed_AS underflow on large NR_CPUS environment\n\nThe Committed_AS field can underflow in certain situations:\n\n\u003e         # while true; do cat /proc/meminfo  | grep _AS; sleep 1; done | uniq -c\n\u003e               1 Committed_AS: 18446744073709323392 kB\n\u003e              11 Committed_AS: 18446744073709455488 kB\n\u003e               6 Committed_AS:    35136 kB\n\u003e               5 Committed_AS: 18446744073709454400 kB\n\u003e               7 Committed_AS:    35904 kB\n\u003e               3 Committed_AS: 18446744073709453248 kB\n\u003e               2 Committed_AS:    34752 kB\n\u003e               9 Committed_AS: 18446744073709453248 kB\n\u003e               8 Committed_AS:    34752 kB\n\u003e               3 Committed_AS: 18446744073709320960 kB\n\u003e               7 Committed_AS: 18446744073709454080 kB\n\u003e               3 Committed_AS: 18446744073709320960 kB\n\u003e               5 Committed_AS: 18446744073709454080 kB\n\u003e               6 Committed_AS: 18446744073709320960 kB\n\nBecause NR_CPUS can be greater than 1000 and meminfo_proc_show() does\nnot check for underflow.\n\nBut NR_CPUS proportional isn\u0027t good calculation.  In general,\npossibility of lock contention is proportional to the number of online\ncpus, not theorical maximum cpus (NR_CPUS).\n\nThe current kernel has generic percpu-counter stuff.  using it is right\nway.  it makes code simplify and percpu_counter_read_positive() don\u0027t\nmake underflow issue.\n\nReported-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[All kernel versions]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae3abae64f177586be55b04a7fb7047a34b21a3e",
      "tree": "05ba2ef8dca958cc4a02ac08e5aae03b8bc82a81",
      "parents": [
        "0816178638c15ce5472d39d771a96860dff4141a"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Apr 30 15:08:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:09 2009 -0700"
      },
      "message": "memcg: fix mem_cgroup_shrink_usage()\n\nCurrent mem_cgroup_shrink_usage() has two problems.\n\n1. It doesn\u0027t call mem_cgroup_out_of_memory and doesn\u0027t update\n   last_oom_jiffies, so pagefault_out_of_memory invokes global OOM.\n\n2. Considering hierarchy, shrinking has to be done from the\n   mem_over_limit, not from the memcg which the page would be charged to.\n\nmem_cgroup_try_charge_swapin() does all of these things properly, so we\nuse it and call cancel_charge_swapin when it succeeded.\n\nThe name of \"shrink_usage\" is not appropriate for this behavior, so we\nchange it too.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.cn\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: YAMAMOTO Takashi \u003cyamamoto@valinux.co.jp\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.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": "b827e496c893de0c0f142abfaeb8730a2fd6b37f",
      "tree": "a86aecd5d811f9306b9662ceb5a5a45091b62b97",
      "parents": [
        "a5fc1abe438b87a9d128beebc377f78e2681a76d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Apr 30 15:08:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:09 2009 -0700"
      },
      "message": "mm: close page_mkwrite races\n\nChange page_mkwrite to allow implementations to return with the page\nlocked, and also change it\u0027s callers (in page fault paths) to hold the\nlock until the page is marked dirty.  This allows the filesystem to have\nfull control of page dirtying events coming from the VM.\n\nRather than simply hold the page locked over the page_mkwrite call, we\ncall page_mkwrite with the page unlocked and allow callers to return with\nit locked, so filesystems can avoid LOR conditions with page lock.\n\nThe problem with the current scheme is this: a filesystem that wants to\nassociate some metadata with a page as long as the page is dirty, will\nperform this manipulation in its -\u003epage_mkwrite.  It currently then must\nreturn with the page unlocked and may not hold any other locks (according\nto existing page_mkwrite convention).\n\nIn this window, the VM could write out the page, clearing page-dirty.  The\nfilesystem has no good way to detect that a dirty pte is about to be\nattached, so it will happily write out the page, at which point, the\nfilesystem may manipulate the metadata to reflect that the page is no\nlonger dirty.\n\nIt is not always possible to perform the required metadata manipulation in\n-\u003eset_page_dirty, because that function cannot block or fail.  The\nfilesystem may need to allocate some data structure, for example.\n\nAnd the VM cannot mark the pte dirty before page_mkwrite, because\npage_mkwrite is allowed to fail, so we must not allow any window where the\npage could be written to if page_mkwrite does fail.\n\nThis solution of holding the page locked over the 3 critical operations\n(page_mkwrite, setting the pte dirty, and finally setting the page dirty)\ncloses out races nicely, preventing page cleaning for writeout being\ninitiated in that window.  This provides the filesystem with a strong\nsynchronisation against the VM here.\n\n- Sage needs this race closed for ceph filesystem.\n- Trond for NFS (http://bugzilla.kernel.org/show_bug.cgi?id\u003d12913).\n- I need it for fsblock.\n- I suspect other filesystems may need it too (eg. btrfs).\n- I have converted buffer.c to the new locking. Even simple block allocation\n  under dirty pages might be susceptible to i_size changing under partial page\n  at the end of file (we also have a buffer.c-side problem here, but it cannot\n  be fixed properly without this patch).\n- Other filesystems (eg. NFS, maybe btrfs) will need to change their\n  page_mkwrite functions themselves.\n\n[ This also moves page_mkwrite another step closer to fault, which should\n  eventually allow page_mkwrite to be moved into -\u003efault, and thus avoiding a\n  filesystem calldown and page lock/unlock cycle in __do_fault. ]\n\n[akpm@linux-foundation.org: fix derefs of NULL -\u003emapping]\nCc: Sage Weil \u003csage@newdream.net\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Valdis Kletnieks \u003cValdis.Kletnieks@vt.edu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0bd3f63ce01a1757dbce6373122a05fbf99ced7",
      "tree": "4034e701106d1ed819441f4f32a04dfa020398ae",
      "parents": [
        "1e50cc9022d6c0b9175d804573e3f401d00d1381"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Apr 30 15:08:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:09 2009 -0700"
      },
      "message": "memcg: fix try_get_mem_cgroup_from_swapcache()\n\nThis is a bugfix for commit 3c776e64660028236313f0e54f3a9945764422df\n(\"memcg: charge swapcache to proper memcg\").\n\nUsed bit of swapcache is solid under page lock, but considering\nmove_account, pc-\u003emem_cgroup is not.\n\nWe need lock_page_cgroup() anyway.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@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": "bc43f75cd9815833b27831600ccade672edb5e43",
      "tree": "87ded2ff291b63259ac3df846a09d8348174f636",
      "parents": [
        "53951bd57dfe2da58f86cdf276719082d80d8485"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@cmpxchg.org",
        "time": "Thu Apr 30 15:08:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:09 2009 -0700"
      },
      "message": "mm: fix pageref leak in do_swap_page()\n\nBy the time the memory cgroup code is notified about a swapin we\nalready hold a reference on the fault page.\n\nIf the cgroup callback fails make sure to unlock AND release the page\nreference which was taken by lookup_swap_cach(), or we leak the reference.\n\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@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": "e7fd5d4b3d240f42c30a9e3d20a4689c4d3a795a",
      "tree": "4ba588631dd8189a818a91c9e3976526071178b6",
      "parents": [
        "1130b0296184bc21806225fd06d533515a99d2db",
        "56a50adda49b2020156616c4eb15353e0f9ad7de"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 29 14:46:59 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 29 14:47:05 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nMerge reason: This brach was on -rc1, refresh it to almost-rc4 to pick up\n              the latest upstream fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1cb81b143fa8f0e4629f10690862e2e52ca792ff",
      "tree": "667b9677f8ad1211ca3d094bedabe47a3d4f5ba9",
      "parents": [
        "7e0bfad24d85de7cf2202a7b0ce51de11a077b21"
      ],
      "author": {
        "name": "Markus Metzger",
        "email": "markus.t.metzger@intel.com",
        "time": "Fri Apr 24 09:51:43 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 24 10:18:52 2009 +0200"
      },
      "message": "x86, bts, mm: clean up buffer allocation\n\nThe current mm interface is asymetric. One function allocates a locked\nbuffer, another function only refunds the memory.\n\nChange this to have two functions for accounting and refunding locked\nmemory, respectively; and do the actual buffer allocation in ptrace.\n\n[ Impact: refactor BTS buffer allocation code ]\n\nSigned-off-by: Markus Metzger \u003cmarkus.t.metzger@intel.com\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20090424095143.A30265@sedona.ch.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "416dfdcdb894432547ead4fcb9fa6a36b396059e",
      "tree": "8033fdda07397a59c5fa98c88927040906ce6c1a",
      "parents": [
        "56449f437add737a1e5e1cb7e00f63ac8ead1938",
        "091069740304c979f957ceacec39c461d0192158"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 24 10:11:18 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 24 10:11:23 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc3\u0027 into tracing/hw-branch-tracing\n\nConflicts:\n\tarch/x86/kernel/ptrace.c\n\nMerge reason: fix the conflict above, and also pick up the CONFIG_BROKEN\n              dependency change from upstream so that we can remove it\n\t      here.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "818cf5909701806285d977f7a9365c5cadb062a7",
      "tree": "f3a4d1f11d6ef32738f761d258e502b8791b199e",
      "parents": [
        "f4efdd65b754ebbf41484d3a2255c59282720650"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Thu Apr 23 09:58:22 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Apr 23 09:58:22 2009 +0300"
      },
      "message": "slub: enforce MAX_ORDER\n\nslub_max_order may not be equal to or greater than MAX_ORDER.\n\nAdditionally, if a single object cannot be placed in a slab of\nslub_max_order, it still must allocate slabs below MAX_ORDER.\n\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "2e2e425989080cc534fc0fca154cae515f971cf5",
      "tree": "c4acbd403164d1d210e3bc274b7d93487071153e",
      "parents": [
        "55e5750b3e979bac853c0809ad0ef75b7cebd18c"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Apr 21 12:24:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 21 13:41:51 2009 -0700"
      },
      "message": "vmscan,memcg: reintroduce sc-\u003emay_swap\n\nCommit a6dc60f8975ad96d162915e07703a4439c80dcf0 (\"vmscan: rename\nsc.may_swap to may_unmap\") removed the may_swap flag, but memcg had used\nit as a flag for \"we need to use swap?\", as the name indicate.\n\nAnd in the current implementation, memcg cannot reclaim mapped file\ncaches when mem+swap hits the limit.\n\nre-introduce may_swap flag and handle it at get_scan_ratio().  This\npatch doesn\u0027t influence any scan_control users other than memcg.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@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": "a21e25536169432cf9174d631972bc1cd4c75062",
      "tree": "5414335eae4b34be3e0cc0374b81d8303c6a95af",
      "parents": [
        "aefe6475720bd5eb8aacbc881488f3aa65618562"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Apr 18 17:23:41 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 18 11:36:58 2009 -0700"
      },
      "message": "PM/Hibernate: Fix memory shrinking\n\nCommit d979677c4c0 (\"mm: shrink_all_memory(): use sc.nr_reclaimed\")\nbroke the memory shrinking used by hibernation, becuse it did not update\nshrink_all_zones() in accordance with the other changes it made.\n\nFix this by making shrink_all_zones() update sc-\u003enr_reclaimed instead of\noverwriting its value.\n\nThis fixes http://bugzilla.kernel.org/show_bug.cgi?id\u003d13058\n\nReported-and-tested-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "05fa199d45c54a9bda7aa3ae6537253d6f097aa9",
      "tree": "cfdcdd04bfcef7d0dcb47fad93ba8fa676349dd3",
      "parents": [
        "05f54c13cd0c33694eec39a265475c5d6cf223cf"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Thu Apr 16 21:58:12 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 16 14:41:25 2009 -0700"
      },
      "message": "mm: pass correct mm when growing stack\n\nTetsuo Handa reports seeing the WARN_ON(current-\u003emm \u003d\u003d NULL) in\nsecurity_vm_enough_memory(), when do_execve() is touching the\ntarget mm\u0027s stack, to set up its args and environment.\n\nYes, a UMH_NO_WAIT or UMH_WAIT_PROC call_usermodehelper() spawns\nan mm-less kernel thread to do the exec.  And in any case, that\nvm_enough_memory check when growing stack ought to be done on the\ntarget mm, not on the execer\u0027s mm (though apart from the warning,\nit only makes a slight tweak to OVERCOMMIT_NEVER behaviour).\n\nReported-by: Tetsuo Handa \u003cpenguin-kernel@i-love.sakura.ne.jp\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f69955855eac55a048d26a1618f50dfaa160a006",
      "tree": "b43b2d49ca568c4c591415d0f4a69812ca1a781f",
      "parents": [
        "cd97824994042b809493807ea644ba26c0c23290"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Apr 15 13:22:37 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 16 07:47:49 2009 -0700"
      },
      "message": "Export filemap_write_and_wait_range\n\nThis wasn\u0027t exported before and is useful (used by the experimental ext3\ndata\u003dguarded code)\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\nAcked-by: Theodore Tso \u003ctytso@mit.edu\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad8d75fff811a6a230f7f43b05a6483099349533",
      "tree": "764f75c0785b29067b141719b6e8000f005da7fd",
      "parents": [
        "ecda8ae02a08ef065ff387f5cb2a2d4999da2408"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 19:39:12 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:05:43 2009 -0400"
      },
      "message": "tracing/events: move trace point headers into include/trace/events\n\nImpact: clean up\n\nCreate a sub directory in include/trace called events to keep the\ntrace point headers in their own separate directory. Only headers that\ndeclare trace points should be defined in this directory.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a8d154b009168337494fbf345671bab74d3e4b8b",
      "tree": "4097612e1a5cc8bf7658542f7d0f51b815113eaf",
      "parents": [
        "ea20d9293ce423a39717ed4375393129a2e701f9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 09:36:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:28 2009 -0400"
      },
      "message": "tracing: create automated trace defines\n\nThis patch lowers the number of places a developer must modify to add\nnew tracepoints. The current method to add a new tracepoint\ninto an existing system is to write the trace point macro in the\ntrace header with one of the macros TRACE_EVENT, TRACE_FORMAT or\nDECLARE_TRACE, then they must add the same named item into the C file\nwith the macro DEFINE_TRACE(name) and then add the trace point.\n\nThis change cuts out the needing to add the DEFINE_TRACE(name).\nEvery file that uses the tracepoint must still include the trace/\u003ctype\u003e.h\nfile, but the one C file must also add a define before the including\nof that file.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/mytrace.h\u003e\n\nThis will cause the trace/mytrace.h file to also produce the C code\nnecessary to implement the trace point.\n\nNote, if more than one trace/\u003ctype\u003e.h is used to create the C code\nit is best to list them all together.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/foo.h\u003e\n #include \u003ctrace/bar.h\u003e\n #include \u003ctrace/fido.h\u003e\n\nThanks to Mathieu Desnoyers and Christoph Hellwig for coming up with\nthe cleaner solution of the define above the includes over my first\ndesign to have the C code include a \"special\" header.\n\nThis patch converts sched, irq and lockdep and skb to use this new\nmethod.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "caefba1740d8016e6dfe8fda84f85bdcb8f8c85d",
      "tree": "78a74e7a42b94ac83c736849c46767b7efeb8ef1",
      "parents": [
        "61609d01cbb3ab865c8cccaf85e6837c47096480"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Mon Apr 13 14:40:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:33 2009 -0700"
      },
      "message": "shmem: respect MAX_LFS_FILESIZE\n\nSHMEM_MAX_BYTES was derived from the maximum size of its triple-indirect\nswap vector, forgetting to take the MAX_LFS_FILESIZE limit into account.\nNever mind 256kB pages, even 8kB pages on 32-bit kernels allowed files to\ngrow slightly bigger than that supposed maximum.\n\nFix this by using the min of both (at build time not run time).  And it\nhappens that this calculation is good as far as 8MB pages on 32-bit or\n16MB pages on 64-bit: though SHMSWP_MAX_INDEX gets truncated before that,\nit\u0027s truncated to such large numbers that we don\u0027t need to care.\n\n[akpm@linux-foundation.org: it needs pagemap.h]\n[akpm@linux-foundation.org: fix sparc64 min() warnings]\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Yuri Tikhonov \u003cyur@emcraft.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "61609d01cbb3ab865c8cccaf85e6837c47096480",
      "tree": "144e176568328a6fcd9c01853c3f88fd6bc1a08e",
      "parents": [
        "347486bb108fa6e0fd2753c1be3519d6be2516ed"
      ],
      "author": {
        "name": "Yuri Tikhonov",
        "email": "yur@emcraft.com",
        "time": "Mon Apr 13 14:40:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:32 2009 -0700"
      },
      "message": "shmem: fix division by zero\n\nFix a division by zero which we have in shmem_truncate_range() and\nshmem_unuse_inode() when using big PAGE_SIZE values (e.g.  256kB on\nppc44x).\n\nWith 256kB PAGE_SIZE, the ENTRIES_PER_PAGEPAGE constant becomes too large\n(0x1.0000.0000) on a 32-bit kernel, so this patch just changes its type\nfrom \u0027unsigned long\u0027 to \u0027unsigned long long\u0027.\n\nHugh: reverted its unsigned long longs in shmem_truncate_range() and\nshmem_getpage(): the pagecache index cannot be more than an unsigned long,\nso the divisions by zero occurred in unreached code.  It\u0027s a pity we need\nany ULL arithmetic here, but I found no pretty way to avoid it.\n\nSigned-off-by: Yuri Tikhonov \u003cyur@emcraft.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\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": "a8031cb00e286600ea08bd00a6812dbfec412376",
      "tree": "9b3708cbb048af00c152a311e0c5db841cb7f82a",
      "parents": [
        "3d26dcf7679c5cc6c9f3b95ffdb2152fba2b7fae"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Apr 13 14:40:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:32 2009 -0700"
      },
      "message": "memcg: remove warning when CONFIG_DEBUG_VM\u003dn\n\nmm/memcontrol.c:318: warning: `mem_cgroup_is_obsolete\u0027 defined but not used\n\n[akpm@linux-foundation.org: simplify as suggested by Balbir]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Balbir Singh \u003cbalbir@linux.vnet.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": "9de100d001564f58c3fb2ec1bd03e540ac0aa357",
      "tree": "ee7d599718821e0d272d3d63325ad940fc982e0e",
      "parents": [
        "d20d5a7456d57d8affa88f45f27ae96ea49c29e4"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Mon Apr 13 14:40:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:32 2009 -0700"
      },
      "message": "mm: document get_user_pages_fast()\n\nWhile better than get_user_pages(), the usage of gupf(), especially the\nreturn values and the fact that it can potentially only partially pin the\nrange, warranted some documentation.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a52edded382c2f436721d5a044ed16c290c5750",
      "tree": "9ec58a67c2c2df7b5e8a5400b8acb588ddaff0c5",
      "parents": [
        "267b01fe8345098b9459f5bac3d97cbba3264ec4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Apr 13 14:40:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:31 2009 -0700"
      },
      "message": "mm: point the UNEVICTABLE_LRU config option at the documentation\n\nPoint the UNEVICTABLE_LRU config option at the documentation describing\nthe option.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Rik van Riel \u003criel@redhat.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": "697f619fc87aa9bf5b6c8c756f7ea54e950d5cd5",
      "tree": "54ab6110a9e9d497ed21bf7423ff21e070d6bbb4",
      "parents": [
        "5dec8bfbdd4921522565a7b0e0c8760ae042ef6d"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Apr 13 14:39:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:30 2009 -0700"
      },
      "message": "filemap: fix kernel-doc warnings\n\nFix filemap.c kernel-doc warnings:\n\nWarning(mm/filemap.c:575): No description found for parameter \u0027page\u0027\nWarning(mm/filemap.c:575): No description found for parameter \u0027waiter\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02af61bb50f5d5f0322dbe5ab2a0d75808d25c7b",
      "tree": "fa087ed8a584d7b66016e6a1421e538369d52e5a",
      "parents": [
        "abd41443ac76d3e9c29a8c1d9e9a3312306cc55e"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 10 14:26:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:22:55 2009 +0200"
      },
      "message": "tracing, kmemtrace: Separate include/trace/kmemtrace.h to kmemtrace part and tracepoint part\n\nImpact: refactor code for future changes\n\nCurrent kmemtrace.h is used both as header file of kmemtrace and kmem\u0027s\ntracepoints definition.\n\nTracepoints\u0027 definition file may be used by other code, and should only have\ndefinition of tracepoint.\n\nWe can separate include/trace/kmemtrace.h into 2 files:\n\n  include/linux/kmemtrace.h: header file for kmemtrace\n  include/trace/kmem.h:      definition of kmem tracepoints\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49DEE68A.5040902@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e1b9aa3f47242e757c776a3771bb6613e675bf9c",
      "tree": "aa81121a42fdc7f2f1cc916db67558ec3d0f5017",
      "parents": [
        "ae9e6bc9f74f8247cbca50a6a93c80e0d686fa19"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "cl@linux.com",
        "time": "Thu Apr 02 13:21:44 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 18:31:31 2009 +0200"
      },
      "message": "percpu: remove rbtree and use page-\u003eindex instead\n\nImpact: use page-\u003eindex for addr to chunk mapping instead of dedicated rbtree\n\nThe rbtree is used to determine the chunk from the virtual address.\nHowever, we can already determine the page struct from a virtual\naddress and there are several unused fields in page struct used by\nvmalloc.  Use the index field to store a pointer to the chunk. Then\nthere is no need anymore for an rbtree.\n\ntj: * s/(set|get)_chunk/pcpu_\\1_page_chunk/\n\n    * Drop inline from the above two functions and moved them upwards\n      so that they are with other simple helpers.\n\n    * Initial pages might not (actually most of the time don\u0027t) live\n      in the vmalloc area.  With the previous patch to manually\n      reverse-map both first chunks, this is no longer an issue.\n      Removed pcpu_set_chunk() call on initial pages.\n\nSigned-off-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: rusty@rustcorp.com.au\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: rmk@arm.linux.org.uk\nCc: starvik@axis.com\nCc: ralf@linux-mips.org\nCc: davem@davemloft.net\nCc: cooloney@kernel.org\nCc: kyle@mcmartin.ca\nCc: matthew@wil.cx\nCc: grundler@parisc-linux.org\nCc: takata@linux-m32r.org\nCc: benh@kernel.crashing.org\nCc: rth@twiddle.net\nCc: ink@jurassic.park.msu.ru\nCc: heiko.carstens@de.ibm.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nLKML-Reference: \u003c49D43D58.4050102@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ae9e6bc9f74f8247cbca50a6a93c80e0d686fa19",
      "tree": "6644b5ea22c27b78d9c062186e77fb9d56468090",
      "parents": [
        "577c9c456f0e1371cbade38eaf91ae8e8a308555"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 02 13:19:54 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 18:31:30 2009 +0200"
      },
      "message": "percpu: don\u0027t put the first chunk in reverse-map rbtree\n\nImpact: both first chunks don\u0027t use rbtree, no functional change\n\nThere can be two first chunks - reserved and dynamic with the former\none being optional.  Dynamic first chunk was linked on reverse-mapping\nrbtree while the reserved one was mapped manually using the start\naddress and reserved offset limit.\n\nThis patch makes both first chunks to be looked up manually without\nusing the rbtree.  This is to help getting rid of the rbtree.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: rusty@rustcorp.com.au\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: rmk@arm.linux.org.uk\nCc: starvik@axis.com\nCc: ralf@linux-mips.org\nCc: davem@davemloft.net\nCc: cooloney@kernel.org\nCc: kyle@mcmartin.ca\nCc: matthew@wil.cx\nCc: grundler@parisc-linux.org\nCc: takata@linux-m32r.org\nCc: benh@kernel.crashing.org\nCc: rth@twiddle.net\nCc: ink@jurassic.park.msu.ru\nCc: heiko.carstens@de.ibm.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nLKML-Reference: \u003c49D43CEA.3040609@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a34b50ddc265bae058c66661b096ef6384c5a8b1",
      "tree": "cd37db20405efebdfff8f0601d985717ab770ae2",
      "parents": [
        "44bc9dc729e33a4ec6ebed4d0b6c08e8d20b42cf"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 10:56:54 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 10:57:24 2009 +0200"
      },
      "message": "mm, x86, ptrace, bts: defer branch trace stopping, remove dead code\n\nRemove the unused free_locked_buffer() API.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5ea472a77f8e4811ceee3f44a9deda6ad6e8b789",
      "tree": "a9ec5019e2b666a19874fc344ffb0dd5da6bce94",
      "parents": [
        "6c009ecef8cca28c7c09eb16d0802e37915a76e1",
        "577c9c456f0e1371cbade38eaf91ae8e8a308555"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 10:35:30 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 10:35:30 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc1\u0027 into perfcounters/core\n\nConflicts:\n\tarch/powerpc/include/asm/systbl.h\n\tarch/powerpc/include/asm/unistd.h\n\tinclude/linux/init_task.h\n\nMerge reason: the conflicts are non-trivial: PowerPC placement\n              of sys_perf_counter_open has to be mixed with the\n\t      new preadv/pwrite syscalls.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fafd688e4c0c34da0f3de909881117d374e4c7af",
      "tree": "5c61d499b96d78f5b56507a5d34af0ccd7c69060",
      "parents": [
        "a56ed663047fc9927ec8b35750d23ece54f85dc7"
      ],
      "author": {
        "name": "Peter W Morreale",
        "email": "pmorreale@novell.com",
        "time": "Mon Apr 06 19:00:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:03 2009 -0700"
      },
      "message": "mm: add /proc controls for pdflush threads\n\nAdd /proc entries to give the admin the ability to control the minimum and\nmaximum number of pdflush threads.  This allows finer control of pdflush\non both large and small machines.\n\nThe rationale is simply one size does not fit all.  Admins on large and/or\nsmall systems may want to tune the min/max pdflush thread count to best\nsuit their needs.  Right now the min/max is hardcoded to 2/8.  While\nprobably a fair estimate for smaller machines, large machines with large\nnumbers of CPUs and large numbers of filesystems/block devices may benefit\nfrom larger numbers of threads working on different block devices.\n\nEven if the background flushing algorithm is radically changed, it is\nstill likely that multiple threads will be involved and admins would still\ndesire finer control on the min/max other than to have to recompile the\nkernel.\n\nThe patch adds \u0027/proc/sys/vm/nr_pdflush_threads_min\u0027 and\n\u0027/proc/sys/vm/nr_pdflush_threads_max\u0027 with r/w permissions.\n\nThe minimum value for nr_pdflush_threads_min is 1 and the maximum value is\nthe current value of nr_pdflush_threads_max.  This minimum is required\nsince additional thread creation is performed in a pdflush thread itself.\n\nThe minimum value for nr_pdflush_threads_max is the current value of\nnr_pdflush_threads_min and the maximum value can be 1000.\n\nDocumentation/sysctl/vm.txt is also updated.\n\n[akpm@linux-foundation.org: fix comment, fix whitespace, use __read_mostly]\nSigned-off-by: Peter W Morreale \u003cpmorreale@novell.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a56ed663047fc9927ec8b35750d23ece54f85dc7",
      "tree": "b992006bf34124f746f01530113803b175177782",
      "parents": [
        "9133df726fdd3df0ca9efcaaae22442198851d65"
      ],
      "author": {
        "name": "Peter W Morreale",
        "email": "pmorreale@novell.com",
        "time": "Mon Apr 06 19:00:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:03 2009 -0700"
      },
      "message": "mm: fix pdflush thread creation upper bound\n\nFix a race on creating pdflush threads.  Without the patch, it is possible\nto create more than MAX_PDFLUSH_THREADS threads, and this has been\nobserved in practice on IO loaded SMP machines.\n\nThe fix involves moving the lock around to protect the check against the\nthread count and correctly dealing with thread creation failure.\n\nThis fix also _mostly_ repairs a race condition on how quickly the threads\nare created.  The original intent was to create a pdflush thread (up to\nthe max allowed) every second.  Without this patch is is possible to\ncreate NCPUS pdflush threads concurrently.  The \u0027mostly\u0027 caveat is because\nan assumption is made that thread creation will be successful.  If we fail\nto create the thread, the miss is not considered fatal.  (we will try\nagain in 1 second)\n\nSigned-off-by: Peter W Morreale \u003cpmorreale@novell.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2b371f00a6f529f6362654239bdec8dcd510760",
      "tree": "36e47cd9fb949fd72893c2d5ddab489fa55b1869",
      "parents": [
        "a26b89f05d194413c7238e0bea071054f6b5d3c8"
      ],
      "author": {
        "name": "Markus Metzger",
        "email": "markus.t.metzger@intel.com",
        "time": "Fri Apr 03 16:43:35 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:36:13 2009 +0200"
      },
      "message": "mm, x86, ptrace, bts: defer branch trace stopping\n\nWhen a ptraced task is unlinked, we need to stop branch tracing for\nthat task.\n\nSince the unlink is called with interrupts disabled, and we need\ninterrupts enabled to stop branch tracing, we defer the work.\n\nCollect all branch tracing related stuff in a branch tracing context.\n\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Markus Metzger \u003cmarkus.t.metzger@intel.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: roland@redhat.com\nCc: eranian@googlemail.com\nCc: juan.villacis@intel.com\nCc: ak@linux.jf.intel.com\nLKML-Reference: \u003c20090403144550.712401000@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c009ecef8cca28c7c09eb16d0802e37915a76e1",
      "tree": "11c773f780186fdb9fbc9c80a73fb7c8426b1fba",
      "parents": [
        "98c2aaf8be5baf7193be37fb28bce8e7327158bc",
        "d508afb437daee7cf07da085b635c44a4ebf9b38"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 12:05:21 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 12:05:25 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nMerge reason: need the upstream facility added by:\n\n  7f1e2ca: hrtimer: fix rq-\u003elock inversion (again)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "5d6700ea7bfb4704a8d5d10c6ebf0e947410f9ce"
}
