)]}'
{
  "log": [
    {
      "commit": "2329abfa344a9a824bc4c71f2415528777265510",
      "tree": "7779fadc6ceba76071e3f5db0ec6a1dee41a0dfd",
      "parents": [
        "6d6a55ec0877393f467067d44b9a2a8c2e4a82d2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "message": "module_param: make bool parameters really bool (core code)\n\nmodule_param(bool) used to counter-intuitively take an int.  In\nfddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy\ntrick.\n\nIt\u0027s time to remove the int/unsigned int option.  For this version\nit\u0027ll simply give a warning, but it\u0027ll break next kernel version.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d0b9706c20ebb4ba181dc26e52ac9a6861abf425",
      "tree": "436e89246fd5ebcf737cae27e135a1995155329b",
      "parents": [
        "02d929502ce7b57f4835d8bb7c828d36e6d9e8ce",
        "54eed6cb16ec315565aaaf8e34252ca253a68b7b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 19:12:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 19:12:10 2012 -0800"
      },
      "message": "Merge branch \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/numa: Add constraints check for nid parameters\n  mm, x86: Remove debug_pagealloc_enabled\n  x86/mm: Initialize high mem before free_all_bootmem()\n  arch/x86/kernel/e820.c: quiet sparse noise about plain integer as NULL pointer\n  arch/x86/kernel/e820.c: Eliminate bubble sort from sanitize_e820_map()\n  x86: Fix mmap random address range\n  x86, mm: Unify zone_sizes_init()\n  x86, mm: Prepare zone_sizes_init() for unification\n  x86, mm: Use max_low_pfn for ZONE_NORMAL on 64-bit\n  x86, mm: Wrap ZONE_DMA32 with CONFIG_ZONE_DMA32\n  x86, mm: Use max_pfn instead of highend_pfn\n  x86, mm: Move zone init from paging_init() on 64-bit\n  x86, mm: Use MAX_DMA_PFN for ZONE_DMA on 32-bit\n"
    },
    {
      "commit": "54c29c635ae91f5d75ced7bffeaa77ba37ca02bb",
      "tree": "cddf131b5e70809ec5c282f619de0635e45c1cfa",
      "parents": [
        "855c743a27bb58a9a521bdc485ef5acfdb69badc"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Tue Nov 29 17:05:11 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:24:07 2011 +0100"
      },
      "message": "mm, x86: Remove debug_pagealloc_enabled\n\nWhen (no)bootmem finish operation, it pass pages to buddy\nallocator. Since debug_pagealloc_enabled is not set, we will do\nnot protect pages, what is not what we want with\nCONFIG_DEBUG_PAGEALLOC\u003dy.\n\nTo fix remove debug_pagealloc_enabled. That variable was\nintroduced by commit 12d6f21e \"x86: do not PSE on\nCONFIG_DEBUG_PAGEALLOC\u003dy\" to get more CPA (change page\nattribude) code testing. But currently we have CONFIG_CPA_DEBUG,\nwhich test CPA.\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: linux-mm@kvack.org\nLink: http://lkml.kernel.org/r/1322582711-14571-1-git-send-email-sgruszka@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "73839c5b2eacc15cb0aa79c69b285fc659fa8851",
      "tree": "460e38f3b8036b33a3bed5e4322ea1bb5ef4e3c8",
      "parents": [
        "d3d03d4fc5b1bec3a579112de170a9676e9d97cb"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Nov 17 13:34:31 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 08:16:53 2011 +0100"
      },
      "message": "init/main.c: Execute lockdep_init() as early as possible\n\nThis patch fixes a lockdep warning on ARM platforms:\n\n  [    0.000000] WARNING: lockdep init error! Arch code didn\u0027t call lockdep_init() early enough?\n  [    0.000000] Call stack leading to lockdep invocation was:\n  [    0.000000]  [\u003cc00164bc\u003e] save_stack_trace_tsk+0x0/0x90\n  [    0.000000]  [\u003cffffffff\u003e] 0xffffffff\n\nThe warning is caused by printk inside smp_setup_processor_id().\n\nIt is safe to do this because lockdep_init() doesn\u0027t depend on\nsmp_setup_processor_id(), so improve things that printk can be\ncalled as early as possible without lockdep complaint.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1321508072-23853-1-git-send-email-tom.leiming@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b32fc0a0629bf5894b35f33554c118aacfd0d1e2",
      "tree": "5d6aaa9a35b7fa63681adab91da3b3dec5276f84",
      "parents": [
        "403299a8515c56db58454c57712f4dc96d6c1fde",
        "97ce2c88f9ad42e3c60a9beb9fca87abf3639faa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 20:20:46 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 20:20:46 2011 -0800"
      },
      "message": "Merge branch \u0027upstream/jump-label-noearly\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen\n\n* \u0027upstream/jump-label-noearly\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:\n  jump-label: initialize jump-label subsystem much earlier\n  x86/jump_label: add arch_jump_label_transform_static()\n  s390/jump-label: add arch_jump_label_transform_static()\n  jump_label: add arch_jump_label_transform_static() to optimise non-live code updates\n  sparc/jump_label: drop arch_jump_label_text_poke_early()\n  x86/jump_label: drop arch_jump_label_text_poke_early()\n  jump_label: if a key has already been initialized, don\u0027t nop it out\n  stop_machine: make stop_machine safe and efficient to call early\n  jump_label: use proper atomic_t initializer\n\nConflicts:\n - arch/x86/kernel/jump_label.c\n\tAdded __init_or_module to arch_jump_label_text_poke_early vs\n\tremoval of that function entirely\n - kernel/stop_machine.c\n\tsame patch (\"stop_machine: make stop_machine safe and efficient\n\tto call early\") merged twice, with whitespace fix in one version\n"
    },
    {
      "commit": "b1e4d20cbf2ef8e27515da032b95fdcbb5b06bf1",
      "tree": "f080e839635fa36f55d22d147baa12ae64d4c181",
      "parents": [
        "37252db6aa576c34fd794a5a54fb32d7a8b3a07a"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "mschmidt@redhat.com",
        "time": "Mon Oct 10 00:03:37 2011 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 26 13:10:39 2011 +1030"
      },
      "message": "params: make dashes and underscores in parameter names truly equal\n\nThe user may use \"foo-bar\" for a kernel parameter defined as \"foo_bar\".\nMake sure it works the other way around too.\n\nApply the equality of dashes and underscores on early_params and __setup\nparams as well.\n\nThe example given in Documentation/kernel-parameters.txt indicates that\nthis is the intended behaviour.\n\nWith the patch the kernel accepts \"log-buf-len\u003d1M\" as expected.\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d744545\n\nSigned-off-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (neatened implementations)\n"
    },
    {
      "commit": "97ce2c88f9ad42e3c60a9beb9fca87abf3639faa",
      "tree": "c25d41a8754b6e11dbf54ba69ebbee11fdffd07e",
      "parents": [
        "e71a5be15e47a73a2964712967fe93ee8ccf551b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Wed Oct 12 16:17:54 2011 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Oct 25 11:55:15 2011 -0700"
      },
      "message": "jump-label: initialize jump-label subsystem much earlier\n\nInitialize jump_labels much, much earlier, so they\u0027re available for use\nduring system setup.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "b0f84374b6ab0dc9c47975df0b02d46165d558d4",
      "tree": "57e9d9bee80c89c92265df75aa579222b994b38f",
      "parents": [
        "d5767c53535ac79758084773418e0ad186aba4a2"
      ],
      "author": {
        "name": "wangyanqing",
        "email": "udknight@gmail.com",
        "time": "Thu Sep 29 15:09:40 2011 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 29 19:21:01 2011 -0700"
      },
      "message": "bootup: move \u0027usermodehelper_enable()\u0027 a little earlier\n\nCommit d5767c53535a (\"bootup: move \u0027usermodehelper_enable()\u0027 to the end\nof do_basic_setup()\") moved \u0027usermodehelper_enable()\u0027 to end of\ndo_basic_setup() to after the initcalls.  But then I get failed to let\nuvesafb work on my computer, and lose the splash boot.\n\nSo maybe we could start usermodehelper_enable a little early to make\nsome task work that need eary init with the help of user mode.\n\n[ I would *really* prefer that initcalls not call into user space - even\n  the real \u0027init\u0027 hasn\u0027t been execve\u0027d yet, after all! But for uvesafb\n  it really does look like we don\u0027t have much choice.\n\n  I considered doing this when we mount the root filesystem, but\n  depending on config options that is in multiple places.  We could do\n  the usermode helper enable as a rootfs_initcall()..\n\n  So I\u0027m just using wang yanqing\u0027s trivial patch.  It\u0027s not wonderful,\n  but it\u0027s simple and should work.  We should revisit this some day,\n  though.      - Linus ]\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5767c53535ac79758084773418e0ad186aba4a2",
      "tree": "75ae8b298213a276ee2d37deaee6d316efc9200c",
      "parents": [
        "2ef7b45a5925c54d948f858e42babb0533b9a3c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 28 10:23:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 28 10:23:44 2011 -0700"
      },
      "message": "bootup: move \u0027usermodehelper_enable()\u0027 to the end of do_basic_setup()\n\nDoing it just before starting to call into cpu_idle() made a sick kind\nof sense only because the original bug we fixed (see commit\n288d5abec831: \"Boot up with usermodehelper disabled\") was about problems\nwith some scheduler data structures not being initialized, and they had\nbetter be initialized at that point.\n\nBut it really didn\u0027t make any other conceptual sense, and doing it after\nthe initial \"schedule()\" call for the idle thread actually opened up a\nrace: what if the main initialization thread did everything without\nneeding to sleep, and got all the way into user land too? Without\nactually having scheduled back to the idle thread?\n\nNow, in normal circumstances that doesn\u0027t ever happen, but it looks like\nRichard Cochran triggered exactly that on his ARM IXP4xx machines:\n\n  \"I have some ARM IXP4xx based machines that use the two on chip MAC\n   ports (aka NPEs).  The NPE needs a firmware in order to function.\n   Ever since the following commit [that 288d5abec831 one], it is no\n   longer possible to bring up the interfaces during the init scripts.\"\n\nwith a call trace showing an ioctl coming from user space. Richard says:\n\n  \"The init is busybox, and the startup script does mount, syslogd, and\n   then ifup, so that all can go by quickly.\"\n\nThe fix is to move the usermodehelper_enable() into the main \u0027init\u0027\nthread, and just put it after we\u0027ve done all our initcalls.  By then,\neverything really should be up, but we\u0027ve obviously not actually started\nthe user-mode portion of init yet.\n\nReported-and-tested-by: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "808bf29b9195c52239b9aaeda7c6082a0ddf07c6",
      "tree": "eabb672d84cf00b13225b44fdf2482b6900b5a14",
      "parents": [
        "32ef43848f283e0ef945d3c67e851c143fea3970"
      ],
      "author": {
        "name": "Alexander Sverdlin",
        "email": "alexander.sverdlin@sysgo.com",
        "time": "Wed Sep 21 09:51:40 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 21 13:18:52 2011 -0700"
      },
      "message": "init: carefully handle loglevel option on kernel cmdline.\n\nWhen a malformed loglevel value (for example \"${abc}\") is passed on the\nkernel cmdline, the loglevel itself is being set to 0.\n\nThat then suppresses all following messages, including all the errors\nand crashes caused by other malformed cmdline options.  This could make\ndebugging process quite tricky.\n\nThis patch leaves the previous value of loglevel if the new value is\nincorrect and reports an error code in this case.\n\nSigned-off-by: Alexander Sverdlin \u003calexander.sverdlin@sysgo.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "288d5abec8314ae50fe6692f324b0444acae8486",
      "tree": "58a6903344b8d9b2252144356a132a05a8359876",
      "parents": [
        "33f35f2a4ee3abfc0f87990058aa1b6b5092f725"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 22:03:29 2011 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 22:03:29 2011 -1000"
      },
      "message": "Boot up with usermodehelper disabled\n\nThe core device layer sends tons of uevent notifications for each device\nit finds, and if the kernel has been built with a non-empty\nCONFIG_UEVENT_HELPER_PATH that will make us try to execute the usermode\nhelper binary for all these events very early in the boot.\n\nNot only won\u0027t the root filesystem even be mounted at that point, we\nliterally won\u0027t have necessarily even initialized all the process\nhandling data structures at that point, which causes no end of silly\nproblems even when the usermode helper doesn\u0027t actually succeed in\nexecuting.\n\nSo just use our existing infrastructure to disable the usermodehelpers\nto make the kernel start out with them disabled.  We enable them when\nwe\u0027ve at least initialized stuff a bit.\n\nProblems related to an uninitialized\n\n\tinit_ipc_ns.ids[IPC_SHM_IDS].rw_mutex\n\nreported by various people.\n\nReported-by: Manuel Lauss \u003cmanuel.lauss@googlemail.com\u003e\nReported-by: Richard Weinberger \u003crichard@nod.at\u003e\nReported-by: Marc Zyngier \u003cmaz@misterjones.org\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41ffe5d5ceef7f7ff2ff18e320d88ca6d629efaf",
      "tree": "66ce800fb7911ed037aa574f46729646ce485d0b",
      "parents": [
        "285b2c4fdd69ea73b4762785d8c6be83b6c074a6"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Aug 03 16:21:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 14:25:23 2011 -1000"
      },
      "message": "tmpfs: miscellaneous trivial cleanups\n\nWhile it\u0027s at its least, make a number of boring nitpicky cleanups to\nshmem.c, mostly for consistency of variable naming.  Things like \"swap\"\ninstead of \"entry\", \"pgoff_t index\" instead of \"unsigned long idx\".\n\nAnd since everything else here is prefixed \"shmem_\", better change\ninit_tmpfs() to shmem_init().\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-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": "d8ad7d1123a960cc9f276bd499f9325c6f5e1bd1",
      "tree": "0260df1b5b5b1601f56229c7dde54594d2dfebcb",
      "parents": [
        "eb96c925152fc289311e5d7e956b919e9b60ab53"
      ],
      "author": {
        "name": "Takao Indoh",
        "email": "indou.takao@jp.fujitsu.com",
        "time": "Tue Mar 29 12:35:04 2011 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 17 10:17:12 2011 +0200"
      },
      "message": "generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts\n\nThere is a problem that kdump(2nd kernel) sometimes hangs up due\nto a pending IPI from 1st kernel. Kernel panic occurs because IPI\ncomes before call_single_queue is initialized.\n\nTo fix the crash, rename init_call_single_data() to call_function_init()\nand call it in start_kernel() so that call_single_queue can be\ninitialized before enabling interrupts.\n\nThe details of the crash are:\n\n (1) 2nd kernel boots up\n\n (2) A pending IPI from 1st kernel comes when irqs are first enabled\n     in start_kernel().\n\n (3) Kernel tries to handle the interrupt, but call_single_queue\n     is not initialized yet at this point. As a result, in the\n     generic_smp_call_function_single_interrupt(), NULL pointer\n     dereference occurs when list_replace_init() tries to access\n     \u0026q-\u003elist.next.\n\nTherefore this patch changes the name of init_call_single_data()\nto call_function_init() and calls it before local_irq_enable()\nin start_kernel().\n\nSigned-off-by: Takao Indoh \u003cindou.takao@jp.fujitsu.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: kexec@lists.infradead.org\nLink: http://lkml.kernel.org/r/D6CBEE2F420741indou.takao@jp.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6345d24daf0c1fffe6642081d783cdf653ebaa5c",
      "tree": "415a253621279111bd481d48cbb86174c70b952a",
      "parents": [
        "cab0d85c8dfcad4d799f9c294571440c6f1db091"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:32:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:32:28 2011 -0700"
      },
      "message": "mm: Fix boot crash in mm_alloc()\n\nThomas Gleixner reports that we now have a boot crash triggered by\nCONFIG_CPUMASK_OFFSTACK\u003dy:\n\n    BUG: unable to handle kernel NULL pointer dereference at   (null)\n    IP: [\u003cc11ae035\u003e] find_next_bit+0x55/0xb0\n    Call Trace:\n     [\u003cc11addda\u003e] cpumask_any_but+0x2a/0x70\n     [\u003cc102396b\u003e] flush_tlb_mm+0x2b/0x80\n     [\u003cc1022705\u003e] pud_populate+0x35/0x50\n     [\u003cc10227ba\u003e] pgd_alloc+0x9a/0xf0\n     [\u003cc103a3fc\u003e] mm_init+0xec/0x120\n     [\u003cc103a7a3\u003e] mm_alloc+0x53/0xd0\n\nwhich was introduced by commit de03c72cfce5 (\"mm: convert\nmm-\u003ecpu_vm_cpumask into cpumask_var_t\"), and is due to wrong ordering of\nmm_init() vs mm_init_cpumask\n\nThomas wrote a patch to just fix the ordering of initialization, but I\nhate the new double allocation in the fork path, so I ended up instead\ndoing some more radical surgery to clean it all up.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "162a7e7500f9664636e649ba59defe541b7c2c60",
      "tree": "f44d4e480975d7f2c4bd4fd8625dbdb81eb04ade",
      "parents": [
        "95dde501907b06e7203c74f8435acfdab9eb2659"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Tue May 24 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:48 2011 -0700"
      },
      "message": "printk: allocate kernel log buffer earlier\n\nOn larger systems, because of the numerous ACPI, Bootmem and EFI messages,\nthe static log buffer overflows before the larger one specified by the\nlog_buf_len param is allocated.  Minimize the overflow by allocating the\nnew log buffer as soon as possible.\n\nOn kernels without memblock, a later call to setup_log_buf from\nkernel/init.c is the fallback.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix CONFIG_PRINTK\u003dn build]\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de03c72cfce5b263a674d04348b58475ec50163c",
      "tree": "e2b035234440bcd1aa88078c3f9c8457d461ef9c",
      "parents": [
        "692e0b35427a088bf75d9363788c61c7edbe93a5"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue May 24 17:12:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:21 2011 -0700"
      },
      "message": "mm: convert mm-\u003ecpu_vm_cpumask into cpumask_var_t\n\ncpumask_t is very big struct and cpu_vm_mask is placed wrong position.\nIt might lead to reduce cache hit ratio.\n\nThis patch has two change.\n1) Move the place of cpumask into last of mm_struct. Because usually cpumask\n   is accessed only front bits when the system has cpu-hotplug capability\n2) Convert cpu_vm_mask into cpumask_var_t. It may help to reduce memory\n   footprint if cpumask_size() will use nr_cpumask_bits properly in future.\n\nIn addition, this patch change the name of cpu_vm_mask with cpu_vm_mask_var.\nIt may help to detect out of tree cpu_vm_mask users.\n\nThis patch has no functional change.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b090f2da85bd0df5e1a1ecfe4120b7b50358f48",
      "tree": "cbf13036b3ade83d5f13b8ff03be47ef312171c9",
      "parents": [
        "79e0d9bd262bdd36009e8092e57e34dc5e22a1c7"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu May 19 16:25:30 2011 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu May 19 17:36:37 2011 +0100"
      },
      "message": "kmemleak: Initialise kmemleak after debug_objects_mem_init()\n\nKmemleak frees objects via RCU and when CONFIG_DEBUG_OBJECTS_RCU_HEAD\nis enabled, the RCU callback triggers a call to free_object() in\nlib/debugobjects.c. Since kmemleak is initialised before debug objects\ninitialisation, it may result in a kernel panic during booting. This\npatch moves the kmemleak_init() call after debug_objects_mem_init().\n\nReported-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nTested-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "45a68628d37222e655219febce9e91b6484789b2",
      "tree": "6acb5c45e8b11022358a1c28691c9b2c75a7df91",
      "parents": [
        "bfdc0b497faa82a0ba2f9dddcf109231dd519fcc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Mar 23 16:43:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:46:57 2011 -0700"
      },
      "message": "pid: remove the child_reaper special case in init/main.c\n\nThis patchset is a cleanup and a preparation to unshare the pid namespace.\nThese prerequisites prepare for Eric\u0027s patchset to give a file descriptor\nto a namespace and join an existing namespace.\n\nThis patch:\n\nIt turns out that the existing assignment in copy_process of the\nchild_reaper can handle the initial assignment of child_reaper we just\nneed to generalize the test in kernel/fork.c\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34db18a054c600b6f81787165669dc572fe4de25",
      "tree": "6a8a0abf4f64ccad677ea2468c3e8465ac4e0c29",
      "parents": [
        "fa9ee9c4b9885dfdf8eccac19b8b4fc8a7c53288"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Mar 22 16:34:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 22 17:44:11 2011 -0700"
      },
      "message": "smp: move smp setup functions to kernel/smp.c\n\nMove setup_nr_cpu_ids(), smp_init() and some other SMP boot parameter\nsetup functions from init/main.c to kenrel/smp.c, saves some #ifdef\nCONFIG_SMP.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ce802f62ba32a7d95748ac92bf351f76affb6ff",
      "tree": "54dd0d6063ca61619e6b8ca84dd95b8e5a3c1402",
      "parents": [
        "12fcdba1b7ae8b25696433f420b775aeb556d89b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jan 20 12:06:35 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 20 13:32:33 2011 +0100"
      },
      "message": "lockdep: Move early boot local IRQ enable/disable status to init/main.c\n\nDuring early boot, local IRQ is disabled until IRQ subsystem is\nproperly initialized.  During this time, no one should enable\nlocal IRQ and some operations which usually are not allowed with\nIRQ disabled, e.g. operations which might sleep or require\ncommunications with other processors, are allowed.\n\nlockdep tracked this with early_boot_irqs_off/on() callbacks.\nAs other subsystems need this information too, move it to\ninit/main.c and make it generally available.  While at it,\ntoggle the boolean to early_boot_irqs_disabled instead of\nenabled so that it can be initialized with %false and %true\nindicates the exceptional condition.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110120110635.GB6036@htj.dyndns.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23d69b09b78c4876e134f104a3814c30747c53f1",
      "tree": "40744de4f4126c21027ce537264524095e0e7979",
      "parents": [
        "e744070fd4ff9d3114277e52d77afa21579adce2",
        "569ff2de2e1c8ac67c8df3a7367d46d0d9460a35"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (33 commits)\n  usb: don\u0027t use flush_scheduled_work()\n  speedtch: don\u0027t abuse struct delayed_work\n  media/video: don\u0027t use flush_scheduled_work()\n  media/video: explicitly flush request_module work\n  ioc4: use static work_struct for ioc4_load_modules()\n  init: don\u0027t call flush_scheduled_work() from do_initcalls()\n  s390: don\u0027t use flush_scheduled_work()\n  rtc: don\u0027t use flush_scheduled_work()\n  mmc: update workqueue usages\n  mfd: update workqueue usages\n  dvb: don\u0027t use flush_scheduled_work()\n  leds-wm8350: don\u0027t use flush_scheduled_work()\n  mISDN: don\u0027t use flush_scheduled_work()\n  macintosh/ams: don\u0027t use flush_scheduled_work()\n  vmwgfx: don\u0027t use flush_scheduled_work()\n  tpm: don\u0027t use flush_scheduled_work()\n  sonypi: don\u0027t use flush_scheduled_work()\n  hvsi: don\u0027t use flush_scheduled_work()\n  xen: don\u0027t use flush_scheduled_work()\n  gdrom: don\u0027t use flush_scheduled_work()\n  ...\n\nFixed up trivial conflict in drivers/media/video/bt8xx/bttv-input.c\nas per Tejun.\n"
    },
    {
      "commit": "ee4569a3a75e1a5ed53b0c4ff4d9fc456aa98ef1",
      "tree": "97f92d5cea13cdd1f2419d3b7cedfd384a4df6b5",
      "parents": [
        "6dca467a76bb0ed71d65143b235e0ef80e44436f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 16:14:20 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 16:14:20 2010 +0100"
      },
      "message": "init: don\u0027t call flush_scheduled_work() from do_initcalls()\n\nThe call to flush_scheduled_work() in do_initcalls() is there to make\nsure all works queued to system_wq by initcalls finish before the init\nsections are dropped.\n\nHowever, the call doesn\u0027t make much sense at this point - there\nalready are multiple different workqueues and different subsystems are\nfree to create and use their own.  Ordering requirements are and\nshould be expressed explicitly.\n\nDrop the call to prepare for the deprecation and removal of\nflush_scheduled_work().\n\nAndrew suggested adding sanity check where the workqueue code checks\nwhether any pending or running work has the work function in the init\ntext section.  However, checking this for running works requires the\nworker to keep track of the current function being executed, and\nchecking only the pending works will miss most cases.  As a violation\nwill almost always be caught by the usual page fault mechanism, I\ndon\u0027t think it would be worthwhile to make the workqueue code track\nextra state just for this.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f58a205c62d0dad1df38d076324a89b1a0f1d65",
      "tree": "57c7538b7d648d8d7bf4b4c395a61d778c86f73f",
      "parents": [
        "24a24bb6ff3dc3a09bb131241be920ecc3f0e519"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:35 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:43 2010 +0100"
      },
      "message": "init: Initialized IDR earlier\n\nperf_event_init() wants to start using IDR trees, its needs in turn\nare satisfied by mm_init().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.206992649@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24a24bb6ff3dc3a09bb131241be920ecc3f0e519",
      "tree": "181eca7d23ba93af11304683a309e18b697a15b0",
      "parents": [
        "4407204c5c9037763aadce39b025529dfbfcac9e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:33 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:42 2010 +0100"
      },
      "message": "perf: Move perf_event_init() into main.c\n\nCurrently we call perf_event_init() from sched_init(). In order to\nmake it more obvious move it to the cannnonical location.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.093629821@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "004417a6d468e24399e383645c068b498eed84ad",
      "tree": "ce3f4ea25186080faec7a7be6648b177e526c436",
      "parents": [
        "5ef428c4b5950dddce7311e84321abb3aff7ebb0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Nov 25 18:38:29 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:56 2010 +0100"
      },
      "message": "perf, arch: Cleanup perf-pmu init vs lockup-detector\n\nThe perf hardware pmu got initialized at various points in the boot,\nsome before early_initcall() some after (notably arch_initcall).\n\nThe problem is that the NMI lockup detector is ran from early_initcall()\nand expects the hardware pmu to be present.\n\nSanitize this by moving all architecture hardware pmu implementations to\ninitialize at early_initcall() and move the lockup detector to an explicit\ninitcall right after that.\n\nCc: paulus \u003cpaulus@samba.org\u003e\nCc: davem \u003cdavem@davemloft.net\u003e\nCc: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Deng-Cheng Zhu \u003cdengcheng.zhu@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290707759.2145.119.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5704e44d283e907623e3775c1262f206a2c48cf3",
      "tree": "0a981b24173e90854e7b7d812b35859e1e5f0174",
      "parents": [
        "91151240ed8e97cc4457dae4094153c2744f1eb8",
        "6de5bd128d381ad88ac6d419a5e597048eb468cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "message": "Merge branch \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  BKL: introduce CONFIG_BKL.\n  dabusb: remove the BKL\n  sunrpc: remove the big kernel lock\n  init/main.c: remove BKL notations\n  blktrace: remove the big kernel lock\n  rtmutex-tester: make it build without BKL\n  dvb-core: kill the big kernel lock\n  dvb/bt8xx: kill the big kernel lock\n  tlclk: remove big kernel lock\n  fix rawctl compat ioctls breakage on amd64 and itanic\n  uml: kill big kernel lock\n  parisc: remove big kernel lock\n  cris: autoconvert trivial BKL users\n  alpha: kill big kernel lock\n  isapnp: BKL removal\n  s390/block: kill the big kernel lock\n  hpet: kill BKL, add compat_ioctl\n"
    },
    {
      "commit": "1fa4f3b57cf0c525027ea61011312de139b04f9b",
      "tree": "2568eb32058e39870a2b739809dadd5c82e95422",
      "parents": [
        "01b284f9b6d51cc3f3bcf3b49f16d2601d3ca22d"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Sep 27 16:06:54 2010 +0900"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 19 11:29:58 2010 +0200"
      },
      "message": "init/main.c: remove BKL notations\n\nAccording to commit 5e3d20a68f63fc5a310687d81956c3b96e488b84\n(init: Remove the BKL from startup code) these sparse notations\nshould be removed also.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "154cd387cdf0e5566ce523cbddf92dd2a062dfd6",
      "tree": "8ab329f26992c570b65fe62843275eb71c8bf505",
      "parents": [
        "3795de236d67a05994a1a12759db9d4dd9ffc42c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 22 15:58:45 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:39:06 2010 +0200"
      },
      "message": "genirq: Remove early_init_irq_lock_class()\n\nearly_init_irq_lock_class() is called way before anything touches the\nirq descriptors. In case of SPARSE_IRQ\u003dy this is a NOP operation\nbecause the radix tree is empty at this point. For the SPARSE_IRQ\u003dn\ncase it\u0027s sufficient to set the lock class in early_init_irq(). \n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d7627467b7a8dd6944885290a03a07ceb28c10eb",
      "tree": "a18c83468418e878cfb2d44e4310d81b8db84ad7",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 17 23:52:56 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 17 18:07:43 2010 -0700"
      },
      "message": "Make do_execve() take a const filename pointer\n\nMake do_execve() take a const filename pointer so that kernel_execve() compiles\ncorrectly on ARM:\n\narch/arm/kernel/sys_arm.c:88: warning: passing argument 1 of \u0027do_execve\u0027 discards qualifiers from pointer target type\n\nThis also requires the argv and envp arguments to be consted twice, once for\nthe pointer array and once for the strings the array points to.  This is\nbecause do_execve() passes a pointer to the filename (now const) to\ncopy_strings_kernel().  A simpler alternative would be to cast the filename\npointer in do_execve() when it\u0027s passed to copy_strings_kernel().\n\ndo_execve() may not change any of the strings it is passed as part of the argv\nor envp lists as they are some of them in .rodata, so marking these strings as\nconst should be fine.\n\nFurther kernel_execve() and sys_execve() need to be changed to match.\n\nThis has been test built on x86_64, frv, arm and mips.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "914dcaa84c53f2c3efa6016efcae13fd92a8a17c",
      "tree": "6bbcf8953012000cb0a22b47ff616ff2dbe481f2",
      "parents": [
        "a1054322afc8120ea5a50bc84e5beeda54571862"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Aug 11 23:04:18 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Aug 11 23:04:19 2010 +0930"
      },
      "message": "param: make param sections const.\n\nSince this section can be read-only (they\u0027re in .rodata), they should\nalways have been const.  Minor flow-through various functions.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\n"
    },
    {
      "commit": "e446127134de06c4aceaa511f411d06eac91634b",
      "tree": "7e685b71d8ed98cf712e1a88111c4613bc6f1847",
      "parents": [
        "22c5c03b42c082ab57b5d24824769ada0d90f8dc"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: mark do_one_initcall* as __init_or_module\n\nAndrew Morton suggested that the do_one_initcall and do_one_initcall_debug\nfunctions can be marked __init_or_module such that they can be discarded\nfor the CONFIG_MODULES\u003dN case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.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": "22c5c03b42c082ab57b5d24824769ada0d90f8dc",
      "tree": "f3bb670ed467b05cba425e21625213de00dd9f0d",
      "parents": [
        "459b37d423104f00e87d1934821bc8739979d0e4"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: fix warning: \u0027calltime.tv64\u0027 may be used uninitialized\n\nUsing:\n\n\tgcc (GCC) 4.5.0 20100610 (prerelease)\n\nThe following warning appears:\n\n\tinit/main.c: In function `do_one_initcall\u0027:\n\tinit/main.c:730:10: warning: `calltime.tv64\u0027 may be used uninitialized in this function\n\nThis warning is actually correct, as the global initcall_debug could\narguably be changed by the initcall.\n\nCorrect this warning by extracting a new function, do_one_initcall_debug,\nthat performs the initcall for the debug case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.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": "78417334b5cb6e1f915b8fdcc4fce3f1a1b4420c",
      "tree": "8e3fce9f27fd058904c0a3247a5c5ebb8df9fbe8",
      "parents": [
        "cd816a0d84377c4e87f55cbe934a23417f9f5743",
        "5f202bd5ca64132cdd7f186656bc0221f257733d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "message": "Merge branch \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  do_coredump: Do not take BKL\n  init: Remove the BKL from startup code\n"
    },
    {
      "commit": "3b7433b8a8a83c87972065b1852b7dcae691e464",
      "tree": "93fa2c003f8baef5ab0733b53bac77961ed5240c",
      "parents": [
        "4a386c3e177ca2fbc70c9283d0b46537844763a0",
        "6ee0578b4daaea01c96b172c6aacca43fd9807a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)\n  workqueue: mark init_workqueues() as early_initcall()\n  workqueue: explain for_each_*cwq_cpu() iterators\n  fscache: fix build on !CONFIG_SYSCTL\n  slow-work: kill it\n  gfs2: use workqueue instead of slow-work\n  drm: use workqueue instead of slow-work\n  cifs: use workqueue instead of slow-work\n  fscache: drop references to slow-work\n  fscache: convert operation to use workqueue instead of slow-work\n  fscache: convert object to use workqueue instead of slow-work\n  workqueue: fix how cpu number is stored in work-\u003edata\n  workqueue: fix mayday_mask handling on UP\n  workqueue: fix build problem on !CONFIG_SMP\n  workqueue: fix locking in retry path of maybe_create_worker()\n  async: use workqueue for worker pool\n  workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead\n  workqueue: implement unbound workqueue\n  workqueue: prepare for WQ_UNBOUND implementation\n  libata: take advantage of cmwq and remove concurrency limitations\n  workqueue: fix worker management invocation without pending works\n  ...\n\nFixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in\ninclude/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c\n"
    },
    {
      "commit": "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
      "tree": "1f69733e5daab4915a76a41de0e4d1dc61e12cfb",
      "parents": [
        "3a3527b6461b1298cc53ce72f336346739297ac8",
        "fc9ea5a1e53ee54f681e226d735008e2a6f8f470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)\n  tracing/kprobes: unregister_trace_probe needs to be called under mutex\n  perf: expose event__process function\n  perf events: Fix mmap offset determination\n  perf, powerpc: fsl_emb: Restore setting perf_sample_data.period\n  perf, powerpc: Convert the FSL driver to use local64_t\n  perf tools: Don\u0027t keep unreferenced maps when unmaps are detected\n  perf session: Invalidate last_match when removing threads from rb_tree\n  perf session: Free the ref_reloc_sym memory at the right place\n  x86,mmiotrace: Add support for tracing STOS instruction\n  perf, sched migration: Librarize task states and event headers helpers\n  perf, sched migration: Librarize the GUI class\n  perf, sched migration: Make the GUI class client agnostic\n  perf, sched migration: Make it vertically scrollable\n  perf, sched migration: Parameterize cpu height and spacing\n  perf, sched migration: Fix key bindings\n  perf, sched migration: Ignore unhandled task states\n  perf, sched migration: Handle ignored migrate out events\n  perf: New migration tool overview\n  tracing: Drop cpparg() macro\n  perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n  ...\n\nFix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "ffd386a9a8273dcfa61705d0b349eebc7525ef87",
      "tree": "3a555f07c0df5b21eb2ee49fe57f71a76d0342f7",
      "parents": [
        "03da30986793385af57eeca3296253c887b742e6",
        "099a19d91ca429944743d51bef8fee240e94d8e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:17:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:17:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  percpu: allow limited allocation before slab is online\n  percpu: make @dyn_size always mean min dyn_size in first chunk init functions\n"
    },
    {
      "commit": "6ee0578b4daaea01c96b172c6aacca43fd9807a6",
      "tree": "bb82bb4e2a95704477da6c527b23af59c8c2a041",
      "parents": [
        "098849516dd522a343e659740c8f1394a5b7fa69"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Fri Jul 30 14:57:37 2010 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Aug 01 13:05:29 2010 +0200"
      },
      "message": "workqueue: mark init_workqueues() as early_initcall()\n\nMark init_workqueues() as early_initcall() and thus it will be initialized\nbefore smp bringup. init_workqueues() registers for the hotcpu notifier\nand thus it should cope with the processors that are brought online after\nthe workqueues are initialized.\n\nx86 smp bringup code uses workqueues and uses a workaround for the\ncold boot process (as the workqueues are initialized post smp_init()).\nMarking init_workqueues() as early_initcall() will pave the way for\ncleaning up this code.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e3d20a68f63fc5a310687d81956c3b96e488b84",
      "tree": "576da563442772fe7a492589c1e08c422ff02b1c",
      "parents": [
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Jul 04 00:02:26 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 09 15:40:32 2010 +0200"
      },
      "message": "init: Remove the BKL from startup code\n\nI have shown by code review that no driver takes\nthe BKL at init time any more, so whatever the\ninit code was locking against is no longer there\nand it is now safe to remove the BKL there.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "08f8ba07998ab1b9efcdd3f28dadf6866a605ddb",
      "tree": "8e09855446f7b0312bb729d4b539090756e57927",
      "parents": [
        "0879b100f3c187257729f36cba33d96ec2875766",
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:55 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:58 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35-rc4\u0027 into perf/core\n\nMerge reason: Pick up the latest perf fixes\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "123f94f22e3d283dfe68742b269c245b0501ad82",
      "tree": "1d40043b0909f309cf77204ea87be9e61f143e79",
      "parents": [
        "4b78c119f0ba715b4e29b190bf4d7bce810ea0d6",
        "8c215bd3890c347dfb6a2db4779755f8b9c298a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 2010 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Cure nr_iowait_cpu() users\n  init: Fix comment\n  init, sched: Fix race between init and kthreadd\n"
    },
    {
      "commit": "9715856922bf8475f5428c29b6f4a9eebc97d391",
      "tree": "1c729197f0530998b1ad33046b95afbd0de751e6",
      "parents": [
        "b433c3d4549ae74935b585115f076c6fb7bc48fe"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Jun 30 10:37:11 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 30 10:42:44 2010 +0200"
      },
      "message": "init: Fix comment\n\nApparently \"pid-1\" confuses people...\n\nRequested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: torvalds@linux-foundation.org\nCc: randy.dunlap@oracle.com\nCc: Ilya Loginov \u003cisloginov@gmail.com\u003e\nLKML-Reference: \u003c1277887031.1868.82.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098",
      "tree": "a38541b8083a2304435e9a153d408bd7cd44116e",
      "parents": [
        "9a15a07fe2175dc25cd928a354b3839f562ac8cc",
        "5904b3b81d25166e5e39b9727645bb47937618e3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:13 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:24 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nReason: Further changes conflict with upstream fixes\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b433c3d4549ae74935b585115f076c6fb7bc48fe",
      "tree": "fa69951fe2dcdfed7482976d6d6fc0a0bd5d1d5d",
      "parents": [
        "0d98bb2656e9bd2dfda2d089db1fe1dbdab41504"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Jun 28 16:51:01 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 28 18:21:30 2010 +0200"
      },
      "message": "init, sched: Fix race between init and kthreadd\n\nIlya reported that on a very slow machine he could reliably\nreproduce a race between forking init and kthreadd. We first\nfork init so that it  obtains pid-1, however since the scheduler\nis already fully running at this point it can preempt and run\nthe init thread before we spawn and set kthreadd_task.\n\nThe init thread can then attempt spawning kthreads without\nkthreadd being present which results in an OOPS.\n\nReported-by: Ilya Loginov \u003cisloginov@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c1277736661.3561.110.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "099a19d91ca429944743d51bef8fee240e94d8e3",
      "tree": "55bdc0f25ecbf38240782fb1d9a80d33c0100eb6",
      "parents": [
        "4ba6ce250e406b20bcd6f0f3aed6b3d80965e6c2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 27 18:50:00 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 27 18:50:00 2010 +0200"
      },
      "message": "percpu: allow limited allocation before slab is online\n\nThis patch updates percpu allocator such that it can serve limited\namount of allocation before slab comes online.  This is primarily to\nallow slab to depend on working percpu allocator.\n\nTwo parameters, PERCPU_DYNAMIC_EARLY_SIZE and SLOTS, determine how\nmuch memory space and allocation map slots are reserved.  If this\nreserved area is exhausted, WARN_ON_ONCE() will trigger and allocation\nwill fail till slab comes online.\n\nThe following changes are made to implement early alloc.\n\n* pcpu_mem_alloc() now checks slab_is_available()\n\n* Chunks are allocated using pcpu_mem_alloc()\n\n* Init paths make sure ai-\u003edyn_size is at least as large as\n  PERCPU_DYNAMIC_EARLY_SIZE.\n\n* Initial alloc maps are allocated in __initdata and copied to\n  kmalloc\u0027d areas once slab is online.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75cbfb97a156dd3dabdc81295fb8144576332366",
      "tree": "e0eac949aec0e97f739109a354428ce6f41db707",
      "parents": [
        "3975d16760d4be7402d1067c548c30c427971331"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Wed May 26 17:03:33 2010 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 09 18:04:12 2010 -0400"
      },
      "message": "ACPI: Do not try to set up acpi processor stuff on cores exceeding maxcpus\u003d\n\nPatch is against latest Linus master branch and is expected to be\nsafe bug fix.\n\nYou get:\nACPI: HARDWARE addr space,NOT supported yet\nfor each ACPI defined CPU which status is active, but exceeds\nmaxcpus\u003d count.\n\nAs these \"not booted\" CPUs do not run an idle routine\nand echo X \u003e/proc/acpi/processor/*/throttling did not work\nI couldn\u0027t find a way to really access not onlined/booted\nmachines. Still this should get fixed and\n/proc/acpi/processor/X dirs of cores exceeding maxcpus\nshould not show up.\n\nI wonder whether this could get cleaned up by truncating possible cpu mask\nand nr_cpu_ids to setup_max_cpus early some day\n(and not exporting setup_max_cpus anymore then).\nBut this needs touching of a lot other places...\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCC: travis@sgi.com\nCC: linux-acpi@vger.kernel.org\nCC: lenb@kernel.org\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "039ca4e74a1cf60bd7487324a564ecf5c981f254",
      "tree": "61c6fa8409961d2e22ef9d04ac54442734ebd41a",
      "parents": [
        "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 26 17:22:17 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jun 09 17:31:22 2010 +0200"
      },
      "message": "tracing: Remove kmemtrace ftrace plugin\n\nWe have been resisting new ftrace plugins and removing existing\nones, and kmemtrace has been superseded by kmem trace events\nand perf-kmem, so we remove it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n[ remove kmemtrace from the makefile, handle slob too ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e",
      "tree": "b28f8232756e0de57ded858d6584724317b405ef",
      "parents": [
        "b0f82b81fe6bbcf78d478071f33e44554726bc81"
      ],
      "author": {
        "name": "Américo Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed May 26 18:57:53 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:28 2010 +0200"
      },
      "message": "tracing: Remove boot tracer\n\nThe boot tracer is useless. It simply logs the initcalls\nbut in fact these initcalls are also logged through printk\nwhile using the initcall_debug kernel parameter.\n\nNobody seem to be using it so far. Then just remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c20100526105753.GA5677@cr0.nay.redhat.com\u003e\n[ remove the hooks in main.c, and the headers ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "1f522509c77a5dea8dc384b735314f03908a6415",
      "tree": "4b848527b90877a8a64c46e8e2d76723405c319d",
      "parents": [
        "319774e25fa4b7641bdc3b0a464dd84e62103347"
      ],
      "author": {
        "name": "Haicheng Li",
        "email": "haicheng.li@linux.intel.com",
        "time": "Mon May 24 14:32:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:01 2010 -0700"
      },
      "message": "mem-hotplug: avoid multiple zones sharing same boot strapping boot_pageset\n\nFor each new populated zone of hotadded node, need to update its pagesets\nwith dynamically allocated per_cpu_pageset struct for all possible CPUs:\n\n    1) Detach zone-\u003epageset from the shared boot_pageset\n       at end of __build_all_zonelists().\n\n    2) Use mutex to protect zone-\u003epageset when it\u0027s still\n       shared in onlined_pages()\n\nOtherwises, multiple zones of different nodes would share same boot strapping\nboot_pageset for same CPU, which will finally cause below kernel panic:\n\n  ------------[ cut here ]------------\n  kernel BUG at mm/page_alloc.c:1239!\n  invalid opcode: 0000 [#1] SMP\n  ...\n  Call Trace:\n   [\u003cffffffff811300c1\u003e] __alloc_pages_nodemask+0x131/0x7b0\n   [\u003cffffffff81162e67\u003e] alloc_pages_current+0x87/0xd0\n   [\u003cffffffff81128407\u003e] __page_cache_alloc+0x67/0x70\n   [\u003cffffffff811325f0\u003e] __do_page_cache_readahead+0x120/0x260\n   [\u003cffffffff81132751\u003e] ra_submit+0x21/0x30\n   [\u003cffffffff811329c6\u003e] ondemand_readahead+0x166/0x2c0\n   [\u003cffffffff81132ba0\u003e] page_cache_async_readahead+0x80/0xa0\n   [\u003cffffffff8112a0e4\u003e] generic_file_aio_read+0x364/0x670\n   [\u003cffffffff81266cfa\u003e] nfs_file_read+0xca/0x130\n   [\u003cffffffff8117b20a\u003e] do_sync_read+0xfa/0x140\n   [\u003cffffffff8117bf75\u003e] vfs_read+0xb5/0x1a0\n   [\u003cffffffff8117c151\u003e] sys_read+0x51/0x80\n   [\u003cffffffff8103c032\u003e] system_call_fastpath+0x16/0x1b\n  RIP  [\u003cffffffff8112ff13\u003e] get_page_from_freelist+0x883/0x900\n   RSP \u003cffff88000d1e78a8\u003e\n  ---[ end trace 4bda28328b9990db ]\n\n[akpm@linux-foundation.org: merge fix]\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nReviewed-by: Andi Kleen \u003candi.kleen@intel.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Tejun Heo \u003ctj@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": "0b4b3827db386ec6034a5aba1261025b039440c2",
      "tree": "a3469de6930fe3e850c8e4c49c26a2a3b53612dd",
      "parents": [
        "29c843912a0baa7fa63033fe28e1ca7e796686a5"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:29 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:29 2010 -0500"
      },
      "message": "x86, kgdb, init: Add early and late debug states\n\nThe kernel debugger can operate well before mm_init(), but the x86\nhardware breakpoint code which uses the perf api requires that the\nkernel allocators are initialized.\n\nThis means the kernel debug core needs to provide an optional arch\nspecific call back to allow the initialization functions to run after\nthe kernel has been further initialized.\n\nThe kdb shell already had a similar restriction with an early\ninitialization and late initialization.  The kdb_init() was moved into\nthe debug core\u0027s version of the late init which is called\ndbg_late_init();\n\nCC: kgdb-bugreport@lists.sourceforge.net\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "67fc4e0cb931d6b4ccf21248e4199b154478ecea",
      "tree": "4cf49d00bc9ac03c3c77d91fadd13fcabc75e0c9",
      "parents": [
        "5d5314d6795f3c1c0f415348ff8c51f7de042b77"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:21 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:21 2010 -0500"
      },
      "message": "kdb: core for kgdb back end (2 of 2)\n\nThis patch contains the hooks and instrumentation into kernel which\nlive outside the kernel/debug directory, which the kdb core\nwill call to run commands like lsmod, dmesg, bt etc...\n\nCC: linux-arch@vger.kernel.org\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "5ab116c9349ef52d6fbd2e2917a53f13194b048e",
      "tree": "636a6cf02d5ca47c6da5d4935b07ddf08666a09c",
      "parents": [
        "5574169613b40b85d6f4c67208fa4846b897a0a1"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Tue Mar 23 13:35:34 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 24 16:31:21 2010 -0700"
      },
      "message": "cpuset: fix the problem that cpuset_mem_spread_node() returns an offline node\n\ncpuset_mem_spread_node() returns an offline node, and causes an oops.\n\nThis patch fixes it by initializing task-\u003emems_allowed to\nnode_states[N_HIGH_MEMORY], and updating task-\u003emems_allowed when doing\nmemory hotplug.\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nReported-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nTested-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\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": "7463e633c5f94792dcff1afefb0d2961318a9d09",
      "tree": "db2ee59033f50dfe2b3ebe48c08cefef86720bc8",
      "parents": [
        "cfd8d6c0ed89ba387609419e3d8d4c6b92a5d446"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Fri Mar 05 13:42:46 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:32 2010 -0800"
      },
      "message": "init/main.c: make setup_max_cpus static for !SMP\n\nThe only in tree external users of the symbol setup_max_cpus are in\narch/x86/.  The files ./kernel/alternative.c, ./kernel/visws_quirks.c, and\n./mm/kmemcheck/kmemcheck.c are all guarded by CONFIG_SMP being defined.\nFor this case the symbol is an unsigned int and declared as an extern in\ninclude/linux/smp.h.\n\nWhen CONFIG_SMP is not defined the symbol setup_max_cpus is\na constant value that is only used in init/main.c.  Make the symbol\nstatic for this case.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a85b8d6049cbb0e7961df2069322fbc4192026a",
      "tree": "e9e397a35ea33f198da51027db028bf91a090b4d",
      "parents": [
        "87d5e0236d9d688fb575e9e12232764ac617617c"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Fri Mar 05 13:42:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:29 2010 -0800"
      },
      "message": "init/main.c: improve usability in case of init binary failure\n\n- new Documentation/init.txt file describing various forms of failure\n  trying to load the init binary after kernel bootup\n\n- extend the init/main.c init failure message to direct to\n  Documentation/init.txt\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "452aa6999e6703ffbddd7f6ea124d3968915f3e3",
      "tree": "48e375fdb60920675f68b444b462903ad8bb6940",
      "parents": [
        "ad2bd7e0e9647cd48593a6b3a2be07dc2c2d28ed"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 05 13:42:13 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:26 2010 -0800"
      },
      "message": "mm/pm: force GFP_NOIO during suspend/hibernation and resume\n\nThere are quite a few GFP_KERNEL memory allocations made during\nsuspend/hibernation and resume that may cause the system to hang, because\nthe I/O operations they depend on cannot be completed due to the\nunderlying devices being suspended.\n\nAvoid this problem by clearing the __GFP_IO and __GFP_FS bits in\ngfp_allowed_mask before suspend/hibernation and restoring the original\nvalues of these bits in gfp_allowed_mask durig the subsequent resume.\n\n[akpm@linux-foundation.org: fix CONFIG_PM\u003dn linkage]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\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": "0f2cc4ecd81dc1917a041dc93db0ada28f8356fa",
      "tree": "f128b50f48f50f0cda6d2b20b53e9ad6e2dfded3",
      "parents": [
        "1fae4cfb97302289bb5df6a8195eb28385d0b002",
        "9643f5d94aadd47a5fa9754fb60f2c957de05903"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (52 commits)\n  init: Open /dev/console from rootfs\n  mqueue: fix typo \"failues\" -\u003e \"failures\"\n  mqueue: only set error codes if they are really necessary\n  mqueue: simplify do_open() error handling\n  mqueue: apply mathematics distributivity on mq_bytes calculation\n  mqueue: remove unneeded info-\u003emessages initialization\n  mqueue: fix mq_open() file descriptor leak on user-space processes\n  fix race in d_splice_alias()\n  set S_DEAD on unlink() and non-directory rename() victims\n  vfs: add NOFOLLOW flag to umount(2)\n  get rid of -\u003emnt_parent in tomoyo/realpath\n  hppfs can use existing proc_mnt, no need for do_kern_mount() in there\n  Mirror MS_KERNMOUNT in -\u003emnt_flags\n  get rid of useless vfsmount_lock use in put_mnt_ns()\n  Take vfsmount_lock to fs/internal.h\n  get rid of insanity with namespace roots in tomoyo\n  take check for new events in namespace (guts of mounts_poll()) to namespace.c\n  Don\u0027t mess with generic_permission() under -\u003ed_lock in hpfs\n  sanitize const/signedness for udf\n  nilfs: sanitize const/signedness in dealing with -\u003ed_name.name\n  ...\n\nFix up fairly trivial (famous last words...) conflicts in\ndrivers/infiniband/core/uverbs_main.c and security/tomoyo/realpath.c\n"
    },
    {
      "commit": "2bd3a997befc226ab4b504f05c5cbba305f3e0e6",
      "tree": "b510653236a8db16d6eaaf5b8b8c47000ee1b754",
      "parents": [
        "2329e392accdb1b277927e8d9cbf568ba3f3856d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 02 23:53:19 2010 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 03 14:56:07 2010 -0500"
      },
      "message": "init: Open /dev/console from rootfs\n\nTo avoid potential problems with an empty /dev open /dev/console\nfrom rootfs instead of waiting to mount our root filesystem and\nmounting it there.   This effectively guarantees that there will\nbe a device node, and it won\u0027t be on a filesystem that we will\never unmount, so there are no issues with leaving /dev/console\nopen and pinning the filesystem.\n\nThis is actually more effective than automatically mounting\ndevtmpfs on /dev because it removes removes the occasionally\nproblematic assumption that /dev/console exists from the boot\ncode.\n\nWith this patch I was able to throw busybox on my /boot partition\n(which has no /dev directory) and boot into userspace without\nproblems.\n\nThe only possible negative consequence I can think of is that\nsomeone out there deliberately used did not use a character device\nthat is major 5 minor 2 for /dev/console.  Does anyone know of a\nsituation in which that could make sense?\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fb7b096d949fa852442ed9d8f982bce526ccfe7e",
      "tree": "883e7e43331d9962bcc6050a3bf88615a8c61063",
      "parents": [
        "a626b46e17d0762d664ce471d40bc506b6e721ab",
        "fad539956c9e69749a03f7817d22d1bab87657bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:37 2010 -0800"
      },
      "message": "Merge branch \u0027x86-apic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-apic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  x86: Fix out of order of gsi\n  x86: apic: Fix mismerge, add arch_probe_nr_irqs() again\n  x86, irq: Keep chip_data in create_irq_nr and destroy_irq\n  xen: Remove unnecessary arch specific xen irq functions.\n  smp: Use nr_cpus\u003d to set nr_cpu_ids early\n  x86, irq: Remove arch_probe_nr_irqs\n  sparseirq: Use radix_tree instead of ptrs array\n  sparseirq: Change irq_desc_ptrs to static\n  init: Move radix_tree_init() early\n  irq: Remove unnecessary bootmem code\n  x86: Add iMac9,1 to pci_reboot_dmi_table\n  x86: Convert i8259_lock to raw_spinlock\n  x86: Convert nmi_lock to raw_spinlock\n  x86: Convert ioapic_lock and vector_lock to raw_spinlock\n  x86: Avoid race condition in pci_enable_msix()\n  x86: Fix SCI on IOAPIC !\u003d 0\n  x86, ia32_aout: do not kill argument mapping\n  x86, irq: Move __setup_vector_irq() before the first irq enable in cpu online path\n  x86, irq: Update the vector domain for legacy irqs handled by io-apic\n  x86, irq: Don\u0027t block IRQ0_VECTOR..IRQ15_VECTOR\u0027s on all cpu\u0027s\n  ...\n"
    },
    {
      "commit": "d11c563dd20ff35da5652c3e1c989d9e10e1d6d0",
      "tree": "b189f50de7a01d7603935d4da7e755d764dfe67e",
      "parents": [
        "a898def29e4119bc01ebe7ca97423181f4c0ea2d"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Feb 22 17:04:50 2010 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 25 10:34:26 2010 +0100"
      },
      "message": "sched: Use lockdep-based checking on rcu_dereference()\n\nUpdate the rcu_dereference() usages to take advantage of the new\nlockdep-based checking.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nLKML-Reference: \u003c1266887105-1528-6-git-send-email-paulmck@linux.vnet.ibm.com\u003e\n[ -v2: fix allmodconfig missing symbol export build failure on x86 ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b633e3fac5efada088b57d31e65401f22bcc18f",
      "tree": "a5a63de9ef9db656dd9c87c7eaf360762fe69759",
      "parents": [
        "6738762d73a237ec322b04d8b9d55c8fd5d84713"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:37 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 17 17:30:22 2010 -0800"
      },
      "message": "smp: Use nr_cpus\u003d to set nr_cpu_ids early\n\nOn x86, before prefill_possible_map(), nr_cpu_ids will be NR_CPUS aka\nCONFIG_NR_CPUS.\n\nAdd nr_cpus\u003d to set nr_cpu_ids. so we can simulate cpus \u003c\u003d8 are installed on\nnormal config.\n\n-v2: accordging to Christoph, acpi_numa_init should use nr_cpu_ids in stead of\n     NR_CPUS.\n-v3: add doc in kernel-parameters.txt according to Andrew.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-34-git-send-email-yinghai@kernel.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\n\n"
    },
    {
      "commit": "773e3eb7b81e5ba13b5155dfb3bb75b8ce37f8f9",
      "tree": "187087a38df05178c05cf1a7cbe9ba4e0680c853",
      "parents": [
        "febcb0c59ac19fef2081a30e371e7af3619b5e91"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:33 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 17 17:26:33 2010 -0800"
      },
      "message": "init: Move radix_tree_init() early\n\nPrepare for using radix trees in early_irq_init().\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-30-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "54bb6552bd9405dc7685653157a4ec260c77a71c",
      "tree": "7baad9e6cfacd055fd8076d52748a2d3f71d7551",
      "parents": [
        "8eb988c70e7709b7bd1a69f0ec53d19ac20dea84"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Dec 09 15:29:01 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Feb 07 03:06:22 2010 -0500"
      },
      "message": "ima: initialize ima before inodes can be allocated\n\nima wants to create an inode information struct (iint) when inodes are\nallocated.  This means that at least the part of ima which does this\nallocation (the allocation is filled with information later) should\nbefore any inodes are created.  To accomplish this we split the ima\ninitialization routine placing the kmem cache allocator inside a\nsecurity_initcall() function.  Since this makes use of radix trees we also\nneed to make sure that is initialized before security_initcall().\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Mimi Zohar \u003czohar@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "933b0618d8b2a59c7a0742e43836544e02f1e9bd",
      "tree": "2d315a2d365fc27a9b43976940a963295e434ac4",
      "parents": [
        "ee1156c11a1121e118b0a7f2dec240f0d421b1fd"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:53 2009 +0100"
      },
      "message": "sched: Mark boot-cpu active before smp_init()\n\nA UP machine has 1 active cpu, not having the boot-cpu in the\nactive map when starting the scheduler confuses things.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.423469527@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "196a15b4ee99f627fbc2c07e58e14aab2065fa80",
      "tree": "6886bf8387be37fac4cd4b9b1e0e8109a8adf155",
      "parents": [
        "4d00928c1f02defc81afcc5cc6198581c4bd03e8"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Mon Dec 14 18:00:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:26 2009 -0800"
      },
      "message": "init/main.c: fix symbol shadows noise\n\nThe symbol \u0027call\u0027 is a static symbol used for initcall_debug.  This same\nsymbol name is used locally by a couple functions and produces the\nfollowing sparse warnings:\n\n\twarning: symbol \u0027call\u0027 shadows an earlier one\n\nFix this noise by renaming the local symbols.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f066a4f6df68f03b565dfe867dde54dfeb26576e",
      "tree": "16ed85810334bef0f428dbfa52d595e60dacc381",
      "parents": [
        "86a7b7ef54650b99f7f638d6a6990fe7c0dfaaab"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 01 14:56:44 2009 +1030"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 02 15:40:07 2009 -0800"
      },
      "message": "param: don\u0027t complain about unused module parameters.\n\nJon confirms that recent modprobe will look in /proc/cmdline, so these\ncmdline options can still be used.\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d14164\n\nReported-by: Adam Williamson \u003cawilliam@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f579bbcd9bb8b688df03191b92c56ab8af4d6322",
      "tree": "d450f986022aab73f86f794a03c7f21ad0ece8ec",
      "parents": [
        "e80fb7e52fd305b916a671755ca31ecf8f92e94e",
        "da085681014fb43d67d9bf6d14bc068e9254bd49"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 08 12:16:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 08 12:16:35 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futex: fix requeue_pi key imbalance\n  futex: Fix typo in FUTEX_WAIT/WAKE_BITSET_PRIVATE definitions\n  rcu: Place root rcu_node structure in separate lockdep class\n  rcu: Make hot-unplugged CPU relinquish its own RCU callbacks\n  rcu: Move rcu_barrier() to rcutree\n  futex: Move exit_pi_state() call to release_mm()\n  futex: Nullify robust lists after cleanup\n  futex: Fix locking imbalance\n  panic: Fix panic message visibility by calling bust_spinlocks(0) before dying\n  rcu: Replace the rcu_barrier enum with pointer to call_rcu*() function\n  rcu: Clean up code based on review feedback from Josh Triplett, part 4\n  rcu: Clean up code based on review feedback from Josh Triplett, part 3\n  rcu: Fix rcu_lock_map build failure on CONFIG_PROVE_LOCKING\u003dy\n  rcu: Clean up code to address Ingo\u0027s checkpatch feedback\n  rcu: Clean up code based on review feedback from Josh Triplett, part 2\n  rcu: Clean up code based on review feedback from Josh Triplett\n"
    },
    {
      "commit": "94a8d5caba74211ec76dac80fc6e2d5c391530df",
      "tree": "21d17d214a354ae00ae27217d82b67bfc5bff3a3",
      "parents": [
        "2bcd57ab61e7cabed626226a3771617981c11ce1",
        "6ba2ef7baac23a5d9bb85e28b882d16b439a2293"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 18:14:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 18:14:11 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: (39 commits)\n  cpumask: Move deprecated functions to end of header.\n  cpumask: remove unused deprecated functions, avoid accusations of insanity\n  cpumask: use new-style cpumask ops in mm/quicklist.\n  cpumask: use mm_cpumask() wrapper: x86\n  cpumask: use mm_cpumask() wrapper: um\n  cpumask: use mm_cpumask() wrapper: mips\n  cpumask: use mm_cpumask() wrapper: mn10300\n  cpumask: use mm_cpumask() wrapper: m32r\n  cpumask: use mm_cpumask() wrapper: arm\n  cpumask: Use accessors for cpu_*_mask: um\n  cpumask: Use accessors for cpu_*_mask: powerpc\n  cpumask: Use accessors for cpu_*_mask: mips\n  cpumask: Use accessors for cpu_*_mask: m32r\n  cpumask: remove arch_send_call_function_ipi\n  cpumask: arch_send_call_function_ipi_mask: s390\n  cpumask: arch_send_call_function_ipi_mask: powerpc\n  cpumask: arch_send_call_function_ipi_mask: mips\n  cpumask: arch_send_call_function_ipi_mask: m32r\n  cpumask: arch_send_call_function_ipi_mask: alpha\n  cpumask: remove obsolete topology_core_siblings and topology_thread_siblings: ia64\n  ...\n"
    },
    {
      "commit": "2bcd57ab61e7cabed626226a3771617981c11ce1",
      "tree": "687c0c35fb2a632cb8c56b2729f9c3873c9461bd",
      "parents": [
        "95e0d86badc410d525ea7218fd32df7bfbf9c837"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Sep 24 04:22:25 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 18:13:10 2009 -0700"
      },
      "message": "headers: utsname.h redux\n\n* remove asm/atomic.h inclusion from linux/utsname.h --\n   not needed after kref conversion\n * remove linux/utsname.h inclusion from files which do not need it\n\nNOTE: it looks like fs/binfmt_elf.c do not need utsname.h, however\ndue to some personality stuff it _is_ needed -- cowardly leave ELF-related\nheaders and files alone.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72d78d05cbaa69f2a32f5f9d65a4551ba0da571f",
      "tree": "9116e29924269c671f19dba69abe38f5730bc00e",
      "parents": [
        "51c870a2d8708bda83c4ba47f26012a8420bdaff"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Sep 24 09:34:36 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Sep 24 09:34:36 2009 +0930"
      },
      "message": "cpumask: remove unused cpu_mask_all\n\nIt\u0027s only defined for NR_CPUS \u003e BITS_PER_LONG; cpu_all_mask is always\ndefined (and const).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1eba8f84380bede3c602bd7758dea96925cead01",
      "tree": "32dd97671016c9fdc24d75be50cc8540e6cc0730",
      "parents": [
        "fc2219d49ef1606e7fd2c88af2b423b01ff3d319"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 23 09:50:42 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 23 19:46:29 2009 +0200"
      },
      "message": "rcu: Clean up code based on review feedback from Josh Triplett, part 2\n\nThese issues identified during an old-fashioned face-to-face code\nreview extending over many hours.\n\no\tAdd comments for tricky parts of code, and correct comments\n\tthat have passed their sell-by date.\n\no\tGet rid of the vestiges of rcu_init_sched(), which is no\n\tlonger needed now that PREEMPT_RCU is gone.\n\no\tMove the #include of rcutree_plugin.h to the end of\n\trcutree.c, which means that, rather than having a random\n\tcollection of forward declarations, the new set of forward\n\tdeclarations document the set of plugins.  The new home for\n\tthis #include also allows __rcu_init_preempt() to move into\n\trcutree_plugin.h.\n\no\tFix rcu_preempt_check_callbacks() to be static.\n\nSuggested-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: akpm@linux-foundation.org\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nLKML-Reference: \u003c12537246443924-git-send-email-\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nPeter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "746942d06acdb4dd78d16baa5f3728a48a033bdd",
      "tree": "1470ffab015f6b7c2ff6f44314f9fab17d3a4c3f",
      "parents": [
        "c11f6c82581e8be4e1829c677db54e7f55cebece",
        "c602c65b2f81d14456771d1e3f15d1381f4b7efa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 09:34:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 09:34:07 2009 -0700"
      },
      "message": "Merge branch \u0027sfi-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-sfi-2.6\n\n* \u0027sfi-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-sfi-2.6:\n  SFI: remove unneeded includes\n  sfi: Remove unused code\n  SFI: Hook PCI MMCONFIG\n  x86: add arch-specific SFI support\n  SFI: add capability to parse ACPI tables\n  SFI: add platform-independent core support\n  SFI: create linux/sfi.h\n  SFI: Simple Firmware Interface - MAINTAINERS, Kconfig\n"
    },
    {
      "commit": "4481374ce88ba8f460c8b89f2572027bd27057d0",
      "tree": "6896601b6a1da0e3e932ffa75fcff966c834c02c",
      "parents": [
        "4738e1b9cf8f9e28d7de080a5e6ce5d0095ea18f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Mon Sep 21 17:03:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:38 2009 -0700"
      },
      "message": "mm: replace various uses of num_physpages by totalram_pages\n\nSizing of memory allocations shouldn\u0027t depend on the number of physical\npages found in a system, as that generally includes (perhaps a huge amount\nof) non-RAM pages.  The amount of what actually is usable as storage\nshould instead be used as a basis here.\n\nSome of the calculations (i.e.  those not intending to use high memory)\nshould likely even use (totalram_pages - totalhigh_pages).\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c602c65b2f81d14456771d1e3f15d1381f4b7efa",
      "tree": "f1f833c8dd6c1519eeb101be32f7fe54a9605af5",
      "parents": [
        "3834f47291df475be3f0f0fb7ccaa098967cc054",
        "78f28b7c555359c67c2a0d23f7436e915329421e"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 19 00:11:26 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 19 00:11:26 2009 -0400"
      },
      "message": "Merge branch \u0027linus\u0027 into sfi-release\n\nConflicts:\n\tarch/x86/kernel/setup.c\n\tdrivers/acpi/power.c\n\tinit/main.c\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "ab86e5765d41a5eb4239a1c04d613db87bea5ed8",
      "tree": "a41224d4874c2f90e0b423786f00bedf6f3e8bfa",
      "parents": [
        "7ea61767e41e2baedd6a968d13f56026522e1207",
        "2b2af54a5bb6f7e80ccf78f20084b93c398c3a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 16 08:27:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 16 08:27:10 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev\n  debugfs: Modify default debugfs directory for debugging pktcdvd.\n  debugfs: Modified default dir of debugfs for debugging UHCI.\n  debugfs: Change debugfs directory of IWMC3200\n  debugfs: Change debuhgfs directory of trace-events-sample.h\n  debugfs: Fix mount directory of debugfs by default in events.txt\n  hpilo: add poll f_op\n  hpilo: add interrupt handler\n  hpilo: staging for interrupt handling\n  driver core: platform_device_add_data(): use kmemdup()\n  Driver core: Add support for compatibility classes\n  uio: add generic driver for PCI 2.3 devices\n  driver-core: move dma-coherent.c from kernel to driver/base\n  mem_class: fix bug\n  mem_class: use minor as index instead of searching the array\n  driver model: constify attribute groups\n  UIO: remove \u0027default n\u0027 from Kconfig\n  Driver core: Add accessor for device platform data\n  Driver core: move dev_get/set_drvdata to drivers/base/dd.c\n  Driver core: add new device to bus\u0027s list before probing\n"
    },
    {
      "commit": "2b2af54a5bb6f7e80ccf78f20084b93c398c3a8b",
      "tree": "bb27e3b16a2a8fadeea869033a406f0a19b63e29",
      "parents": [
        "ea5ffff57dce2f4c85ab056f4b0a202f71db2bdf"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Apr 30 15:23:42 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:49 2009 -0700"
      },
      "message": "Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev\n\nDevtmpfs lets the kernel create a tmpfs instance called devtmpfs\nvery early at kernel initialization, before any driver-core device\nis registered. Every device with a major/minor will provide a\ndevice node in devtmpfs.\n\nDevtmpfs can be changed and altered by userspace at any time,\nand in any way needed - just like today\u0027s udev-mounted tmpfs.\nUnmodified udev versions will run just fine on top of it, and will\nrecognize an already existing kernel-created device node and use it.\nThe default node permissions are root:root 0600. Proper permissions\nand user/group ownership, meaningful symlinks, all other policy still\nneeds to be applied by userspace.\n\nIf a node is created by devtmps, devtmpfs will remove the device node\nwhen the device goes away. If the device node was created by\nuserspace, or the devtmpfs created node was replaced by userspace, it\nwill no longer be removed by devtmpfs.\n\nIf it is requested to auto-mount it, it makes init\u003d/bin/sh work\nwithout any further userspace support. /dev will be fully populated\nand dynamic, and always reflect the current device state of the kernel.\nWith the commonly used dynamic device numbers, it solves the problem\nwhere static devices nodes may point to the wrong devices.\n\nIt is intended to make the initial bootup logic simpler and more robust,\nby de-coupling the creation of the inital environment, to reliably run\nuserspace processes, from a complex userspace bootstrap logic to provide\na working /dev.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nTested-By: Harald Hoyer \u003charald@redhat.com\u003e\nTested-By: Scott James Remnant \u003cscott@ubuntu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ada3fa15057205b7d3f727bba5cd26b5912e350f",
      "tree": "60962fc9e4021b92f484d1a58e72cd3906d4f3db",
      "parents": [
        "2f82af08fcc7dc01a7e98a49a5995a77e32a2925",
        "5579fd7e6aed8860ea0c8e3f11897493153b10ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (46 commits)\n  powerpc64: convert to dynamic percpu allocator\n  sparc64: use embedding percpu first chunk allocator\n  percpu: kill lpage first chunk allocator\n  x86,percpu: use embedding for 64bit NUMA and page for 32bit NUMA\n  percpu: update embedding first chunk allocator to handle sparse units\n  percpu: use group information to allocate vmap areas sparsely\n  vmalloc: implement pcpu_get_vm_areas()\n  vmalloc: separate out insert_vmalloc_vm()\n  percpu: add chunk-\u003ebase_addr\n  percpu: add pcpu_unit_offsets[]\n  percpu: introduce pcpu_alloc_info and pcpu_group_info\n  percpu: move pcpu_lpage_build_unit_map() and pcpul_lpage_dump_cfg() upward\n  percpu: add @align to pcpu_fc_alloc_fn_t\n  percpu: make @dyn_size mandatory for pcpu_setup_first_chunk()\n  percpu: drop @static_size from first chunk allocators\n  percpu: generalize first chunk allocator selection\n  percpu: build first chunk allocators selectively\n  percpu: rename 4k first chunk allocator to page\n  percpu: improve boot messages\n  percpu: fix pcpu_reclaim() locking\n  ...\n\nFix trivial conflict as by Tejun Heo in kernel/sched.c\n"
    },
    {
      "commit": "774a694f8cd08115d130a290d73c6d8563f26b1b",
      "tree": "2b5f834ac7a149278d2a7e44d7afe69f40ef1431",
      "parents": [
        "4f0ac854167846bd55cd81dbc9a36e03708aa01c",
        "e1f8450854d69f0291882804406ea1bab3ca44b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 11 13:23:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 11 13:23:18 2009 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (64 commits)\n  sched: Fix sched::sched_stat_wait tracepoint field\n  sched: Disable NEW_FAIR_SLEEPERS for now\n  sched: Keep kthreads at default priority\n  sched: Re-tune the scheduler latency defaults to decrease worst-case latencies\n  sched: Turn off child_runs_first\n  sched: Ensure that a child can\u0027t gain time over it\u0027s parent after fork()\n  sched: enable SD_WAKE_IDLE\n  sched: Deal with low-load in wake_affine()\n  sched: Remove short cut from select_task_rq_fair()\n  sched: Turn on SD_BALANCE_NEWIDLE\n  sched: Clean up topology.h\n  sched: Fix dynamic power-balancing crash\n  sched: Remove reciprocal for cpu_power\n  sched: Try to deal with low capacity, fix update_sd_power_savings_stats()\n  sched: Try to deal with low capacity\n  sched: Scale down cpu_power due to RT tasks\n  sched: Implement dynamic cpu_power\n  sched: Add smt_gain\n  sched: Update the cpu_power sum during load-balance\n  sched: Add SD_PREFER_SIBLING\n  ...\n"
    },
    {
      "commit": "7db905e636f08ea5bc9825c1f73d77802e8ccad5",
      "tree": "1fc6699a3e7aa2ef73d4a70005f9e1e3e522079a",
      "parents": [
        "29e2035bddecce3eb584a8304528b50da8370a24"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 02 14:01:24 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 04 09:29:34 2009 +0200"
      },
      "message": "rcu: Move end of special early-boot RCU operation earlier\n\nIngo was getting warnings from rcu_scheduler_starting()\nindicating that context switches had occurred before RCU ended\nits special early-boot handling of grace periods.\n\nThis is a dangerous condition, as it indicates that RCU might\nhave prematurely ended grace periods.  This exploratory fix\nmoves rcu_scheduler_starting() earlier in boot.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6ae6996a466e14bcf41618cde641a74ae03dc285",
      "tree": "20cc2b9b3463b327aaba3442496d1eb63136a9f4",
      "parents": [
        "117a9ac777f8034d4675b821172d2ff71f6ec47a"
      ],
      "author": {
        "name": "Feng Tang",
        "email": "feng.tang@intel.com",
        "time": "Fri Aug 14 15:13:46 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Aug 28 19:57:33 2009 -0400"
      },
      "message": "SFI: add platform-independent core support\n\ndrivers/sfi/sfi_core.c contains the generic SFI implementation.\nIt has a private header, sfi_core.h, for its own use and the\nprivate use of future files in drivers/sfi/\n\nSigned-off-by: Feng Tang \u003cfeng.tang@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "fa84e9eecfff478df2d00e94deb3fc40fe4634ad",
      "tree": "f7fead8e4b2dfbac63fc9bed132d12a95b9690cd",
      "parents": [
        "1e23502cc57cef33455ac7cb9111e3c6d991a894"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Aug 21 22:01:12 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Aug 27 16:38:18 2009 +0200"
      },
      "message": "init: Move sched_clock_init after late_time_init\n\nSome architectures initialize clocks and timers in late_time_init and\nx86 wants to do the same to avoid FIXMAP hackery for calibrating the\nTSC. That would result in undefined sched_clock readout and wreckaged\nprintk timestamps again. We probably have those already on archs which\ndo all their time/clock setup in late_time_init.\n\nThere is no harm to move that after late_time_init except that a few\nmore boot timestamps are stale. The scheduler is not active at that\npoint so no real wreckage is expected.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "7d63e6359a2e86cd6335337de99354ab07680c55",
      "tree": "8d33df8863b171a88508868c6670e0a553e44a30",
      "parents": [
        "9f459fadbb38abe68aa342f533ca17d8d90d6f2e",
        "4a683bf94b8a10e2bb0da07aec3ac0a55e5de61f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 25 11:23:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 25 11:23:43 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix too large stack usage in do_one_initcall()\n  tracing: handle broken names in ftrace filter\n  ftrace: Unify effect of writing to trace_options and option/*\n"
    },
    {
      "commit": "4a683bf94b8a10e2bb0da07aec3ac0a55e5de61f",
      "tree": "57ef71a93597b284ea90c9ff3436d183ea83675a",
      "parents": [
        "eda1e328556565e211b7450250e40d6de751563a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 21 12:53:36 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 21 13:03:22 2009 +0200"
      },
      "message": "tracing: Fix too large stack usage in do_one_initcall()\n\nOne of my testboxes triggered this nasty stack overflow crash\nduring SCSI probing:\n\n[    5.874004] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn\u0027t support DPO or FUA\n[    5.875004] device: \u0027sda\u0027: device_add\n[    5.878004] BUG: unable to handle kernel NULL pointer dereference at 00000a0c\n[    5.878004] IP: [\u003cb1008321\u003e] print_context_stack+0x81/0x110\n[    5.878004] *pde \u003d 00000000\n[    5.878004] Thread overran stack, or stack corrupted\n[    5.878004] Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC\n[    5.878004] last sysfs file:\n[    5.878004]\n[    5.878004] Pid: 1, comm: swapper Not tainted (2.6.31-rc6-tip-01272-g9919e28-dirty #5685)\n[    5.878004] EIP: 0060:[\u003cb1008321\u003e] EFLAGS: 00010083 CPU: 0\n[    5.878004] EIP is at print_context_stack+0x81/0x110\n[    5.878004] EAX: cf8a3000 EBX: cf8a3fe4 ECX: 00000049 EDX: 00000000\n[    5.878004] ESI: b1cfce84 EDI: 00000000 EBP: cf8a3018 ESP: cf8a2ff4\n[    5.878004]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068\n[    5.878004] Process swapper (pid: 1, ti\u003dcf8a2000 task\u003dcf8a8000 task.ti\u003dcf8a3000)\n[    5.878004] Stack:\n[    5.878004]  b1004867 fffff000 cf8a3ffc\n[    5.878004] Call Trace:\n[    5.878004]  [\u003cb1004867\u003e] ? kernel_thread_helper+0x7/0x10\n[    5.878004] BUG: unable to handle kernel NULL pointer dereference at 00000a0c\n[    5.878004] IP: [\u003cb1008321\u003e] print_context_stack+0x81/0x110\n[    5.878004] *pde \u003d 00000000\n[    5.878004] Thread overran stack, or stack corrupted\n[    5.878004] Oops: 0000 [#2] PREEMPT SMP DEBUG_PAGEALLOC\n\nThe oops did not reveal any more details about the real stack\nthat we have and the system got into an infinite loop of\nrecursive pagefaults.\n\nSo i booted with CONFIG_STACK_TRACER\u003dy and the \u0027stacktrace\u0027 boot\nparameter. The box did not crash (timings/conditions probably\nchanged a tiny bit to trigger the catastrophic crash), but the\n/debug/tracing/stack_trace file was rather revealing:\n\n        Depth    Size   Location    (72 entries)\n        -----    ----   --------\n  0)     3704      52   __change_page_attr+0xb8/0x290\n  1)     3652      24   __change_page_attr_set_clr+0x43/0x90\n  2)     3628      60   kernel_map_pages+0x108/0x120\n  3)     3568      40   prep_new_page+0x7d/0x130\n  4)     3528      84   get_page_from_freelist+0x106/0x420\n  5)     3444     116   __alloc_pages_nodemask+0xd7/0x550\n  6)     3328      36   allocate_slab+0xb1/0x100\n  7)     3292      36   new_slab+0x1c/0x160\n  8)     3256      36   __slab_alloc+0x133/0x2b0\n  9)     3220       4   kmem_cache_alloc+0x1bb/0x1d0\n 10)     3216     108   create_object+0x28/0x250\n 11)     3108      40   kmemleak_alloc+0x81/0xc0\n 12)     3068      24   kmem_cache_alloc+0x162/0x1d0\n 13)     3044      52   scsi_pool_alloc_command+0x29/0x70\n 14)     2992      20   scsi_host_alloc_command+0x22/0x70\n 15)     2972      24   __scsi_get_command+0x1b/0x90\n 16)     2948      28   scsi_get_command+0x35/0x90\n 17)     2920      24   scsi_setup_blk_pc_cmnd+0xd4/0x100\n 18)     2896     128   sd_prep_fn+0x332/0xa70\n 19)     2768      36   blk_peek_request+0xe7/0x1d0\n 20)     2732      56   scsi_request_fn+0x54/0x520\n 21)     2676      12   __generic_unplug_device+0x2b/0x40\n 22)     2664      24   blk_execute_rq_nowait+0x59/0x80\n 23)     2640     172   blk_execute_rq+0x6b/0xb0\n 24)     2468      32   scsi_execute+0xe0/0x140\n 25)     2436      64   scsi_execute_req+0x152/0x160\n 26)     2372      60   scsi_vpd_inquiry+0x6c/0x90\n 27)     2312      44   scsi_get_vpd_page+0x112/0x160\n 28)     2268      52   sd_revalidate_disk+0x1df/0x320\n 29)     2216      92   rescan_partitions+0x98/0x330\n 30)     2124      52   __blkdev_get+0x309/0x350\n 31)     2072       8   blkdev_get+0xf/0x20\n 32)     2064      44   register_disk+0xff/0x120\n 33)     2020      36   add_disk+0x6e/0xb0\n 34)     1984      44   sd_probe_async+0xfb/0x1d0\n 35)     1940      44   __async_schedule+0xf4/0x1b0\n 36)     1896       8   async_schedule+0x12/0x20\n 37)     1888      60   sd_probe+0x305/0x360\n 38)     1828      44   really_probe+0x63/0x170\n 39)     1784      36   driver_probe_device+0x5d/0x60\n 40)     1748      16   __device_attach+0x49/0x50\n 41)     1732      32   bus_for_each_drv+0x5b/0x80\n 42)     1700      24   device_attach+0x6b/0x70\n 43)     1676      16   bus_attach_device+0x47/0x60\n 44)     1660      76   device_add+0x33d/0x400\n 45)     1584      52   scsi_sysfs_add_sdev+0x6a/0x2c0\n 46)     1532     108   scsi_add_lun+0x44b/0x460\n 47)     1424     116   scsi_probe_and_add_lun+0x182/0x4e0\n 48)     1308      36   __scsi_add_device+0xd9/0xe0\n 49)     1272      44   ata_scsi_scan_host+0x10b/0x190\n 50)     1228      24   async_port_probe+0x96/0xd0\n 51)     1204      44   __async_schedule+0xf4/0x1b0\n 52)     1160       8   async_schedule+0x12/0x20\n 53)     1152      48   ata_host_register+0x171/0x1d0\n 54)     1104      60   ata_pci_sff_activate_host+0xf3/0x230\n 55)     1044      44   ata_pci_sff_init_one+0xea/0x100\n 56)     1000      48   amd_init_one+0xb2/0x190\n 57)      952       8   local_pci_probe+0x13/0x20\n 58)      944      32   pci_device_probe+0x68/0x90\n 59)      912      44   really_probe+0x63/0x170\n 60)      868      36   driver_probe_device+0x5d/0x60\n 61)      832      20   __driver_attach+0x89/0xa0\n 62)      812      32   bus_for_each_dev+0x5b/0x80\n 63)      780      12   driver_attach+0x1e/0x20\n 64)      768      72   bus_add_driver+0x14b/0x2d0\n 65)      696      36   driver_register+0x6e/0x150\n 66)      660      20   __pci_register_driver+0x53/0xc0\n 67)      640       8   amd_init+0x14/0x16\n 68)      632     572   do_one_initcall+0x2b/0x1d0\n 69)       60      12   do_basic_setup+0x56/0x6a\n 70)       48      20   kernel_init+0x84/0xce\n 71)       28      28   kernel_thread_helper+0x7/0x10\n\nThere\u0027s a lot of fat functions on that stack trace, but\nthe largest of all is do_one_initcall(). This is due to\nthe boot trace entry variables being on the stack.\n\nFixing this is relatively easy, initcalls are fundamentally\nserialized, so we can move the local variables to file scope.\n\nNote that this large stack footprint was present for a\ncouple of months already - what pushed my system over\nthe edge was the addition of kmemleak to the call-chain:\n\n  6)     3328      36   allocate_slab+0xb1/0x100\n  7)     3292      36   new_slab+0x1c/0x160\n  8)     3256      36   __slab_alloc+0x133/0x2b0\n  9)     3220       4   kmem_cache_alloc+0x1bb/0x1d0\n 10)     3216     108   create_object+0x28/0x250\n 11)     3108      40   kmemleak_alloc+0x81/0xc0\n 12)     3068      24   kmem_cache_alloc+0x162/0x1d0\n 13)     3044      52   scsi_pool_alloc_command+0x29/0x70\n\nThis pushes the total to ~3800 bytes, only a tiny bit\nmore was needed to corrupt the on-kernel-stack thread_info.\n\nThe fix reduces the stack footprint from 572 bytes\nto 28 bytes.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "384be2b18a5f9475eab9ca2bdfa95cc1a04ef59c",
      "tree": "04c93f391a1b65c8bf8d7ba8643c07d26c26590a",
      "parents": [
        "a76761b621bcd8336065c4fe3a74f046858bc34c",
        "142d44b0dd6741a64a7bdbe029110e7c1dcf1d23"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Aug 14 14:41:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Aug 14 14:45:31 2009 +0900"
      },
      "message": "Merge branch \u0027percpu-for-linus\u0027 into percpu-for-next\n\nConflicts:\n\tarch/sparc/kernel/smp_64.c\n\tarch/x86/kernel/cpu/perf_counter.c\n\tarch/x86/kernel/setup_percpu.c\n\tdrivers/cpufreq/cpufreq_ondemand.c\n\tmm/percpu.c\n\nConflicts in core and arch percpu codes are mostly from commit\ned78e1e078dd44249f88b1dd8c76dafb39567161 which substituted many\nnum_possible_cpus() with nr_cpu_ids.  As for-next branch has moved all\nthe first chunk allocators into mm/percpu.c, the changes are moved\nfrom arch code to mm/percpu.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "d6647bdf98a0de19963de8d5d9698d469ed72097",
      "tree": "9222f824e53d69212a4ea9ff13e248bdfcc36704",
      "parents": [
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jul 21 17:11:50 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Aug 14 12:56:54 2009 +0900"
      },
      "message": "init: set nr_cpu_ids before setup_per_cpu_areas()\n\nnr_cpu_ids is dependent only on cpu_possible_map and\nsetup_per_cpu_areas() already depends on cpu_possible_map and will use\nnr_cpu_ids.  Initialize nr_cpu_ids before setting up percpu areas.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "c43768cbb7655ea5ff782ae250f6e2ef4297cf98",
      "tree": "3982e41dde3eecaa3739a5d1a8ed18d04bd74f01",
      "parents": [
        "1a8dd307cc0a2119be4e578c517795464e6dabba",
        "746a99a5af60ee676afa2ba469ccd1373493c7e7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jul 04 07:13:18 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jul 04 07:13:18 2009 +0900"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nPull linus#master to merge PER_CPU_DEF_ATTRIBUTES and alpha build fix\nchanges.  As alpha in percpu tree uses \u0027weak\u0027 attribute instead of\ninline assembly, there\u0027s no need for __used attribute.\n\nConflicts:\n\tarch/alpha/include/asm/percpu.h\n\tarch/mn10300/kernel/vmlinux.lds.S\n\tinclude/linux/percpu-defs.h\n"
    },
    {
      "commit": "e74e396204bfcb67570ba4517b08f5918e69afea",
      "tree": "df57c859e10f7fcbe5790e9b51a106d5bccfe8dc",
      "parents": [
        "0017c869ddcb73069905d09f9e98e68627466237"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 30 19:07:44 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:35 2009 +0900"
      },
      "message": "percpu: use dynamic percpu allocator as the default percpu allocator\n\nThis patch makes most !CONFIG_HAVE_SETUP_PER_CPU_AREA archs use\ndynamic percpu allocator.  The first chunk is allocated using\nembedding helper and 8k is reserved for modules.  This ensures that\nthe new allocator behaves almost identically to the original allocator\nas long as static percpu variables are concerned, so it shouldn\u0027t\nintroduce much breakage.\n\ns390 and alpha use custom SHIFT_PERCPU_PTR() to work around addressing\nrange limit the addressing model imposes.  Unfortunately, this breaks\nif the address is specified using a variable, so for now, the two\narchs aren\u0027t converted.\n\nThe following architectures are affected by this change.\n\n* sh\n* arm\n* cris\n* mips\n* sparc(32)\n* blackfin\n* avr32\n* parisc (broken, under investigation)\n* m32r\n* powerpc(32)\n\nAs this change makes the dynamic allocator the default one,\nCONFIG_HAVE_DYNAMIC_PER_CPU_AREA is replaced with its invert -\nCONFIG_HAVE_LEGACY_PER_CPU_AREA, which is added to yet-to-be converted\narchs.  These archs implement their own setup_per_cpu_areas() and the\nconversion is not trivial.\n\n* powerpc(64)\n* sparc(64)\n* ia64\n* alpha\n* s390\n\nBoot and batch alloc/free tests on x86_32 with debug code (x86_32\ndoesn\u0027t use default first chunk initialization).  Compile tested on\nsparc(32), powerpc(32), arm and alpha.\n\nKyle McMartin reported that this change breaks parisc.  The problem is\nstill under investigation and he is okay with pushing this patch\nforward and fixing parisc later.\n\n[ Impact: use dynamic allocator for most archs w/o custom percpu setup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fbe8cddd2d85979d273d7937a2b8a47498694d91",
      "tree": "2ae3253bfd89337583d36afd783145786ffa531e",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1",
        "e86435eb91b2bff114c5a02e46e16ce21b647ebe",
        "7fe2a6c275a5bcec52fb3ef643daaf8265b7af0d",
        "0705495d9010048e293013d9d129cf723363a0a8",
        "35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2",
        "152a4e630f7ffdd7ff64427c4ba488dc0bce76af",
        "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
        "c8d72a5e76988140bfdfd8722f2228d94e7fa10f",
        "7a04b8491a077471a34938b8ca060c37220953be",
        "ee1ca48fae7e575d5e399d4fdcfe0afc1212a64c",
        "9eccbc2f67efd0d19c47f40182abf2965c287add",
        "7e275cc4e8e20f82740bf40ae2f5695e9e35ff09",
        "7b768f07dce463a054c9dd84862d15ccc3d2b712",
        "8cb24c8fd70ea8431744de1ca0ca34ab45fbbdaa",
        "113b3a2b901573961509e81a28e9546cf9defef0",
        "d73772474f6ebbacbe820c31c0fa1cffa7160246",
        "056c308d3e4859334b519033d62ef050f0e0e261",
        "871043bc463e7d191e7b5b00436a8852921dd833"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "message": "Merge branches \u0027acerhdf\u0027, \u0027acpi-pci-bind\u0027, \u0027bjorn-pci-root\u0027, \u0027bugzilla-12904\u0027, \u0027bugzilla-13121\u0027, \u0027bugzilla-13396\u0027, \u0027bugzilla-13533\u0027, \u0027bugzilla-13612\u0027, \u0027c3_lock\u0027, \u0027hid-cleanups\u0027, \u0027misc-2.6.31\u0027, \u0027pdc-leak-fix\u0027, \u0027pnpacpi\u0027, \u0027power_nocheck\u0027, \u0027thinkpad_acpi\u0027, \u0027video\u0027 and \u0027wmi\u0027 into release\n"
    },
    {
      "commit": "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc",
      "tree": "1ab1e09bbe7a0b33bbf19dd725172827bac5bb88",
      "parents": [
        "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "message": "mm/init: cpu_hotplug_init() must be initialized before SLAB\n\nSLAB uses get/put_online_cpus() which use a mutex which is itself only\ninitialized when cpu_hotplug_init() is called.  Currently we hang suring\nboot in SLAB due to doing that too late.\n\nReported by James Bottomley and Sachin Sant (and possibly others).\nDebugged by Benjamin Herrenschmidt.\n\nThis just removes the dynamic initialization of the data structures, and\nreplaces it with a static one, avoiding this dependency entirely, and\nremoving one unnecessary special initcall.\n\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nTested-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nTested-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcce284a259373f9e5570f2e33f79eca84fcf565",
      "tree": "afc4b23208974f17c080ea3d2ecfbaca4254c010",
      "parents": [
        "9729a6eb5878a3daa18395f2b5fb38bf9359a761"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu Jun 18 13:24:12 2009 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:12:57 2009 -0700"
      },
      "message": "mm: Extend gfp masking to the page allocator\n\nThe page allocator also needs the masking of gfp flags during boot,\nso this moves it out of slab/slub and uses it with the page allocator\nas well.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b99b87f70c7785ab1e253c6220f4b0b57ce3a7f7",
      "tree": "ec5688052334448ec8edd3a1a9cb95cd68501ac7",
      "parents": [
        "e24aca672ff06aff0e6a1045efab86043ea5f735"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "oberpar@linux.vnet.ibm.com",
        "time": "Wed Jun 17 16:28:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:03:57 2009 -0700"
      },
      "message": "kernel: constructor support\n\nCall constructors (gcc-generated initcall-like functions) during kernel\nstart and module load.  Constructors are e.g.  used for gcov data\ninitialization.\n\nDisable constructor support for usermode Linux to prevent conflicts with\nhost glibc.\n\nSigned-off-by: Peter Oberparleiter \u003coberpar@linux.vnet.ibm.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Li Wei \u003cW.Li@Sun.COM\u003e\nCc: Michael Ellerman \u003cmichaele@au1.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Heiko Carstens \u003cheicars2@linux.vnet.ibm.com\u003e\nCc: Martin Schwidefsky \u003cmschwid2@linux.vnet.ibm.com\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": "c868d550115b9ccc0027c67265b9520790f05601",
      "tree": "a3f9cde54f616e8d69005b217e917cd8025c33d3",
      "parents": [
        "517d08699b250021303f9a7cf0d758b6dc0748ed"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jun 17 13:48:39 2009 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 21:14:42 2009 -0700"
      },
      "message": "mm: Move pgtable_cache_init() earlier\n\nSome architectures need to initialize SLAB caches to be able\nto allocate page tables. They do that from pgtable_cache_init()\nso the later should be called earlier now, best is before\nvmalloc_init().\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "517d08699b250021303f9a7cf0d758b6dc0748ed",
      "tree": "5e5b0134c3fffb78fe9d8b1641a64ff28fdd7bbc",
      "parents": [
        "8eeee4e2f04fc551f50c9d9847da2d73d7d33728",
        "a34601c5d84134055782ee031d58d82f5440e918"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:50:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:50:13 2009 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm: (182 commits)\n  fbdev: bf54x-lq043fb: use kzalloc over kmalloc/memset\n  fbdev: *bfin*: fix __dev{init,exit} markings\n  fbdev: *bfin*: drop unnecessary calls to memset\n  fbdev: bfin-t350mcqb-fb: drop unused local variables\n  fbdev: blackfin has __raw I/O accessors, so use them in fb.h\n  fbdev: s1d13xxxfb: add accelerated bitblt functions\n  tcx: use standard fields for framebuffer physical address and length\n  fbdev: add support for handoff from firmware to hw framebuffers\n  intelfb: fix a bug when changing video timing\n  fbdev: use framebuffer_release() for freeing fb_info structures\n  radeon: P2G2CLK_ALWAYS_ONb tested twice, should 2nd be P2G2CLK_DAC_ALWAYS_ONb?\n  s3c-fb: CPUFREQ frequency scaling support\n  s3c-fb: fix resource releasing on error during probing\n  carminefb: fix possible access beyond end of carmine_modedb[]\n  acornfb: remove fb_mmap function\n  mb862xxfb: use CONFIG_OF instead of CONFIG_PPC_OF\n  mb862xxfb: restrict compliation of platform driver to PPC\n  Samsung SoC Framebuffer driver: add Alpha Channel support\n  atmel-lcdc: fix pixclock upper bound detection\n  offb: use framebuffer_alloc() to allocate fb_info struct\n  ...\n\nManually fix up conflicts due to kmemcheck in mm/slab.c\n"
    },
    {
      "commit": "58568d2a8215cb6f55caf2332017d7bdff954e1c",
      "tree": "ffcdee457494ac78d6550b0aeac86536ca152e7b",
      "parents": [
        "950592f7b991f267d707d372b90f508bbe72acbc"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Tue Jun 16 15:31:49 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:47:31 2009 -0700"
      },
      "message": "cpuset,mm: update tasks\u0027 mems_allowed in time\n\nFix allocating page cache/slab object on the unallowed node when memory\nspread is set by updating tasks\u0027 mems_allowed after its cpuset\u0027s mems is\nchanged.\n\nIn order to update tasks\u0027 mems_allowed in time, we must modify the code of\nmemory policy.  Because the memory policy is applied in the process\u0027s\ncontext originally.  After applying this patch, one task directly\nmanipulates anothers mems_allowed, and we use alloc_lock in the\ntask_struct to protect mems_allowed and memory policy of the task.\n\nBut in the fast path, we didn\u0027t use lock to protect them, because adding a\nlock may lead to performance regression.  But if we don\u0027t add a lock,the\ntask might see no nodes when changing cpuset\u0027s mems_allowed to some\nnon-overlapping set.  In order to avoid it, we set all new allowed nodes,\nthen clear newly disallowed ones.\n\n[lee.schermerhorn@hp.com:\n  The rework of mpol_new() to extract the adjusting of the node mask to\n  apply cpuset and mpol flags \"context\" breaks set_mempolicy() and mbind()\n  with MPOL_PREFERRED and a NULL nodemask--i.e., explicit local\n  allocation.  Fix this by adding the check for MPOL_PREFERRED and empty\n  node mask to mpol_new_mpolicy().\n\n  Remove the now unneeded \u0027nodes \u003d NULL\u0027 from mpol_new().\n\n  Note that mpol_new_mempolicy() is always called with a non-NULL\n  \u0027nodes\u0027 parameter now that it has been removed from mpol_new().\n  Therefore, we don\u0027t need to test nodes for NULL before testing it for\n  \u0027empty\u0027.  However, just to be extra paranoid, add a VM_BUG_ON() to\n  verify this assumption.]\n[lee.schermerhorn@hp.com:\n\n  I don\u0027t think the function name \u0027mpol_new_mempolicy\u0027 is descriptive\n  enough to differentiate it from mpol_new().\n\n  This function applies cpuset set context, usually constraining nodes\n  to those allowed by the cpuset.  However, when the \u0027RELATIVE_NODES flag\n  is set, it also translates the nodes.  So I settled on\n  \u0027mpol_set_nodemask()\u0027, because the comment block for mpol_new() mentions\n  that we need to call this function to \"set nodes\".\n\n  Some additional minor line length, whitespace and typo cleanup.]\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: 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": "722f2a6c87f34ee0fd0130a8cf45f81e0705594a",
      "tree": "50b054df34d2731eb0ba0cf1a6c27e43e7eed428",
      "parents": [
        "7a0aeb14e18ad59394bd9bbc6e57fb345819e748",
        "45e3e1935e2857c54783291107d33323b3ef33c8"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:50:49 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:50:49 2009 +0200"
      },
      "message": "Merge commit \u0027linus/master\u0027 into HEAD\n\nConflicts:\n\tMAINTAINERS\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "dfec072ecd35ba6ecad2d51dde325253ac9a2936",
      "tree": "ccf682a631ef8edc0675d68d004bc3a80b34b648",
      "parents": [
        "e594c8de3bd4e7732ed3340fb01e18ec94b12df2"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Apr 04 00:51:41 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 15:37:30 2009 +0200"
      },
      "message": "kmemcheck: add the kmemcheck core\n\nGeneral description: kmemcheck is a patch to the linux kernel that\ndetects use of uninitialized memory. It does this by trapping every\nread and write to memory that was allocated dynamically (e.g. using\nkmalloc()). If a memory address is read that has not previously been\nwritten to, a message is printed to the kernel log.\n\nThanks to Andi Kleen for the set_memory_4k() solution.\n\nAndrew Morton suggested documenting the shadow member of struct page.\n\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[export kmemcheck_mark_initialized]\n[build fix for setup_max_cpus]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n"
    },
    {
      "commit": "4a7a16dc061e4c57bf288150f51bd4c2ace33723",
      "tree": "34bd1b25321269b8ad8a172e03655db2a28ecca7",
      "parents": [
        "c4bf2f372db09ef8d16a25a60d523bfa1c50f7b5"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jun 12 20:42:08 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jun 12 20:50:38 2009 -0400"
      },
      "message": "ACPI: move declaration acpi_early_init() to acpi.h\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\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": "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"
    }
  ],
  "next": "444f478f65c7ca4606f9965b31feed13fe2bc9fa"
}
