)]}'
{
  "log": [
    {
      "commit": "2b17fa506c418e9fb02bbbc7f426d2bbb5b247a6",
      "tree": "bc010d85f71ff6f6f8fa3e7038d8ad5eb3526aec",
      "parents": [
        "0451fb2ebc4f65c265bb51d71a2fc986ebf20218"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:12 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:12 2009 +1030"
      },
      "message": "cpumask: use set_cpu_active in init/main.c\n\ncpu_active_map is deprecated in favor of cpu_active_mask, which is\nconst for safety: we use accessors now (set_cpu_active) is we really\nwant to make a change.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1a2142afa5646ad5af44bbe1febaa5e0b7e71156",
      "tree": "1c76670c82adb46a7726421ad0fcba2994758964",
      "parents": [
        "0d34fb8e93ceba7b6dad0062dbb4a0813bacd75b"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:10 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:11 2009 +1030"
      },
      "message": "cpumask: remove dangerous CPU_MASK_ALL_PTR, \u0026CPU_MASK_ALL\n\nImpact: cleanup\n\n(Thanks to Al Viro for reminding me of this, via Ingo)\n\nCPU_MASK_ALL is the (deprecated) \"all bits set\" cpumask, defined as so:\n\n\t#define CPU_MASK_ALL (cpumask_t) { { ... } }\n\nTaking the address of such a temporary is questionable at best,\nunfortunately 321a8e9d (cpumask: add CPU_MASK_ALL_PTR macro) added\nCPU_MASK_ALL_PTR:\n\n\t#define CPU_MASK_ALL_PTR (\u0026CPU_MASK_ALL)\n\nWhich formalizes this practice.  One day gcc could bite us over this\nusage (though we seem to have gotten away with it so far).\n\nSo replace everywhere which used \u0026CPU_MASK_ALL or CPU_MASK_ALL_PTR\nwith the modern \"cpu_all_mask\" (a real const struct cpumask *).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReported-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "eedf2c5296a8dfaaf9aec1a938c1d3bd73159a30",
      "tree": "a02e5ef1f2ae46c6328a6744e806c9e7dbff7327",
      "parents": [
        "0151f94f2e61c39858e714a5d92244b0e5a7fdf5",
        "df52092f3c97788592ef72501a43fb7ac6a3cfe0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 14:00:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 14:00:33 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30:\n  fastboot: remove duplicate unpack_to_rootfs()\n  ide/net: flip the order of SATA and network init\n  async: remove the temporary (2.6.29) \"async is off by default\" code\n\nFix up conflicts in init/initramfs.c manually\n"
    },
    {
      "commit": "df52092f3c97788592ef72501a43fb7ac6a3cfe0",
      "tree": "1c708b2f43db6cf30bc1397ba5d3a520d0d370b7",
      "parents": [
        "0c406263f0a22b9fad65404cf2b14eced0739485"
      ],
      "author": {
        "name": "Li, Shaohua",
        "email": "shaohua.li@intel.com",
        "time": "Wed Aug 13 17:26:01 2008 +0800"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Mar 28 13:06:22 2009 -0700"
      },
      "message": "fastboot: remove duplicate unpack_to_rootfs()\n\nwe check if initrd is initramfs first and then do the real unpack. The check\nisn\u0027t required, we can directly do unpack.  If the initrd isn\u0027t an\ninitramfs, we can remove the garbage.  In my laptop, this saves 0.1s boot\ntime.\n\nThis patch penalizes non-initramfs initrd case, but nowadays, initramfs is\nthe most widely used method for initrds.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6411fe7e09b67470a2569231d6fa566c7c29b8b",
      "tree": "f12d569c70ff937175eb5cde2195fccfe2fa34eb",
      "parents": [
        "df1c99d416500da8d26a4d78777467c53ee7689e",
        "f24ade3a3332811a512ed3b6c6aa69486719b1d8",
        "9ead64974b05501bbac0d63a47c99fa786d064ba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 04:50:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 04:50:44 2009 +0100"
      },
      "message": "Merge branches \u0027sched/clock\u0027, \u0027sched/urgent\u0027 and \u0027linus\u0027 into sched/core\n"
    },
    {
      "commit": "b943c460ff8556a193b28e2145b513f8b978e869",
      "tree": "766b11d2bb85bcd74675971dd933c26667d0f446",
      "parents": [
        "475049809977bf3975d78f2d2fd992e19ce2d59e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Mar 10 12:55:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "menu: fix embedded menu snafu\n\nThe COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in\nthe midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED menu.\nFix by moving it to just after all of the EMBEDDED menu symbols.  Also,\nANON_INODES has a similar problem, so move it to just above the EMBEDDED\nmenu items since it is used in the EMBEDDED menu.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49d2d266adff27793fed247a2e9e672d59b6ddc6",
      "tree": "aa23052f8b6e9f1a96e56873c940eef7110f0013",
      "parents": [
        "5512b3ece0cbb5024b83099963222700aa45f59e",
        "fec6c6fec3e20637bee5d276fb61dd8b49a3f9cc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 11:59:10 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 11:59:10 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.29-rc7\u0027 into sched/core\n"
    },
    {
      "commit": "8b0e5860cb099d7958d13b00ffbc35ad02735700",
      "tree": "fa95e40d50a891c9a671873c7effbc8a66c6b47d",
      "parents": [
        "b6122b3843216f3f8e9624f9e876f4f0514f9205",
        "327f4387e39cf7bfe79a673e56dbf5479db3fec9",
        "c577b098f9bf467fb05dc279ba83604cb3f7cea0",
        "03787ceed8f7bf06af29f3b213017d89f8e9423d",
        "2fb6b2a048ed8fa3f049c7d42f7a2dd3f0c8d7a6",
        "ab76f3d771590d5c89faa3219559c5d3fc0ce0c2",
        "2505170211f7630361a852e25b60f4df4c878daa",
        "780eef9492b16a1543a3b2ae9f9526a735fc9856"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:22:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:22:31 2009 +0100"
      },
      "message": "Merge branches \u0027x86/apic\u0027, \u0027x86/cpu\u0027, \u0027x86/fixmap\u0027, \u0027x86/mm\u0027, \u0027x86/sched\u0027, \u0027x86/setup-lzma\u0027, \u0027x86/signal\u0027 and \u0027x86/urgent\u0027 into x86/core\n"
    },
    {
      "commit": "2450cf51a1bdba7037e91b1bcc494b01c58aaf66",
      "tree": "406b27ef95cb13f5d99a3b8bfd0a2b2310d33e99",
      "parents": [
        "43e407071d97c1a07a4601896581554a6b3bfd67"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 16:23:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 16:23:33 2009 -0800"
      },
      "message": "Revert \"menu: fix embedded menu snafu\"\n\nThis reverts commit 155b25bcc28631a5b5230191aa3f56c40dfffa3f, which was\ntotally wrong - the \"embedded\" options still exists (very much so) even\non non-embedded platforms.\n\nIt\u0027s just that we don\u0027t bother with actually asking about them when\nwe\u0027re not embedded, we just take their default values (which is usually\n\u0027y\u0027 - the options add features that may not be worth it in a constrained\nenvironment).\n\nNoticed-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "155b25bcc28631a5b5230191aa3f56c40dfffa3f",
      "tree": "078d3dbce92fbe568671ee0d16f60f2ec27bb74e",
      "parents": [
        "d86a1c3de557c019696499ff211b91232fad0fe9"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Mar 02 14:14:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 15:49:16 2009 -0800"
      },
      "message": "menu: fix embedded menu snafu\n\nThe COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in\nthe midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED\nmenu.  Fix by moving it to just after all of the EMBEDDED menu symbols.\n\nAlso, surround all of the EMBEDDED symbols with \"if EMBEDDED\"/\"endif\" so\nthat this EMBEDDED block is clearer.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4434e5156409eb3ec98f5ad7f0a0c07ebafe970d",
      "tree": "c7f148cdae7a6cf4013253c6c2dbd1c49e837e32",
      "parents": [
        "2b8f836fb196acede88b6cc772e9057e0a9c0223",
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 13:22:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 13:22:13 2009 +0100"
      },
      "message": "Merge branches \u0027sched/cleanups\u0027, \u0027sched/urgent\u0027 and \u0027linus\u0027 into sched/core\n"
    },
    {
      "commit": "a682604838763981613e42015cd0e39f2989d6bb",
      "tree": "29eae425e484edc494807702696c240ce09ba3f5",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Feb 25 18:03:42 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 04:08:14 2009 +0100"
      },
      "message": "rcu: Teach RCU that idle task is not quiscent state at boot\n\nThis patch fixes a bug located by Vegard Nossum with the aid of\nkmemcheck, updated based on review comments from Nick Piggin,\nIngo Molnar, and Andrew Morton.  And cleans up the variable-name\nand function-name language.  ;-)\n\nThe boot CPU runs in the context of its idle thread during boot-up.\nDuring this time, idle_cpu(0) will always return nonzero, which will\nfool Classic and Hierarchical RCU into deciding that a large chunk of\nthe boot-up sequence is a big long quiescent state.  This in turn causes\nRCU to prematurely end grace periods during this time.\n\nThis patch changes the rcutree.c and rcuclassic.c rcu_check_callbacks()\nfunction to ignore the idle task as a quiescent state until the\nsystem has started up the scheduler in rest_init(), introducing a\nnew non-API function rcu_idle_now_means_idle() to inform RCU of this\ntransition.  RCU maintains an internal rcu_idle_cpu_truthful variable\nto track this state, which is then used by rcu_check_callback() to\ndetermine if it should believe idle_cpu().\n\nBecause this patch has the effect of disallowing RCU grace periods\nduring long stretches of the boot-up sequence, this patch also introduces\nJosh Triplett\u0027s UP-only optimization that makes synchronize_rcu() be a\nno-op if num_online_cpus() returns 1.  This allows boot-time code that\ncalls synchronize_rcu() to proceed normally.  Note, however, that RCU\ncallbacks registered by call_rcu() will likely queue up until later in\nthe boot sequence.  Although rcuclassic and rcutree can also use this\nsame optimization after boot completes, rcupreempt must restrict its\nuse of this optimization to the portion of the boot sequence before the\nscheduler starts up, given that an rcupreempt RCU read-side critical\nsection may be preeempted.\n\nIn addition, this patch takes Nick Piggin\u0027s suggestion to make the\nsystem_state global variable be __read_mostly.\n\nChanges since v4:\n\no\tChanges the name of the introduced function and variable to\n\tbe less emotional.  ;-)\n\nChanges since v3:\n\no\tWARN_ON(nr_context_switches() \u003e 0) to verify that RCU\n\tswitches out of boot-time mode before the first context\n\tswitch, as suggested by Nick Piggin.\n\nChanges since v2:\n\no\tCreated rcu_blocking_is_gp() internal-to-RCU API that\n\tdetermines whether a call to synchronize_rcu() is itself\n\ta grace period.\n\no\tThe definition of rcu_blocking_is_gp() for rcuclassic and\n\trcutree checks to see if but a single CPU is online.\n\no\tThe definition of rcu_blocking_is_gp() for rcupreempt\n\tchecks to see both if but a single CPU is online and if\n\tthe system is still in early boot.\n\n\tThis allows rcupreempt to again work correctly if running\n\ton a single CPU after booting is complete.\n\no\tAdded check to rcupreempt\u0027s synchronize_sched() for there\n\tbeing but one online CPU.\n\nTested all three variants both SMP and !SMP, booted fine, passed a short\nrcutorture test on both x86 and Power.\n\nLocated-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nTested-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fc6fc7f1b1095b92d4834e69b385b91e412a7ce5",
      "tree": "2ad451d5dac4d460830536944cef1de93be36b2a",
      "parents": [
        "ef1f87aa7ba6224bef1b750b3272ba281d8f43ed",
        "770824bdc421ff58a64db608294323571c949f4c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 20:05:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 20:05:19 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/apic\n\nConflicts:\n\tarch/x86/mach-default/setup.c\n\nSemantic conflict resolution:\n\tarch/x86/kernel/setup.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "216773a787c3c46ef26bf1742c1fdba37d26be45",
      "tree": "aac387553fd53cb0c06b5cc2ee86329ce793bed6",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Feb 14 01:59:06 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "Consolidate driver_probe_done() loops into one place\n\nthere\u0027s a few places that currently loop over driver_probe_done(), and\nI\u0027m about to add another one. This patch abstracts it into a helper\nto reduce duplication.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "140573d33b703194b7e1893711e78b7f546cca7c",
      "tree": "8e215102e7c5222013df84ceed8b961728d2db91",
      "parents": [
        "34cb61359b503d7aff6447acb037a5efd6ce93b2",
        "ceacc2c1c85ac498ca4cf297bdfe5b4aaa9fd0e0",
        "483b4ee60edbefdfbff0dd538fb81f368d9e7c0d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 08 20:12:46 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 08 20:12:46 2009 +0100"
      },
      "message": "Merge branches \u0027sched/rt\u0027 and \u0027sched/urgent\u0027 into sched/core\n"
    },
    {
      "commit": "65a4e574d2382d83f71b30ea92f86d2e40a6ef8d",
      "tree": "d265ad2f64a3ae35ee3a9ad43b8c55b0e87f6c99",
      "parents": [
        "d8106d2e24d54497233ca9cd97fa9bec807de458"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 31 03:36:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 05 22:27:54 2009 +0100"
      },
      "message": "smp, generic: introduce arch_disable_smp_support() instead of disable_ioapic_setup()\n\nImpact: cleanup\n\ndisable_ioapic_setup() in init/main.c is ugly as the function is\nx86-specific. The #ifdef inline prototype there is ugly too.\n\nReplace it with a generic arch_disable_smp_support() function - which\nhas a weak alias for non-x86 architectures and for non-ioapic x86 builds.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ddeb51d9c83931c1ca6abf76a38934c5a1ed918",
      "tree": "fc2efb59d627135ea2199a8a68415b162646b121",
      "parents": [
        "5a611268b69f05262936dd177205acbce4471358",
        "5ee810072175042775e39bdd3eaaa68884c27805"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:01:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:01:51 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/percpu\n\nConflicts:\n\tarch/x86/kernel/setup_percpu.c\n"
    },
    {
      "commit": "2034563ca323ee45f37a32911550d21c1f1e9626",
      "tree": "cb9cfd052df2caa736f95890580b9de39276b77f",
      "parents": [
        "924d26df6b774b85c8b4548189b20e34f904a149",
        "df291fa993c506da89a89264ff8166bccd172a14"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 15:10:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 15:10:37 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:\n  kbuild: fix kbuild.txt typos\n  kbuild: print usage with no arguments in scripts/config\n  Revert \"kbuild: strip generated symbols from *.ko\"\n"
    },
    {
      "commit": "924d26df6b774b85c8b4548189b20e34f904a149",
      "tree": "59e0810a0149a1f8f1d15613c50e4896993310d8",
      "parents": [
        "66673f13c10a817e27d71434c1198a4d874e0cd3",
        "cd1f55a5b49b74e13ed9e7bc74d005803aaa0da8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 15:09:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 15:09:20 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (92 commits)\n  gianfar: Revive VLAN support\n  vlan: Export symbols as non GPL symbols.\n  bnx2x: tx_has_work should not wait for FW\n  netxen: reduce memory footprint\n  netxen: fix vlan tso/checksum offload\n  net: Fix linux/if_frad.h\u0027s suitability for userspace.\n  net: Move config NET_NS to from net/Kconfig to init/Kconfig\n  isdn: Fix missing ifdef in isdn_ppp\n  networking: document \"nc\" in addition to \"netcat\" in netconsole.txt\n  e1000e: workaround hw errata\n  af_key: initialize xfrm encap_oa\n  virtio_net: Fix MAX_PACKET_LEN to support 802.1Q VLANs\n  lcs: fix compilation for !CONFIG_IP_MULTICAST\n  rtl8187: Add termination packet to prevent stall\n  iwlwifi: fix rs_get_rate WARN_ON()\n  p54usb: fix packet loss with first generation devices\n  sctp: Fix another socket race during accept/peeloff\n  sctp: Properly timestamp outgoing data chunks for rtx purposes\n  sctp: Correctly start rtx timer on new packet transmissions.\n  sctp: Fix crc32c calculations on big-endian arhes.\n  ...\n"
    },
    {
      "commit": "d6eb633fe680c18119346a364acff7723245e278",
      "tree": "861608b5c9de7cf40f6e02ed568cd402c137818d",
      "parents": [
        "26285ba35813063ade9abd2c2eaaddba9354f587"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Mon Jan 26 12:25:55 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 26 12:25:55 2009 -0800"
      },
      "message": "net: Move config NET_NS to from net/Kconfig to init/Kconfig\n\nMake NET_NS available underneath the generic Namespaces config option\nsince all of the other namespace options are there.\n\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6552ebae25ffd57574c6e72d17fce67fea08b918",
      "tree": "cde6cc932c7e47d818154b011dfd8a6997d5c18e",
      "parents": [
        "749a440b2218e9937dca8c68e23e51ca4d8d37fe",
        "336f6c322d87806ef93afad6308ac65083a865e5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 22 10:03:02 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 22 10:03:02 2009 +0100"
      },
      "message": "Merge branch \u0027core/debugobjects\u0027 into core/urgent\n"
    },
    {
      "commit": "198030782cedf25391e67e7c88b04f87a5eb6563",
      "tree": "5b7368c6bf052bcb4bb273497a57900720d36f51",
      "parents": [
        "4ec71fa2d2c3f1040348f2604f4b8ccc833d1c2e",
        "92181f190b649f7ef2b79cbf5c00f26ccc66da2a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:39:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:39:51 2009 +0100"
      },
      "message": "Merge branch \u0027x86/mm\u0027 into core/percpu\n\nConflicts:\n\tarch/x86/mm/fault.c\n"
    },
    {
      "commit": "b2b062b8163391c42b3219d466ca1ac9742b9c7b",
      "tree": "f3f920c09b8de694b1bc1d4b878cfd2b0b98c913",
      "parents": [
        "a9de18eb761f7c1c860964b2e5addc1a35c7e861",
        "99937d6455cea95405ac681c86a857d0fcd530bd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 18:37:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 18:37:14 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into stackprotector\n\nConflicts:\n\tarch/x86/include/asm/pda.h\n\tarch/x86/include/asm/system.h\n\nAlso, moved include/asm-x86/stackprotector.h to arch/x86/include/asm.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ceacc2c1c85ac498ca4cf297bdfe5b4aaa9fd0e0",
      "tree": "4bac6a3e5544d90da1ee9437845120204d4bb382",
      "parents": [
        "398a153b16b09a68739928d4502455db9725ac86"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jan 16 14:46:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 15:01:31 2009 +0100"
      },
      "message": "sched: make plist a library facility\n\nIngo Molnar wrote:\n\n\u003e here\u0027s a new build failure with tip/sched/rt:\n\u003e\n\u003e   LD      .tmp_vmlinux1\n\u003e kernel/built-in.o: In function `set_curr_task_rt\u0027:\n\u003e sched.c:(.text+0x3675): undefined reference to `plist_del\u0027\n\u003e kernel/built-in.o: In function `pick_next_task_rt\u0027:\n\u003e sched.c:(.text+0x37ce): undefined reference to `plist_del\u0027\n\u003e kernel/built-in.o: In function `enqueue_pushable_task\u0027:\n\u003e sched.c:(.text+0x381c): undefined reference to `plist_del\u0027\n\nEliminate the plist library kconfig and make it available\nunconditionally.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45ce80fb6b6f9594d1396d44dd7e7c02d596fef8",
      "tree": "2409270f7073c08329ac01c82df0509a264af48c",
      "parents": [
        "23964d2d02984d44aeb2d84d7ffb3359e728df43"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 15 13:50:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 15 16:39:37 2009 -0800"
      },
      "message": "cgroups: consolidate cgroup documents\n\nMove Documentation/cpusets.txt and Documentation/controllers/* to\nDocumentation/cgroups/\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23964d2d02984d44aeb2d84d7ffb3359e728df43",
      "tree": "c84ac4fd111df4277d7a2c6ee7fc8fd503156c0f",
      "parents": [
        "a6b2f87be1aafedc585bad86b77c2e2bbd49b308"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 15 13:50:58 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 15 16:39:37 2009 -0800"
      },
      "message": "cgroups: clean up Kconfig\n\n- move CONFIG_PROC_PID_CPUSET into cgroup menu\n- move MM_OWNER to the bottom for better menu indent\n- fix typos\n- use tabs not spaces\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c903ff837909ccada51243307d4239f86af40179",
      "tree": "01df7f4dc82aecf1c7b8f55cd5ea6b2f808d8f45",
      "parents": [
        "baf48f6577e581a9adb8fe849dc80e24b21d171d"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Thu Jan 15 12:28:29 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 15 23:12:40 2009 +0100"
      },
      "message": "rcu: move Kconfig menu\n\nMove RCU Kconfig options from top-level menu to an \"RCU Subsystem\"\nmenu under the \"General Setup\" menu.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nTested-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ea038917bbdd51a7ae4a898c6a04641324dd033",
      "tree": "6a6f8b1db4d097d260449f88c267e39ab9d2bb3f",
      "parents": [
        "a6525042bfdfcab128bd91fad264de10fd24a55e"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jan 14 21:38:20 2009 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jan 14 21:38:20 2009 +0100"
      },
      "message": "Revert \"kbuild: strip generated symbols from *.ko\"\n\nThis reverts commit ad7a953c522ceb496611d127e51e278bfe0ff483.\n\nAnd commit: (\"allow stripping of generated symbols under CONFIG_KALLSYMS_ALL\")\n            9bb482476c6c9d1ae033306440c51ceac93ea80c\n\nThese stripping patches has caused a set of issues:\n\n1) People have reported compatibility issues with binutils due to\n   lack of support for `--strip-unneeded-symbols\u0027 with objcopy 2.15.92.0.2\n   Reported by: Wenji\n2) ccache and distcc no longer works as expeced\n   Reported by: Ted, Roland, + others\n3) The installed modules increased a lot in size\n   Reported by: Ted, Davej + others\n\nReported-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nReported-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nReported-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "73310a169aebe257efdd35a763cce1c7658f40c9",
      "tree": "4195dba6ed5c20fafc4d790167600433841f125e",
      "parents": [
        "23a22d57a8962479ca630c9542e62d6f86fdf927"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Jan 14 11:28:35 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Jan 14 11:28:35 2009 -0800"
      },
      "message": "init: make initrd/initramfs decompression failure a KERN_EMERG event\n\nImpact: More consistent behaviour, avoid policy in the kernel\n\nUpgrade/downgrade initrd/initramfs decompression failure from\ninconsistently a panic or a KERN_ALERT message to a KERN_EMERG event.\nIt is, however, possible do design a system which can recover from\nthis (using the kernel builtin code and/or the internal initramfs),\nwhich means this is policy, not a technical necessity.\n\nA good way to handle this would be to have a panic-level\u003dX option, to\nforce a panic on a printk above a certain level.  That is a separate\npatch, however.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "23a22d57a8962479ca630c9542e62d6f86fdf927",
      "tree": "5839f8f3125a7ddf90eb6c679908206ba464b7af",
      "parents": [
        "736f93236ce786d1bcf09ad4dcb38a360d35ea1b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Jan 12 14:24:04 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Jan 12 14:34:31 2009 -0800"
      },
      "message": "bzip2/lzma: comprehensible error messages for missing decompressor\n\nInstead of failing to identify a compressed image with a decompressor\nthat we don\u0027t have compiled in, identify it and fail with a\ncomprehensible panic message.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "736f93236ce786d1bcf09ad4dcb38a360d35ea1b",
      "tree": "9d400ee537c86df5b8fbd890d0942e550305bf03",
      "parents": [
        "b17304245f0db0ac69b795c411407808f3f2796d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 10 12:06:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 10 12:06:19 2009 +0100"
      },
      "message": "bzip2/lzma: make flush_buffer() unconditional\n\nImpact: build fix\n\nflush_buffer() is used unconditionally:\n\n  init/initramfs.c:456: error: \u0027flush_buffer\u0027 undeclared (first use in this function)\n  init/initramfs.c:456: error: (Each undeclared identifier is reported only once\n  init/initramfs.c:456: error: for each function it appears in.)\n\nSo remove the decompressor #ifdefs from around it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b17304245f0db0ac69b795c411407808f3f2796d",
      "tree": "63ed3915d9295bd08f640bf25c322064ba787fad",
      "parents": [
        "889c92d21db40be0b7d22a59395060237895bb85",
        "9a100a4464917b5ffff3a8ce1c2758088fd9bb32"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 10 12:04:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 10 12:04:41 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/setup-lzma\n\nConflicts:\n\tinit/do_mounts_rd.c\n"
    },
    {
      "commit": "31aeb6c815549948571eec988ad9728c27d7a68d",
      "tree": "e155438be253924ebb1b792182e406947369b3eb",
      "parents": [
        "c40f6f8bbc4cbd2902671aacd587400ddca62627",
        "fc55584175589b70f4c30cb594f09f4bd6ad5d40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 15:18:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 15:18:49 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  MAINTAINERS: squashfs entry\n  Squashfs: documentation\n  Squashfs: initrd support\n  Squashfs: Kconfig entry\n  Squashfs: Makefiles\n  Squashfs: header files\n  Squashfs: block operations\n  Squashfs: cache operations\n  Squashfs: uid/gid lookup operations\n  Squashfs: fragment block operations\n  Squashfs: export operations\n  Squashfs: super block operations\n  Squashfs: symlink operations\n  Squashfs: regular file operations\n  Squashfs: directory readdir operations\n  Squashfs: directory lookup operations\n  Squashfs: inode operations\n"
    },
    {
      "commit": "c40f6f8bbc4cbd2902671aacd587400ddca62627",
      "tree": "a991e5521e10943f4457fb7f494e00aec75cc7df",
      "parents": [
        "1a7d0f0bec4be078ce2cfb11538c0f4ffbbed8e5",
        "cb6ff208076b5f434db1b8c983429269d719cef5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 14:00:58 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 14:00:58 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-nommu\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-nommu:\n  NOMMU: Support XIP on initramfs\n  NOMMU: Teach kobjsize() about VMA regions.\n  FLAT: Don\u0027t attempt to expand the userspace stack to fill the space allocated\n  FDPIC: Don\u0027t attempt to expand the userspace stack to fill the space allocated\n  NOMMU: Improve procfs output using per-MM VMAs\n  NOMMU: Make mmap allocation page trimming behaviour configurable.\n  NOMMU: Make VMAs per MM as for MMU-mode linux\n  NOMMU: Delete askedalloc and realalloc variables\n  NOMMU: Rename ARM\u0027s struct vm_region\n  NOMMU: Fix cleanup handling in ramfs_nommu_get_umapped_area()\n"
    },
    {
      "commit": "889c92d21db40be0b7d22a59395060237895bb85",
      "tree": "db76e1e002e450cccc1b7a8119ad629eccc24da8",
      "parents": [
        "6c11b12ac6f101732d43b5682f5b3ae4dda4205f"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jan 08 15:14:17 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jan 08 15:14:17 2009 -0800"
      },
      "message": "bzip2/lzma: centralize format detection\n\nCentralize the compression format detection to a common routine in the\nlib directory, and use it for both initramfs and initrd.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "c077719be8e9e6b55702117513d1b5f41d80404a",
      "tree": "3369f02d87390a40f5867d0482972bac506424a8",
      "parents": [
        "d13d144309d2e5a3e6ad978b16c1d0226ddc9231"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Jan 07 18:07:57 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:05 2009 -0800"
      },
      "message": "memcg: mem+swap controller Kconfig\n\nConfig and control variable for mem+swap controller.\n\nThis patch adds CONFIG_CGROUP_MEM_RES_CTLR_SWAP\n(memory resource controller swap extension.)\n\nFor accounting swap, it\u0027s obvious that we have to use additional memory to\nremember \"who uses swap\".  This adds more overhead.  So, it\u0027s better to\noffer \"choice\" to users.  This patch adds 2 choices.\n\nThis patch adds 2 parameters to enable swap extension or not.\n  - CONFIG\n  - boot option\n\nReviewed-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9d5409f8d46fd0d18b4a4481d9caa04076d87fc",
      "tree": "d5c3dc39ed52531b249ad37dd93c26be032c355b",
      "parents": [
        "cae7a366f77ea5c9f54ae98c5fc65056877a89ed"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jan 07 18:07:35 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:02 2009 -0800"
      },
      "message": "memcg: fix a typo in Kconfig\n\ns/contoller/controller/\n\nSigned-of-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5cdc38f98596662620b822a4e13f797c3f2f65e0",
      "tree": "d6a9ccbe59610af212f5486f5f4df2fa14cdcb86",
      "parents": [
        "e04a88a920ff36d03641e1b9c01b7960d94209f1"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Jan 07 18:07:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:01 2009 -0800"
      },
      "message": "cgroups: make cgroup config a submenu\n\nMaking CGROUP related configs be a sub-menu.\n\nThis patch make CGROUP related configs be a sub-menu and makes 1st level\nconfigs of \"General Setup\" shorter.\n\n including following additional changes\n  - add help comment about CGROUPS and GROUP_SCHED.\n  - moved MM_OWNER config to the bottom.\n    (for good indent in menuconfig)\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb6ff208076b5f434db1b8c983429269d719cef5",
      "tree": "96cc88a4f97965e141eb7577beccc4e27ad2ede2",
      "parents": [
        "ab2e83ead4eca9e045daac4cbf66eb1e7a244bb2"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jan 08 12:04:48 2009 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jan 08 12:04:48 2009 +0000"
      },
      "message": "NOMMU: Support XIP on initramfs\n\nSupport XIP on files unpacked from the initramfs image on NOMMU systems.  This\nsimply requires the length of the file to be preset so that the ramfs fs can\nattempt to garner sufficient contiguous storage to store the file (NOMMU mmap\ncan only map contiguous RAM).\n\nAll the other bits to do XIP on initramfs files are present:\n\n (1) ramfs\u0027s truncate attempts to allocate a contiguous run of pages when a\n     file is truncated upwards from nothing.\n\n (2) ramfs sets BDI on its files to indicate direct mapping is possible, and\n     that its files can be mapped for read, write and exec.\n\n (3) NOMMU mmap() will use the above bits to determine that it can do XIP.\n     Possibly this needs better controls, because it will _always_ try and do\n     XIP.\n\nOne disadvantage of this very simplistic approach is that sufficient space\nwill be allocated to store the whole file, and not just the bit that would be\nXIP\u0027d.  To deal with this, though, the initramfs unpacker would have to be\nable to parse the file contents.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "67acd8b4b7a3f1b183ae358e1dfdb8a80e170736",
      "tree": "4418034f6e83f954337a17bc6a872fa5ae3c4b5e",
      "parents": [
        "b13d3720ecd29d5044334fdbbae3432f26802bae",
        "ad160d23198193135cb2bcc75222e0816b5838c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 07 15:35:47 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 07 15:35:47 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async:\n  async: don\u0027t do the initcall stuff post boot\n  bootchart: improve output based on Dave Jones\u0027 feedback\n  async: make the final inode deletion an asynchronous event\n  fastboot: Make libata initialization even more async\n  fastboot: make the libata port scan asynchronous\n  fastboot: make scsi probes asynchronous\n  async: Asynchronous function calls to speed up kernel boot\n"
    },
    {
      "commit": "57c44c5f6fb0a8002feb258c1af58e1a744b1fcb",
      "tree": "978bd46ca765a88e9c101cb705bbb0bf46015643",
      "parents": [
        "76052749143d03006271cc0ce8205ad756917062",
        "5a9e67b1a19e08a82387709f325d26e07b891d27"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 07 11:31:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 07 11:31:52 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (24 commits)\n  trivial: chack -\u003e check typo fix in main Makefile\n  trivial: Add a space (and a comma) to a printk in 8250 driver\n  trivial: Fix misspelling of \"firmware\" in docs for ncr53c8xx/sym53c8xx\n  trivial: Fix misspelling of \"firmware\" in powerpc Makefile\n  trivial: Fix misspelling of \"firmware\" in usb.c\n  trivial: Fix misspelling of \"firmware\" in qla1280.c\n  trivial: Fix misspelling of \"firmware\" in a100u2w.c\n  trivial: Fix misspelling of \"firmware\" in megaraid.c\n  trivial: Fix misspelling of \"firmware\" in ql4_mbx.c\n  trivial: Fix misspelling of \"firmware\" in acpi_memhotplug.c\n  trivial: Fix misspelling of \"firmware\" in ipw2100.c\n  trivial: Fix misspelling of \"firmware\" in atmel.c\n  trivial: Fix misspelled firmware in Kconfig\n  trivial: fix an -\u003e a typos in documentation and comments\n  trivial: fix then -\u003e than typos in comments and documentation\n  trivial: update Jesper Juhl CREDITS entry with new email\n  trivial: fix singal -\u003e signal typo\n  trivial: Fix incorrect use of \"loose\" in event.c\n  trivial: printk: fix indentation of new_text_line declaration\n  trivial: rtc-stk17ta8: fix sparse warning\n  ...\n"
    },
    {
      "commit": "22a9d645677feefd402befd02edd59b122289ef1",
      "tree": "9f1215cc8f7f0e1c36b03882b2926cc26ccfa5ff",
      "parents": [
        "ede6f5aea054d3fb67c78857f7abdee602302043"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jan 07 08:45:46 2009 -0800"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jan 07 08:45:46 2009 -0800"
      },
      "message": "async: Asynchronous function calls to speed up kernel boot\n\nRight now, most of the kernel boot is strictly synchronous, such that\nvarious hardware delays are done sequentially.\n\nIn order to make the kernel boot faster, this patch introduces\ninfrastructure to allow doing some of the initialization steps\nasynchronously, which will hide significant portions of the hardware delays\nin practice.\n\nIn order to not change device order and other similar observables, this\npatch does NOT do full parallel initialization.\n\nRather, it operates more in the way an out of order CPU does; the work may\nbe done out of order and asynchronous, but the observable effects\n(instruction retiring for the CPU) are still done in the original sequence.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "a26ee60f90daffe1de6be0d093af86e7279b3dfd",
      "tree": "01239fb6b173ff46711480b9601c69b92e1715a5",
      "parents": [
        "fb9a4ca9820fd4d7c4906bd393004662451e273e"
      ],
      "author": {
        "name": "Alain Knaff",
        "email": "alain@knaff.lu",
        "time": "Wed Jan 07 00:10:27 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jan 07 00:10:27 2009 -0800"
      },
      "message": "bzip2/lzma: fix built-in initramfs vs CONFIG_RD_GZIP\n\nImpact: Resolves build failures in some configurations\n\nMakes it possible to disable CONFIG_RD_GZIP . In that case, the\nbuilt-in initramfs will be compressed by whatever compressor is\navailable (bzip2 or lzma) or left uncompressed if none is available.\n\nIt also removes a couple of warnings which occur when no ramdisk\ncompression at all is chosen.\n\nIt also restores the select ZLIB_INFLATE in drivers/block/Kconfig\nwhich somehow came missing. This is needed to activate compilation of\nthe stuff in zlib_deflate.\n\nSigned-off-by: Alain Knaff \u003calain@knaff.lu\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "40d7ee5d162203b40b5f4fbb312ab016edddb97f",
      "tree": "432db33df85f7f244676127a189a828dfbf2877b",
      "parents": [
        "5fec8bdbf9a1c4df4ad3f20e52aa2d8caed490c8",
        "b8ac9fc0e8cda9f9776019c5b0464b0c6d2d4c90"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 17:02:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 17:02:07 2009 -0800"
      },
      "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: (60 commits)\n  uio: make uio_info\u0027s name and version const\n  UIO: Documentation for UIO ioport info handling\n  UIO: Pass information about ioports to userspace (V2)\n  UIO: uio_pdrv_genirq: allow custom irq_flags\n  UIO: use pci_ioremap_bar() in drivers/uio\n  arm: struct device - replace bus_id with dev_name(), dev_set_name()\n  libata: struct device - replace bus_id with dev_name(), dev_set_name()\n  avr: struct device - replace bus_id with dev_name(), dev_set_name()\n  block: struct device - replace bus_id with dev_name(), dev_set_name()\n  chris: struct device - replace bus_id with dev_name(), dev_set_name()\n  dmi: struct device - replace bus_id with dev_name(), dev_set_name()\n  gadget: struct device - replace bus_id with dev_name(), dev_set_name()\n  gpio: struct device - replace bus_id with dev_name(), dev_set_name()\n  gpu: struct device - replace bus_id with dev_name(), dev_set_name()\n  hwmon: struct device - replace bus_id with dev_name(), dev_set_name()\n  i2o: struct device - replace bus_id with dev_name(), dev_set_name()\n  IA64: struct device - replace bus_id with dev_name(), dev_set_name()\n  i7300_idle: struct device - replace bus_id with dev_name(), dev_set_name()\n  infiniband: struct device - replace bus_id with dev_name(), dev_set_name()\n  ISDN: struct device - replace bus_id with dev_name(), dev_set_name()\n  ...\n"
    },
    {
      "commit": "d2e3192b6e372a441c18bc8cb32f89ef38f105b7",
      "tree": "0ce1dd9500635be23c86be2334ad4a902f427177",
      "parents": [
        "ca8a5bd28226d62c045e0e55b42b9d10b146c205"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Tue Jan 06 14:41:10 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:14 2009 -0800"
      },
      "message": "init/main.c: mark late_time_init as __initdata\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff083c8372f6312bb3a8c7f7b748920aeeb210c9",
      "tree": "b80de8ca8693b251972526f5a076f1eab3c1407b",
      "parents": [
        "7ec7fb394298c212c30e063c57e0aa895efe9439"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Jan 06 14:40:53 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:12 2009 -0800"
      },
      "message": "autodetect_raid: add missing __init marking\n\nThe function autodetect_raid is only used by __init functions, and it refers\nto __initdata, so it needs __init markings.  Fixes this error:\nThe function autodetect_raid() references\nthe variable __initdata raid_noautodetect.\nThis is often because autodetect_raid lacks a __initdata\nannotation or the annotation of raid_noautodetect is wrong.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1883f86dea84fe47a71a39fc1afccc005915ed8",
      "tree": "357c50d2eb44e9e62c39c0c1025bae7b2b6eba67",
      "parents": [
        "eaccbfa564e48c87626594511f42dc8c0ad2daae"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Jan 06 14:40:45 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:11 2009 -0800"
      },
      "message": "Remove remaining unwinder code\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Gabor Gombas \u003cgombasg@sztaki.hu\u003e\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e,\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bca1033b092a6fab2ed00036e8a7f6e2df5d99a2",
      "tree": "94f2d1124aefe1a383b0cf3d1ca8e983406304e0",
      "parents": [
        "b61312d353da1871778711040464b10f5cd904df"
      ],
      "author": {
        "name": "Marton Balint",
        "email": "cus@fazekas.hu",
        "time": "Tue Jan 06 14:40:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:11 2009 -0800"
      },
      "message": "do_mounts: add device info to mount message\n\nIn the past, I used the root\u003d...  command line parameter to specify the\nroot filesystem to the kernel.  Now it seems that specifying it is not\nnecessary.  The kernel detects the root filesystem even if the kernel\ncommand line is empty.  My root fs is on a raid1 device by the way, and I\nam not using initrd for the boot process.\n\nIf the kernel detects the root filesystem somehow, I think it should print\nout the result of this detection, otherwise I will not know which device\nhas the root filesystem.  Or is there an easy way to get this information\non a running system?  I had a quick look at the /proc and /sys\nfilesystems, but haven\u0027t found anything useful there.\n\nSigned-off-by: Marton Balint \u003ccus@fazekas.hu\u003e\nCc: Christoph Hellwig \u003chch@lst.de\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": "f99ebf0a86de13f77bc4ee349de96db9f2f67f2e",
      "tree": "1f286cd9cd4d69638b4b3cc5d2ed48a6e566ce98",
      "parents": [
        "91f47662dfaa5b459aebe13284c6c38db27350dc"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Tue Jan 06 14:40:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:10 2009 -0800"
      },
      "message": "init: properly placing noinline keyword\n\ncheckpatch warns about \u0027static void noinline\u0027.  It wants `static noinline\nvoid\u0027.\n\nBoth are permissible, but the kernel consistently uses `static inline\u0027 and\n`static noinline\u0027, and consistency is good.  Hence let\u0027s keep the\ncheckpatch warning and fix up this code site.\n\n[akpm@linux-foundation.org: rewrote changelog]\nSigned-off-by: Md.Rakib H. Mullick \u003crakib.mullick@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": "853ac43ab194f5051b27a55060215d696dc9480d",
      "tree": "1f60fd49d516b7b242781a77446993b1dfb5bb66",
      "parents": [
        "69e9930993cfd70d82c8d9dd96fc3a88854d06fc"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Tue Jan 06 14:40:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:08 2009 -0800"
      },
      "message": "shmem: unify regular and tiny shmem\n\ntiny-shmem shares most of its 130 lines of code with shmem and tends to\nbreak when particular bits of shmem get modified.  Unifying saves code and\nmakes keeping these two in sync much easier.\n\nbefore:\n  14367\t    392\t     24\t  14783\t   39bf\tmm/shmem.o\n    396      72       8     476\t    1dc\tmm/tiny-shmem.o\n\nafter:\n  14367\t    392\t     24\t  14783\t   39bf\tmm/shmem.o\n    412\t     72       8     492\t    1ec\tmm/shmem.o tiny\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fce3e804cfad49208fd2ff9db4bcb57481409e1d",
      "tree": "c578c1c3748d5f48f9c85b53e3e221a8fb86e887",
      "parents": [
        "1e0b2cf933ebf32494eba3f668859ba57f06a951"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sat Nov 01 14:03:00 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:31 2009 -0800"
      },
      "message": "sysfs: clarify SYSFS_DEPRECATED help text\n\nThis should make the help text of SYSFS_DEPRECATED more clear, that this\nis _not_ about (what some people think it is) suppressing a few symlinks\nand variables, but a different sysfs _layout_ with new features.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "24d431d06aeeda2b12cc925c6e1693c45ae5088b",
      "tree": "1144662af5da9b7355c88fa98350960366b3f88f",
      "parents": [
        "8e6bdb7f8b478323525444ecee7a1477ff5b6639"
      ],
      "author": {
        "name": "Ron Lee",
        "email": "ron@debian.org",
        "time": "Thu Nov 27 02:31:57 2008 +1030"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Jan 06 11:28:05 2009 +0100"
      },
      "message": "trivial: add missing printk loglevel in start_kernel\n\nAdd missing printk loglevel in start_kernel\n\nSigned-off-by: Ron Lee \u003cron@debian.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b8fed87d3265d21d6f90e34934d93f70cb1e5cc1",
      "tree": "5c6d39e9f38eae8aeaac79e0a2e489ab8a4a6af8",
      "parents": [
        "6ab5c1ca71ea8e04e97cd8ed473bd04e636850fd"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Jan 05 08:46:28 2009 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Jan 05 08:46:28 2009 +0000"
      },
      "message": "Squashfs: initrd support\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "2e9f3bddcbc711bb14d86c6f068a779bf3710247",
      "tree": "bd59cd7b10f8881d89ee4f39b295520a6f18e217",
      "parents": [
        "0f5e2d2484ccd3062bb1f63083bafa37041bc868"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 15:41:25 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 15:53:35 2009 -0800"
      },
      "message": "bzip2/lzma: make config machinery an arch configurable\n\nImpact: Bug fix (we should not show this menu on irrelevant architectures)\n\nMake the config machinery to drive the gzip/bzip2/lzma selection\ndependent on the architecture advertising HAVE_KERNEL_* so that we\ndon\u0027t display this for architectures where it doesn\u0027t matter.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "b172fd882d201cf8aa67cddd9c1a023421fd4956",
      "tree": "31416fc046512818b0e939a93f019fe735a7de59",
      "parents": [
        "30d65dbfe3add7f010a075991dc0bfeaebb7d9e1"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 14:42:52 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 15:53:35 2009 -0800"
      },
      "message": "bzip2/lzma: use a table to search for initramfs compression formats\n\nImpact: Code simplification\n\nInstead of open-coding testing for initramfs compression formats, use\na table.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "30d65dbfe3add7f010a075991dc0bfeaebb7d9e1",
      "tree": "c60ce6748eea43d1e74d96ef03990b1e23f33b1d",
      "parents": [
        "bc22c17e12c130dc929218a95aa347e0f3fd05dc"
      ],
      "author": {
        "name": "Alain Knaff",
        "email": "alain@knaff.lu",
        "time": "Sun Jan 04 22:46:17 2009 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 15:53:35 2009 -0800"
      },
      "message": "bzip2/lzma: config and initramfs support for bzip2/lzma decompression\n\nImpact: New code for initramfs decompression, new features\n\nThis is the second part of the bzip2/lzma patch\n\nThe bzip patch is based on an idea by Christian Ludwig, includes support for\ncompressing the kernel with bzip2 or lzma rather than gzip. Both\ncompressors give smaller sizes than gzip.  Lzma\u0027s decompresses faster\nthan bzip2.\n\nIt also supports ramdisks and initramfs\u0027 compressed using these two\ncompressors.\n\nThe functionality has been successfully used for a couple of years by\nthe udpcast project\n\nThis version applies to \"tip\" kernel 2.6.28\n\nThis part contains:\n- support for new compressions (bzip2 and lzma) in initramfs and\nold-style ramdisk\n- config dialog for kernel compression (but new kernel compressions\nnot yet supported)\n\nSigned-off-by: Alain Knaff \u003calain@knaff.lu\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "a327ca2c2674c5a9a0073421df19bfc362698136",
      "tree": "367d24a3d4bd1a13782b4c4b2bdbdd1c6dfcd11d",
      "parents": [
        "7d3b56ba37a95f1f370f50258ed3954c304c524b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 08 19:00:26 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 05 08:40:10 2009 +1030"
      },
      "message": "remove CONFIG_KMOD\n\nNow that nothing depends on it any more, remove CONFIG_KMOD.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "7d3b56ba37a95f1f370f50258ed3954c304c524b",
      "tree": "86102527b92f02450aa245f084ffb491c18d2e0a",
      "parents": [
        "269b012321f2f1f8e4648c43a93bf432b42c6668",
        "ab14398abd195af91a744c320a52a1bce814dd1e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:04:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:04:39 2009 -0800"
      },
      "message": "Merge branch \u0027cpus4096-for-linus-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027cpus4096-for-linus-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (77 commits)\n  x86: setup_per_cpu_areas() cleanup\n  cpumask: fix compile error when CONFIG_NR_CPUS is not defined\n  cpumask: use alloc_cpumask_var_node where appropriate\n  cpumask: convert shared_cpu_map in acpi_processor* structs to cpumask_var_t\n  x86: use cpumask_var_t in acpi/boot.c\n  x86: cleanup some remaining usages of NR_CPUS where s/b nr_cpu_ids\n  sched: put back some stack hog changes that were undone in kernel/sched.c\n  x86: enable cpus display of kernel_max and offlined cpus\n  ia64: cpumask fix for is_affinity_mask_valid()\n  cpumask: convert RCU implementations, fix\n  xtensa: define __fls\n  mn10300: define __fls\n  m32r: define __fls\n  h8300: define __fls\n  frv: define __fls\n  cris: define __fls\n  cpumask: CONFIG_DISABLE_OBSOLETE_CPUMASK_FUNCTIONS\n  cpumask: zero extra bits in alloc_cpumask_var_node\n  cpumask: replace for_each_cpu_mask_nr with for_each_cpu in kernel/time/\n  cpumask: convert mm/\n  ...\n"
    },
    {
      "commit": "b840d79631c882786925303c2b0f4fefc31845ed",
      "tree": "cda60a95d4507fe1321fc285af38982d7eb9693b",
      "parents": [
        "597b0d21626da4e6f09f132442caf0cc2b0eb47c",
        "c3d80000e3a812fe5a200d6bde755fbd7fa65481"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:44:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:44:09 2009 -0800"
      },
      "message": "Merge branch \u0027cpus4096-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027cpus4096-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (66 commits)\n  x86: export vector_used_by_percpu_irq\n  x86: use logical apicid in x2apic_cluster\u0027s x2apic_cpu_mask_to_apicid_and()\n  sched: nominate preferred wakeup cpu, fix\n  x86: fix lguest used_vectors breakage, -v2\n  x86: fix warning in arch/x86/kernel/io_apic.c\n  sched: fix warning in kernel/sched.c\n  sched: move test_sd_parent() to an SMP section of sched.h\n  sched: add SD_BALANCE_NEWIDLE at MC and CPU level for sched_mc\u003e0\n  sched: activate active load balancing in new idle cpus\n  sched: bias task wakeups to preferred semi-idle packages\n  sched: nominate preferred wakeup cpu\n  sched: favour lower logical cpu number for sched_mc balance\n  sched: framework for sched_mc/smt_power_savings\u003dN\n  sched: convert BALANCE_FOR_xx_POWER to inline functions\n  x86: use possible_cpus\u003dNUM to extend the possible cpus allowed\n  x86: fix cpu_mask_to_apicid_and to include cpu_online_mask\n  x86: update io_apic.c to the new cpumask code\n  x86: Introduce topology_core_cpumask()/topology_thread_cpumask()\n  x86: xen: use smp_call_function_many()\n  x86: use work_on_cpu in x86/kernel/cpu/mcheck/mce_amd_64.c\n  ...\n\nFixed up trivial conflict in kernel/time/tick-sched.c manually\n"
    },
    {
      "commit": "609e5b71d0eca163df017ecfcf917b149875e744",
      "tree": "0ebfe5f2dd06722f63136b30e29b2d39d768c84f",
      "parents": [
        "f9d14250071eda9972e4c9cea745a11185952114"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 16:16:16 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 10:09:27 2009 -0800"
      },
      "message": "kbuild: Remove gcc 4.1.0 quirk from init/main.c\n\nImpact: cleanup\n\nWe now have a cleaner check for gcc 4.1.0/4.1.1 trouble in\ninclude/linux/compiler-gcc4.h, so remove the 4.1.0 quirk from\ninit/main.c.\n\nReported-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0c0ba736547e81c4f986ce192307c549d214167",
      "tree": "6e602e15ca491ddb14d68d9116a1503efb618ac6",
      "parents": [
        "ab53d472e785e51fdfc08fc1d66252c1153e6c0f"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:19 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:19 2009 +1030"
      },
      "message": "cpumask: Use find_last_bit()\n\nImpact: cleanup\n\nThere\u0027s one obvious place to use it: to find the highest possible cpu.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "915441b601e6662e79f6c958e7be307967a96977",
      "tree": "633f7cc711d210671f526f297e48bb79f8dce4de",
      "parents": [
        "4f4b6c1a94a8735bbdc030a2911cf395495645b6"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:15 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:15 2009 +1030"
      },
      "message": "cpumask: Use accessors code in core\n\nImpact: use new API\n\ncpu_*_map are going away in favour of cpu_*_mask, but const pointers.\nSo we have accessors where we really do want to frob them.  Archs\nwill also need the (trivial) conversion before we can finally remove\ncpu_*_map.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "db200df0b3530f673d8e9f5bd535e9e10305842a",
      "tree": "9a94039b8813452c51a50fcb45e95c32a9f0e537",
      "parents": [
        "ec270e59a74eee972006a87c8e12514a20588369",
        "43a256322ac1fc105c181b3cade3b9bfc0b63ca1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 09:00:59 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 09:00:59 2008 -0800"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sparseirq: move __weak symbols into separate compilation unit\n  sparseirq: work around __weak alias bug\n  sparseirq: fix hang with !SPARSE_IRQ\n  sparseirq: set lock_class for legacy irq when sparse_irq is selected\n  sparseirq: work around compiler optimizing away __weak functions\n  sparseirq: fix desc-\u003elock init\n  sparseirq: do not printk when migrating IRQ descriptors\n  sparseirq: remove duplicated arch_early_irq_init()\n  irq: simplify for_each_irq_desc() usage\n  proc: remove ifdef CONFIG_SPARSE_IRQ from stat.c\n  irq: for_each_irq_desc() move to irqnr.h\n  hrtimer: remove #include \u003clinux/irq.h\u003e\n"
    },
    {
      "commit": "2ca1a615835d9f4990f42102ab1f2ef434e7e89c",
      "tree": "726cf3d5f29a6c66c44e4bd68e7ebed2fd83d059",
      "parents": [
        "e12f0102ac81d660c9f801d0a0e10ccf4537a9de",
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Dec 31 23:05:57 2008 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Dec 31 23:05:57 2008 +1030"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tarch/x86/kernel/io_apic.c\n"
    },
    {
      "commit": "a9de18eb761f7c1c860964b2e5addc1a35c7e861",
      "tree": "886e75fdfd09690cd262ca69cb7f5d1d42b48602",
      "parents": [
        "b2aaf8f74cdc84a9182f6cabf198b7763bcb9d40",
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 31 08:31:57 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 31 08:31:57 2008 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into stackprotector\n\nConflicts:\n\tarch/x86/include/asm/pda.h\n\tkernel/fork.c\n"
    },
    {
      "commit": "179475a3b46f86e2d06f83e2312218ac3f0cf3a7",
      "tree": "d4755f722ae606e21ac87baa262041e2580b2568",
      "parents": [
        "bb758e9637e5ddcff84a97177415499ae1fed498",
        "860cf8894b326e4b89720f520540604834337b72"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 16:20:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 16:20:19 2008 -0800"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, sparseirq: clean up Kconfig entry\n  x86: turn CONFIG_SPARSE_IRQ off by default\n  sparseirq: fix numa_migrate_irq_desc dependency and comments\n  sparseirq: add kernel-doc notation for new member in irq_desc, -v2\n  locking, irq: enclose irq_desc_lock_class in CONFIG_LOCKDEP\n  sparseirq, xen: make sure irq_desc is allocated for interrupts\n  sparseirq: fix !SMP building, #2\n  x86, sparseirq: move irq_desc according to smp_affinity, v7\n  proc: enclose desc variable of show_stat() in CONFIG_SPARSE_IRQ\n  sparse irqs: add irqnr.h to the user headers list\n  sparse irqs: handle !GENIRQ platforms\n  sparseirq: fix !SMP \u0026\u0026 !PCI_MSI \u0026\u0026 !HT_IRQ build\n  sparseirq: fix Alpha build failure\n  sparseirq: fix typo in !CONFIG_IO_APIC case\n  x86, MSI: pass irq_cfg and irq_desc\n  x86: MSI start irq numbering from nr_irqs_gsi\n  x86: use NR_IRQS_LEGACY\n  sparse irq_desc[] array: core kernel and x86 changes\n  genirq: record IRQ_LEVEL in irq_desc[]\n  irq.h: remove padding from irq_desc on 64bits\n"
    },
    {
      "commit": "5f34fe1cfc1bdd8b4711bbe37421fba4ed0d1ed4",
      "tree": "85b21c8bb0e53005bd970d648ca093acfd0584a3",
      "parents": [
        "eca1bf5b4fab56d2feb1572d34d59fcd92ea7df3",
        "6638101c1124c19c8a65b1645e4ecd09e0572f3e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 16:10:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 16:10:19 2008 -0800"
      },
      "message": "Merge branch \u0027core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (63 commits)\n  stacktrace: provide save_stack_trace_tsk() weak alias\n  rcu: provide RCU options on non-preempt architectures too\n  printk: fix discarding message when recursion_bug\n  futex: clean up futex_(un)lock_pi fault handling\n  \"Tree RCU\": scalable classic RCU implementation\n  futex: rename field in futex_q to clarify single waiter semantics\n  x86/swiotlb: add default swiotlb_arch_range_needs_mapping\n  x86/swiotlb: add default phys\u003c-\u003ebus conversion\n  x86: unify pci iommu setup and allow swiotlb to compile for 32 bit\n  x86: add swiotlb allocation functions\n  swiotlb: consolidate swiotlb info message printing\n  swiotlb: support bouncing of HighMem pages\n  swiotlb: factor out copy to/from device\n  swiotlb: add arch hook to force mapping\n  swiotlb: allow architectures to override phys\u003c-\u003ebus\u003c-\u003ephys conversions\n  swiotlb: add comment where we handle the overflow of a dma mask on 32 bit\n  rcu: fix rcutorture behavior during reboot\n  resources: skip sanity check of busy resources\n  swiotlb: move some definitions to header\n  swiotlb: allow architectures to override swiotlb pool allocation\n  ...\n\nFix up trivial conflicts in\n  arch/x86/kernel/Makefile\n  arch/x86/mm/init_32.c\n  include/linux/hardirq.h\nas per Ingo\u0027s suggestions.\n"
    },
    {
      "commit": "33edcf133ba93ecba2e4b6472e97b689895d805c",
      "tree": "327d7a20acef64005e7c5ccbfa1265be28aeb6ac",
      "parents": [
        "be4d638c1597580ed2294d899d9f1a2cd10e462c",
        "3c92ec8ae91ecf59d88c798301833d7cf83f2179"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 30 08:02:35 2008 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 30 08:02:35 2008 +1030"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "43a256322ac1fc105c181b3cade3b9bfc0b63ca1",
      "tree": "6f4b6fc286451598d20222af8b511fe0a3fcdcfc",
      "parents": [
        "b2e2fe99628c4f944c3075258e536197b5a4f3f8"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Sun Dec 28 16:01:13 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 29 12:15:49 2008 +0100"
      },
      "message": "sparseirq: move __weak symbols into separate compilation unit\n\nGCC has a bug with __weak alias functions: if the functions are in\nthe same compilation unit as their call site, GCC can decide to\ninline them - and thus rob the linker of the opportunity to override\nthe weak alias with the real thing.\n\nSo move all the IRQ handling related __weak symbols to kernel/irq/chip.c.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96faec945f39cab38403f60f515bff43660b4dab",
      "tree": "e6681330a42303bb34be80d347cd01ff79f5b80a",
      "parents": [
        "2926328554fa740518e2a6585b2cefb01e5f65f3",
        "9bb482476c6c9d1ae033306440c51ceac93ea80c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 15:13:48 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 15:13:48 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (25 commits)\n  allow stripping of generated symbols under CONFIG_KALLSYMS_ALL\n  kbuild: strip generated symbols from *.ko\n  kbuild: simplify use of genksyms\n  kernel-doc: check for extra kernel-doc notations\n  kbuild: add headerdep used to detect inclusion cycles in header files\n  kbuild: fix string equality testing in tags.sh\n  kbuild: fix make tags/cscope\n  kbuild: fix make incompatibility\n  kbuild: remove TAR_IGNORE\n  setlocalversion: add git-svn support\n  setlocalversion: print correct subversion revision\n  scripts: improve the decodecode script\n  scripts/package: allow custom options to rpm\n  genksyms: allow to ignore symbol checksum changes\n  genksyms: track symbol checksum changes\n  tags and cscope support really belongs in a shell script\n  kconfig: fix options to check-lxdialog.sh\n  kbuild: gen_init_cpio expands shell variables in file names\n  remove bashisms from scripts/extract-ikconfig\n  kbuild: teach mkmakfile to be silent\n  ...\n"
    },
    {
      "commit": "b0f4b285d7ed174804658539129a834270f4829a",
      "tree": "be7f8dca58075aba2c6a137fcfd4d44c5c333efc",
      "parents": [
        "be9c5ae4eeec2e85527e95647348b8ea4eb25128",
        "5250d329e38cdf7580faeb9c53c17d3588d7d19c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:21:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:21:10 2008 -0800"
      },
      "message": "Merge branch \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (241 commits)\n  sched, trace: update trace_sched_wakeup()\n  tracing/ftrace: don\u0027t trace on early stage of a secondary cpu boot, v3\n  Revert \"x86: disable X86_PTRACE_BTS\"\n  ring-buffer: prevent false positive warning\n  ring-buffer: fix dangling commit race\n  ftrace: enable format arguments checking\n  x86, bts: memory accounting\n  x86, bts: add fork and exit handling\n  ftrace: introduce tracing_reset_online_cpus() helper\n  tracing: fix warnings in kernel/trace/trace_sched_switch.c\n  tracing: fix warning in kernel/trace/trace.c\n  tracing/ring-buffer: remove unused ring_buffer size\n  trace: fix task state printout\n  ftrace: add not to regex on filtering functions\n  trace: better use of stack_trace_enabled for boot up code\n  trace: add a way to enable or disable the stack tracer\n  x86: entry_64 - introduce FTRACE_ frame macro v2\n  tracing/ftrace: add the printk-msg-only option\n  tracing/ftrace: use preempt_enable_no_resched_notrace in ring_buffer_time_stamp()\n  x86, bts: correctly report invalid bts records\n  ...\n\nFixed up trivial conflict in scripts/recordmcount.pl due to SH bits\nbeing already partly merged by the SH merge.\n"
    },
    {
      "commit": "13a0c3c269b223f60abfac8a9811d77111a8b4ba",
      "tree": "b57a92eb9eb7c8c1de30bbe29b6a461289e75c62",
      "parents": [
        "793f7b12a0c95e7bfec1badf9628043fb78fd440"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 26 02:05:47 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 27 13:24:00 2008 +0100"
      },
      "message": "sparseirq: work around compiler optimizing away __weak functions\n\nImpact: fix panic on null pointer with sparseirq\n\nSome GCC versions seem to inline the weak global function,\nwhen that function is empty.\n\nWork it around, by making the functions return a (dummy) integer.\n\nSigned-off-by: Yinghai \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "12d79bafb75639f406a9f71aab94808c414c836e",
      "tree": "2d7ba81720be2ec8c897dd3ab6781cccd973249c",
      "parents": [
        "64db4cfff99c04cd5f550357edcc8780f96b54a2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 25 09:31:28 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 25 09:31:28 2008 +0100"
      },
      "message": "rcu: provide RCU options on non-preempt architectures too\n\nImpact: build fix\n\nSome old architectures still do not use kernel/Kconfig.preempt, so the\nmoving of the RCU options there broke their build:\n\n In file included from /home/mingo/tip/include/linux/sem.h:81,\n                 from /home/mingo/tip/include/linux/sched.h:69,\n                 from /home/mingo/tip/arch/alpha/kernel/asm-offsets.c:9:\n /home/mingo/tip/include/linux/rcupdate.h:62:2: error: #error \"Unknown RCU implementation specified to kernel configuration\"\n\nMove these options back to init/Kconfig, which every architecture\nincludes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9bb482476c6c9d1ae033306440c51ceac93ea80c",
      "tree": "b5e415eee46b66d9cc39e31d29d0d02994321d11",
      "parents": [
        "ad7a953c522ceb496611d127e51e278bfe0ff483"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Tue Dec 16 11:30:08 2008 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Dec 19 22:47:10 2008 +0100"
      },
      "message": "allow stripping of generated symbols under CONFIG_KALLSYMS_ALL\n\nBuilding upon parts of the module stripping patch, this patch\nintroduces similar stripping for vmlinux when CONFIG_KALLSYMS_ALL\u003dy.\nUsing CONFIG_KALLSYMS_STRIP_GENERATED reduces the overhead of\nCONFIG_KALLSYMS_ALL from 245k/310k to 65k/80k for the (i386/x86-64)\nkernels I tested with.\n\nThe patch also does away with the need to special case the kallsyms-\ninternal symbols by making them available even in the first linking\nstage.\n\nWhile it is a generated file, the patch includes the changes to\nscripts/genksyms/keywords.c_shipped, as I\u0027m unsure what the procedure\nhere is.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "64db4cfff99c04cd5f550357edcc8780f96b54a2",
      "tree": "4856e788d21f0e31ed78a22b70b4521f7237705e",
      "parents": [
        "d110ec3a1e1f522e2e9dfceb9c36d6590c26d2d4"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Dec 18 21:55:32 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 18 21:56:04 2008 +0100"
      },
      "message": "\"Tree RCU\": scalable classic RCU implementation\n\nThis patch fixes a long-standing performance bug in classic RCU that\nresults in massive internal-to-RCU lock contention on systems with\nmore than a few hundred CPUs.  Although this patch creates a separate\nflavor of RCU for ease of review and patch maintenance, it is intended\nto replace classic RCU.\n\nThis patch still handles stress better than does mainline, so I am still\ncalling it ready for inclusion.  This patch is against the -tip tree.\nNevertheless, experience on an actual 1000+ CPU machine would still be\nmost welcome.\n\nMost of the changes noted below were found while creating an rcutiny\n(which should permit ejecting the current rcuclassic) and while doing\ndetailed line-by-line documentation.\n\nUpdates from v9 (http://lkml.org/lkml/2008/12/2/334):\n\no\tFixes from remainder of line-by-line code walkthrough,\n\tincluding comment spelling, initialization, undesirable\n\tnarrowing due to type conversion, removing redundant memory\n\tbarriers, removing redundant local-variable initialization,\n\tand removing redundant local variables.\n\n\tI do not believe that any of these fixes address the CPU-hotplug\n\tissues that Andi Kleen was seeing, but please do give it a whirl\n\tin case the machine is smarter than I am.\n\n\tA writeup from the walkthrough may be found at the following\n\tURL, in case you are suffering from terminal insomnia or\n\tmasochism:\n\n\thttp://www.kernel.org/pub/linux/kernel/people/paulmck/tmp/rcutree-walkthrough.2008.12.16a.pdf\n\no\tMade rcutree tracing use seq_file, as suggested some time\n\tago by Lai Jiangshan.\n\no\tAdded a .csv variant of the rcudata debugfs trace file, to allow\n\tpeople having thousands of CPUs to drop the data into\n\ta spreadsheet.\tTested with oocalc and gnumeric.  Updated\n\tdocumentation to suit.\n\nUpdates from v8 (http://lkml.org/lkml/2008/11/15/139):\n\no\tFix a theoretical race between grace-period initialization and\n\tforce_quiescent_state() that could occur if more than three\n\tjiffies were required to carry out the grace-period\n\tinitialization.  Which it might, if you had enough CPUs.\n\no\tApply Ingo\u0027s printk-standardization patch.\n\no\tSubstitute local variables for repeated accesses to global\n\tvariables.\n\no\tFix comment misspellings and redundant (but harmless) increments\n\tof -\u003en_rcu_pending (this latter after having explicitly added it).\n\no\tApply checkpatch fixes.\n\nUpdates from v7 (http://lkml.org/lkml/2008/10/10/291):\n\no\tFixed a number of problems noted by Gautham Shenoy, including\n\tthe cpu-stall-detection bug that he was having difficulty\n\tconvincing me was real.  ;-)\n\no\tChanged cpu-stall detection to wait for ten seconds rather than\n\tthree in order to reduce false positive, as suggested by Ingo\n\tMolnar.\n\no\tProduced a design document (http://lwn.net/Articles/305782/).\n\tThe act of writing this document uncovered a number of both\n\ttheoretical and \"here and now\" bugs as noted below.\n\no\tFix dynticks_nesting accounting confusion, simplify WARN_ON()\n\tcondition, fix kerneldoc comments, and add memory barriers\n\tin dynticks interface functions.\n\no\tAdd more data to tracing.\n\no\tRemove unused \"rcu_barrier\" field from rcu_data structure.\n\no\tCount calls to rcu_pending() from scheduling-clock interrupt\n\tto use as a surrogate timebase should jiffies stop counting.\n\no\tFix a theoretical race between force_quiescent_state() and\n\tgrace-period initialization.  Yes, initialization does have to\n\tgo on for some jiffies for this race to occur, but given enough\n\tCPUs...\n\nUpdates from v6 (http://lkml.org/lkml/2008/9/23/448):\n\no\tFix a number of checkpatch.pl complaints.\n\no\tApply review comments from Ingo Molnar and Lai Jiangshan\n\ton the stall-detection code.\n\no\tFix several bugs in !CONFIG_SMP builds.\n\no\tFix a misspelled config-parameter name so that RCU now announces\n\tat boot time if stall detection is configured.\n\no\tRun tests on numerous combinations of configurations parameters,\n\twhich after the fixes above, now build and run correctly.\n\nUpdates from v5 (http://lkml.org/lkml/2008/9/15/92, bad subject line):\n\no\tFix a compiler error in the !CONFIG_FANOUT_EXACT case (blew a\n\tchangeset some time ago, and finally got around to retesting\n\tthis option).\n\no\tFix some tracing bugs in rcupreempt that caused incorrect\n\ttotals to be printed.\n\no\tI now test with a more brutal random-selection online/offline\n\tscript (attached).  Probably more brutal than it needs to be\n\ton the people reading it as well, but so it goes.\n\no\tA number of optimizations and usability improvements:\n\n\to\tMake rcu_pending() ignore the grace-period timeout when\n\t\tthere is no grace period in progress.\n\n\to\tMake force_quiescent_state() avoid going for a global\n\t\tlock in the case where there is no grace period in\n\t\tprogress.\n\n\to\tRearrange struct fields to improve struct layout.\n\n\to\tMake call_rcu() initiate a grace period if RCU was\n\t\tidle, rather than waiting for the next scheduling\n\t\tclock interrupt.\n\n\to\tInvoke rcu_irq_enter() and rcu_irq_exit() only when\n\t\tidle, as suggested by Andi Kleen.  I still don\u0027t\n\t\tcompletely trust this change, and might back it out.\n\n\to\tMake CONFIG_RCU_TRACE be the single config variable\n\t\tmanipulated for all forms of RCU, instead of the prior\n\t\tconfusion.\n\n\to\tDocument tracing files and formats for both rcupreempt\n\t\tand rcutree.\n\nUpdates from v4 for those missing v5 given its bad subject line:\n\no\tSeparated dynticks interface so that NMIs and irqs call separate\n\tfunctions, greatly simplifying it.  In particular, this code\n\tno longer requires a proof of correctness.  ;-)\n\no\tSeparated dynticks state out into its own per-CPU structure,\n\tavoiding the duplicated accounting.\n\no\tThe case where a dynticks-idle CPU runs an irq handler that\n\tinvokes call_rcu() is now correctly handled, forcing that CPU\n\tout of dynticks-idle mode.\n\no\tReview comments have been applied (thank you all!!!).\n\tFor but one example, fixed the dynticks-ordering issue that\n\tManfred pointed out, saving me much debugging.  ;-)\n\no\tAdjusted rcuclassic and rcupreempt to handle dynticks changes.\n\nAttached is an updated patch to Classic RCU that applies a hierarchy,\ngreatly reducing the contention on the top-level lock for large machines.\nThis passes 10-hour concurrent rcutorture and online-offline testing on\n128-CPU ppc64 without dynticks enabled, and exposes some timekeeping\nbugs in presence of dynticks (exciting working on a system where\n\"sleep 1\" hangs until interrupted...), which were fixed in the\n2.6.27 kernel.  It is getting more reliable than mainline by some\nmeasures, so the next version will be against -tip for inclusion.\nSee also Manfred Spraul\u0027s recent patches (or his earlier work from\n2004 at http://marc.info/?l\u003dlinux-kernel\u0026m\u003d108546384711797\u0026w\u003d2).\nWe will converge onto a common patch in the fullness of time, but are\ncurrently exploring different regions of the design space.  That said,\nI have already gratefully stolen quite a few of Manfred\u0027s ideas.\n\nThis patch provides CONFIG_RCU_FANOUT, which controls the bushiness\nof the RCU hierarchy.  Defaults to 32 on 32-bit machines and 64 on\n64-bit machines.  If CONFIG_NR_CPUS is less than CONFIG_RCU_FANOUT,\nthere is no hierarchy.  By default, the RCU initialization code will\nadjust CONFIG_RCU_FANOUT to balance the hierarchy, so strongly NUMA\narchitectures may choose to set CONFIG_RCU_FANOUT_EXACT to disable\nthis balancing, allowing the hierarchy to be exactly aligned to the\nunderlying hardware.  Up to two levels of hierarchy are permitted\n(in addition to the root node), allowing up to 16,384 CPUs on 32-bit\nsystems and up to 262,144 CPUs on 64-bit systems.  I just know that I\nam going to regret saying this, but this seems more than sufficient\nfor the foreseeable future.  (Some architectures might wish to set\nCONFIG_RCU_FANOUT\u003d4, which would limit such architectures to 64 CPUs.\nIf this becomes a real problem, additional levels can be added, but I\ndoubt that it will make a significant difference on real hardware.)\n\nIn the common case, a given CPU will manipulate its private rcu_data\nstructure and the rcu_node structure that it shares with its immediate\nneighbors.  This can reduce both lock and memory contention by multiple\norders of magnitude, which should eliminate the need for the strange\nmanipulations that are reported to be required when running Linux on\nvery large systems.\n\nSome shortcomings:\n\no\tMore bugs will probably surface as a result of an ongoing\n\tline-by-line code inspection.\n\n\tPatches will be provided as required.\n\no\tThere are probably hangs, rcutorture failures, \u0026c.  Seems\n\tquite stable on a 128-CPU machine, but that is kind of small\n\tcompared to 4096 CPUs.  However, seems to do better than\n\tmainline.\n\n\tPatches will be provided as required.\n\no\tThe memory footprint of this version is several KB larger\n\tthan rcuclassic.\n\n\tA separate UP-only rcutiny patch will be provided, which will\n\treduce the memory footprint significantly, even compared\n\tto the old rcuclassic.  One such patch passes light testing,\n\tand has a memory footprint smaller even than rcuclassic.\n\tInitial reaction from various embedded guys was \"it is not\n\tworth it\", so am putting it aside.\n\nCredits:\n\no\tManfred Spraul for ideas, review comments, and bugs spotted,\n\tas well as some good friendly competition.  ;-)\n\no\tJosh Triplett, Ingo Molnar, Peter Zijlstra, Mathieu Desnoyers,\n\tLai Jiangshan, Andi Kleen, Andy Whitcroft, and Andrew Morton\n\tfor reviews and comments.\n\no\tThomas Gleixner for much-needed help with some timer issues\n\t(see patches below).\n\no\tJon M. Tollefson, Tim Pepper, Andrew Theurer, Jose R. Santos,\n\tAndy Whitcroft, Darrick Wong, Nishanth Aravamudan, Anton\n\tBlanchard, Dave Kleikamp, and Nathan Lynch for keeping machines\n\talive despite my heavy abuse^Wtesting.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "968ea6d80e395cf11a51143cfa1b9a14ada676df",
      "tree": "dc2acec8c9bdced33afe1e273ee5e0b0b93d2703",
      "parents": [
        "7be7585393d311866653564fbcd10a3232773c0b",
        "8299608f140ae321e4eb5d1306184265d2b9511e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Dec 13 21:55:51 2008 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Dec 13 21:55:51 2008 +1030"
      },
      "message": "Merge ../linux-2.6-x86\n\nConflicts:\n\n\tarch/x86/kernel/io_apic.c\n\tkernel/sched.c\n\tkernel/sched_stats.h\n"
    },
    {
      "commit": "98a79d6a50181ca1ecf7400eda01d5dc1bc0dbf0",
      "tree": "e8829ee975b77745da153b9d23601e3a1497ad68",
      "parents": [
        "6c34bc2976b30dc8b56392c020e25bae1f363cab"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Dec 13 21:19:41 2008 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Dec 13 21:19:41 2008 +1030"
      },
      "message": "cpumask: centralize cpu_online_map and cpu_possible_map\n\nImpact: cleanup\n\nEach SMP arch defines these themselves.  Move them to a central\nlocation.\n\nTwists:\n1) Some archs (m32, parisc, s390) set possible_map to all 1, so we add a\n   CONFIG_INIT_ALL_POSSIBLE for this rather than break them.\n\n2) mips and sparc32 \u0027#define cpu_possible_map phys_cpu_present_map\u0027.\n   Those archs simply have phys_cpu_present_map replaced everywhere.\n\n3) Alpha defined cpu_possible_map to cpu_present_map; this is tricky\n   so I just manipulate them both in sync.\n\n4) IA64, cris and m32r have gratuitous \u0027extern cpumask_t cpu_possible_map\u0027\n   declarations.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nReviewed-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nTested-by: Tony Luck \u003ctony.luck@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nCc: ink@jurassic.park.msu.ru\nCc: rmk@arm.linux.org.uk\nCc: starvik@axis.com\nCc: tony.luck@intel.com\nCc: takata@linux-m32r.org\nCc: ralf@linux-mips.org\nCc: grundler@parisc-linux.org\nCc: paulus@samba.org\nCc: schwidefsky@de.ibm.com\nCc: lethal@linux-sh.org\nCc: wli@holomorphy.com\nCc: davem@davemloft.net\nCc: jdike@addtoit.com\nCc: mingo@redhat.com\n"
    },
    {
      "commit": "8299608f140ae321e4eb5d1306184265d2b9511e",
      "tree": "830ad1dc2e79c2dcaf8b89e31c51dcc1ee5adf89",
      "parents": [
        "45ab6b0c76d0e4cce5bd608ccf97b0f6b20f18df",
        "30cb367ea2be76bf71dbd275f38d0fd3b6f4142b",
        "69b88afa8d114a43a3c0431722b79e31d9920692",
        "8daa19051e1c7369c89ace7b18e74fe1f55dfa29"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 12 13:49:17 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 12 13:49:24 2008 +0100"
      },
      "message": "Merge branches \u0027irq/sparseirq\u0027, \u0027x86/quirks\u0027 and \u0027x86/reboot\u0027 into cpus4096\n\nWe merge the irq/sparseirq, x86/quirks and x86/reboot trees into the\ncpus4096 tree because the io-apic changes in the sparseirq change\nconflict with the cpumask changes in the cpumask tree, and we\nwant to resolve those.\n"
    },
    {
      "commit": "0b8f1efad30bd58f89961b82dfe68b9edf8fd2ac",
      "tree": "239251bad791fd60af8c0f2ba365b7188395c83f",
      "parents": [
        "218d11a8b071b23b76c484fd5f72a4fe3306801e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 05 18:58:31 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 08 14:31:51 2008 +0100"
      },
      "message": "sparse irq_desc[] array: core kernel and x86 changes\n\nImpact: new feature\n\nProblem on distro kernels: irq_desc[NR_IRQS] takes megabytes of RAM with\nNR_CPUS set to large values. The goal is to be able to scale up to much\nlarger NR_IRQS value without impacting the (important) common case.\n\nTo solve this, we generalize irq_desc[NR_IRQS] to an (optional) array of\nirq_desc pointers.\n\nWhen CONFIG_SPARSE_IRQ\u003dy is used, we use kzalloc_node to get irq_desc,\nthis also makes the IRQ descriptors NUMA-local (to the site that calls\nrequest_irq()).\n\nThis gets rid of the irq_cfg[] static array on x86 as well: irq_cfg now\nuses desc-\u003echip_data for x86 to store irq_cfg.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec98ce480ada787f2cfbd696980ff3564415505b",
      "tree": "1a4d644b38f9f1e4b4e086fde0b195df4a92cf84",
      "parents": [
        "3496f92beb9aa99ef21fccc154a36c7698e9c538",
        "feaf3848a813a106f163013af6fcf6c4bfec92d9"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/nfsd/nfs4recover.c\n\nManually fixed above to use new creds API functions, e.g.\nnfs4_save_creds().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "1d926f2756392c6909f60e0c9fe2a09d5462e376",
      "tree": "32e6cafbdf007b7d9872846a705aa772de68d43b",
      "parents": [
        "a0a70c735ef714fe1b6777b571630c3d50c7b008"
      ],
      "author": {
        "name": "Will Newton",
        "email": "will.newton@gmail.com",
        "time": "Fri Nov 21 14:08:59 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 23 11:10:15 2008 +0100"
      },
      "message": "init/main.c: use ktime accessor function in initcall_debug code\n\nImpact: fix initcall debug output on non-scalar ktime platforms (32-bit embedded)\n\nThe initcall_debug code access the tv64 member of ktime.  This won\u0027t work\ncorrectly for large deltas on platforms that don\u0027t use the scalar ktime\nimplementation.\n\nSigned-off-by: Will Newton \u003cwill.newton@gmail.com\u003e\nAcked-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9676e73a9e0cbdc521e1ebf4e13e6e5aada34247",
      "tree": "b5ea1cace6c4f2f57fcebfc42418b7f53fee84e5",
      "parents": [
        "5a209c2d58e70f9bc415b9cdf0e3b9aaefb70371",
        "86fa2f60674540df0b34f5c547ed0c1cf3a8f212",
        "6d5b43a67accf6793ed259f6534b4bd53b1e5696"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 19 10:04:25 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 19 10:04:25 2008 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n\nConflicts:\n\tkernel/trace/ftrace.c\n\n[ We conflicted here because we backported a few fixes to\n  tracing/urgent - which has different internal APIs. ]\n"
    },
    {
      "commit": "8c60bfb0666952728b3be73ef9bc133d686aebba",
      "tree": "d532c12f7e414ee3ce6ed3bda912fa145e96de29",
      "parents": [
        "b6584065ee833dcec20683be7fc25da3f2268cee",
        "700018e0a77b4113172257fcdaa1c58e27a5074f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 18 08:06:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 18 08:06:21 2008 -0800"
      },
      "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  cpuset: fix regression when failed to generate sched domains\n  sched, signals: fix the racy usage of -\u003esignal in account_group_xxx/run_posix_cpu_timers\n  sched: fix kernel warning on /proc/sched_debug access\n  sched: correct sched-rt-group.txt pathname in init/Kconfig\n"
    },
    {
      "commit": "c1df1bd2c4d4b20c83755a0f41956b57aec4842a",
      "tree": "08761333b0850c6acfb31d72d7777dccc135ebde",
      "parents": [
        "a419246ac7c2d9282dfd843103702895bb3f3fd7"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Nov 14 17:47:39 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 16 09:01:29 2008 +0100"
      },
      "message": "markers: auto enable tracepoints (new API : trace_mark_tp())\n\nImpact: new API\n\nAdd a new API trace_mark_tp(), which declares a marker within a\ntracepoint probe. When the marker is activated, the tracepoint is\nautomatically enabled.\n\nNo branch test is used at the marker site, because it would be a\nduplicate of the branch already present in the tracepoint.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b828925652340277a889cbc11b2d0637f7cdaf7",
      "tree": "32fcb3d3e466fc419fad2d3717956a5b5ad3d35a",
      "parents": [
        "3a3b7ce9336952ea7b9564d976d068a238976c9d",
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tsecurity/keys/internal.h\n\tsecurity/keys/process_keys.c\n\tsecurity/keys/request_key.c\n\nFixed conflicts above by using the non \u0027tsk\u0027 versions.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d84f4f992cbd76e8f39c488cf0c5d123843923b1",
      "tree": "fc4a0349c42995715b93d0f7a3c78e9ea9b3f36e",
      "parents": [
        "745ca2475a6ac596e3d8d37c2759c0fbe2586227"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:23 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:23 2008 +1100"
      },
      "message": "CRED: Inaugurate COW credentials\n\nInaugurate copy-on-write credentials management.  This uses RCU to manage the\ncredentials pointer in the task_struct with respect to accesses by other tasks.\nA process may only modify its own credentials, and so does not need locking to\naccess or modify its own credentials.\n\nA mutex (cred_replace_mutex) is added to the task_struct to control the effect\nof PTRACE_ATTACHED on credential calculations, particularly with respect to\nexecve().\n\nWith this patch, the contents of an active credentials struct may not be\nchanged directly; rather a new set of credentials must be prepared, modified\nand committed using something like the following sequence of events:\n\n\tstruct cred *new \u003d prepare_creds();\n\tint ret \u003d blah(new);\n\tif (ret \u003c 0) {\n\t\tabort_creds(new);\n\t\treturn ret;\n\t}\n\treturn commit_creds(new);\n\nThere are some exceptions to this rule: the keyrings pointed to by the active\ncredentials may be instantiated - keyrings violate the COW rule as managing\nCOW keyrings is tricky, given that it is possible for a task to directly alter\nthe keys in a keyring in use by another task.\n\nTo help enforce this, various pointers to sets of credentials, such as those in\nthe task_struct, are declared const.  The purpose of this is compile-time\ndiscouragement of altering credentials through those pointers.  Once a set of\ncredentials has been made public through one of these pointers, it may not be\nmodified, except under special circumstances:\n\n  (1) Its reference count may incremented and decremented.\n\n  (2) The keyrings to which it points may be modified, but not replaced.\n\nThe only safe way to modify anything else is to create a replacement and commit\nusing the functions described in Documentation/credentials.txt (which will be\nadded by a later patch).\n\nThis patch and the preceding patches have been tested with the LTP SELinux\ntestsuite.\n\nThis patch makes several logical sets of alteration:\n\n (1) execve().\n\n     This now prepares and commits credentials in various places in the\n     security code rather than altering the current creds directly.\n\n (2) Temporary credential overrides.\n\n     do_coredump() and sys_faccessat() now prepare their own credentials and\n     temporarily override the ones currently on the acting thread, whilst\n     preventing interference from other threads by holding cred_replace_mutex\n     on the thread being dumped.\n\n     This will be replaced in a future patch by something that hands down the\n     credentials directly to the functions being called, rather than altering\n     the task\u0027s objective credentials.\n\n (3) LSM interface.\n\n     A number of functions have been changed, added or removed:\n\n     (*) security_capset_check(), -\u003ecapset_check()\n     (*) security_capset_set(), -\u003ecapset_set()\n\n     \t Removed in favour of security_capset().\n\n     (*) security_capset(), -\u003ecapset()\n\n     \t New.  This is passed a pointer to the new creds, a pointer to the old\n     \t creds and the proposed capability sets.  It should fill in the new\n     \t creds or return an error.  All pointers, barring the pointer to the\n     \t new creds, are now const.\n\n     (*) security_bprm_apply_creds(), -\u003ebprm_apply_creds()\n\n     \t Changed; now returns a value, which will cause the process to be\n     \t killed if it\u0027s an error.\n\n     (*) security_task_alloc(), -\u003etask_alloc_security()\n\n     \t Removed in favour of security_prepare_creds().\n\n     (*) security_cred_free(), -\u003ecred_free()\n\n     \t New.  Free security data attached to cred-\u003esecurity.\n\n     (*) security_prepare_creds(), -\u003ecred_prepare()\n\n     \t New. Duplicate any security data attached to cred-\u003esecurity.\n\n     (*) security_commit_creds(), -\u003ecred_commit()\n\n     \t New. Apply any security effects for the upcoming installation of new\n     \t security by commit_creds().\n\n     (*) security_task_post_setuid(), -\u003etask_post_setuid()\n\n     \t Removed in favour of security_task_fix_setuid().\n\n     (*) security_task_fix_setuid(), -\u003etask_fix_setuid()\n\n     \t Fix up the proposed new credentials for setuid().  This is used by\n     \t cap_set_fix_setuid() to implicitly adjust capabilities in line with\n     \t setuid() changes.  Changes are made to the new credentials, rather\n     \t than the task itself as in security_task_post_setuid().\n\n     (*) security_task_reparent_to_init(), -\u003etask_reparent_to_init()\n\n     \t Removed.  Instead the task being reparented to init is referred\n     \t directly to init\u0027s credentials.\n\n\t NOTE!  This results in the loss of some state: SELinux\u0027s osid no\n\t longer records the sid of the thread that forked it.\n\n     (*) security_key_alloc(), -\u003ekey_alloc()\n     (*) security_key_permission(), -\u003ekey_permission()\n\n     \t Changed.  These now take cred pointers rather than task pointers to\n     \t refer to the security context.\n\n (4) sys_capset().\n\n     This has been simplified and uses less locking.  The LSM functions it\n     calls have been merged.\n\n (5) reparent_to_kthreadd().\n\n     This gives the current thread the same credentials as init by simply using\n     commit_thread() to point that way.\n\n (6) __sigqueue_alloc() and switch_uid()\n\n     __sigqueue_alloc() can\u0027t stop the target task from changing its creds\n     beneath it, so this function gets a reference to the currently applicable\n     user_struct which it then passes into the sigqueue struct it returns if\n     successful.\n\n     switch_uid() is now called from commit_creds(), and possibly should be\n     folded into that.  commit_creds() should take care of protecting\n     __sigqueue_alloc().\n\n (7) [sg]et[ug]id() and co and [sg]et_current_groups.\n\n     The set functions now all use prepare_creds(), commit_creds() and\n     abort_creds() to build and check a new set of credentials before applying\n     it.\n\n     security_task_set[ug]id() is called inside the prepared section.  This\n     guarantees that nothing else will affect the creds until we\u0027ve finished.\n\n     The calling of set_dumpable() has been moved into commit_creds().\n\n     Much of the functionality of set_user() has been moved into\n     commit_creds().\n\n     The get functions all simply access the data directly.\n\n (8) security_task_prctl() and cap_task_prctl().\n\n     security_task_prctl() has been modified to return -ENOSYS if it doesn\u0027t\n     want to handle a function, or otherwise return the return value directly\n     rather than through an argument.\n\n     Additionally, cap_task_prctl() now prepares a new set of credentials, even\n     if it doesn\u0027t end up using it.\n\n (9) Keyrings.\n\n     A number of changes have been made to the keyrings code:\n\n     (a) switch_uid_keyring(), copy_keys(), exit_keys() and suid_keys() have\n     \t all been dropped and built in to the credentials functions directly.\n     \t They may want separating out again later.\n\n     (b) key_alloc() and search_process_keyrings() now take a cred pointer\n     \t rather than a task pointer to specify the security context.\n\n     (c) copy_creds() gives a new thread within the same thread group a new\n     \t thread keyring if its parent had one, otherwise it discards the thread\n     \t keyring.\n\n     (d) The authorisation key now points directly to the credentials to extend\n     \t the search into rather pointing to the task that carries them.\n\n     (e) Installing thread, process or session keyrings causes a new set of\n     \t credentials to be created, even though it\u0027s not strictly necessary for\n     \t process or session keyrings (they\u0027re shared).\n\n(10) Usermode helper.\n\n     The usermode helper code now carries a cred struct pointer in its\n     subprocess_info struct instead of a new session keyring pointer.  This set\n     of credentials is derived from init_cred and installed on the new process\n     after it has been cloned.\n\n     call_usermodehelper_setup() allocates the new credentials and\n     call_usermodehelper_freeinfo() discards them if they haven\u0027t been used.  A\n     special cred function (prepare_usermodeinfo_creds()) is provided\n     specifically for call_usermodehelper_setup() to call.\n\n     call_usermodehelper_setkeys() adjusts the credentials to sport the\n     supplied keyring as the new session keyring.\n\n(11) SELinux.\n\n     SELinux has a number of changes, in addition to those to support the LSM\n     interface changes mentioned above:\n\n     (a) selinux_setprocattr() no longer does its check for whether the\n     \t current ptracer can access processes with the new SID inside the lock\n     \t that covers getting the ptracer\u0027s SID.  Whilst this lock ensures that\n     \t the check is done with the ptracer pinned, the result is only valid\n     \t until the lock is released, so there\u0027s no point doing it inside the\n     \t lock.\n\n(12) is_single_threaded().\n\n     This function has been extracted from selinux_setprocattr() and put into\n     a file of its own in the lib/ directory as join_session_keyring() now\n     wants to use it too.\n\n     The code in SELinux just checked to see whether a task shared mm_structs\n     with other tasks (CLONE_VM), but that isn\u0027t good enough.  We really want\n     to know if they\u0027re part of the same thread group (CLONE_THREAD).\n\n(13) nfsd.\n\n     The NFS server daemon now has to use the COW credentials to set the\n     credentials it is going to use.  It really needs to pass the credentials\n     down to the functions it calls, but it can\u0027t do that until other patches\n     in this series have been applied.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "02f5621042e3f7e2fb6c741cbe5ee7c1f3caf354",
      "tree": "0219e50d348bb4a2ed1df3003889d00733deab40",
      "parents": [
        "4ffaf869c7780bbdfc11291e5fd4b61dde662b1c"
      ],
      "author": {
        "name": "Simon Arlott",
        "email": "simon@fire.lp0.eu",
        "time": "Wed Nov 05 22:18:19 2008 +0000"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Nov 13 20:49:01 2008 +0200"
      },
      "message": "Kconfig: SLUB is the default slab allocator\n\nIn 2007, a0acd820807680d2ccc4ef3448387fcdbf152c73 changed the default\nslab allocator to SLUB, but the SLAB help text still says SLAB is the\ndefault. This change fixes that.\n\nSigned-off-by: Simon Arlott \u003csimon@fire.lp0.eu\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "2fe401e38602e853e01376cdb670b0bc4d526a6d",
      "tree": "8545b8facadce756b553adccb463d123d20bec36",
      "parents": [
        "4ffaf869c7780bbdfc11291e5fd4b61dde662b1c"
      ],
      "author": {
        "name": "Adrian Knoth",
        "email": "adi@drcomp.erfurt.thur.de",
        "time": "Wed Nov 12 16:23:55 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 13 09:32:29 2008 +0100"
      },
      "message": "sched: correct sched-rt-group.txt pathname in init/Kconfig\n\ninit/Kconfig directs the user to Documentation/sched-rt-group.txt, but\nthe file is actually in Documentation/scheduler/sched-rt-group.txt.\n\nThis patch corrects the pathname mentioned in init/Kconfig.\n\nSigned-off-by: Adrian Knoth \u003cadi@drcomp.erfurt.thur.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "74239072830ef3f1398edeb1bc1076fc330fd4a2",
      "tree": "60a244c6c88d9943760ded98a1a29ce018292107",
      "parents": [
        "3f5ec13696fd4a33bde42f385406cbb1d3cc96fd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Nov 11 23:24:42 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 12 10:17:19 2008 +0100"
      },
      "message": "tracing/fastboot: Use the ring-buffer timestamp for initcall entries\n\nImpact: Split the boot tracer entries in two parts: call and return\n\nNow that we are using the sched tracer from the boot tracer, we want\nto use the same timestamp than the ring-buffer to have consistent time\ncaptures between sched events and initcall events.\n\nSo we get rid of the old time capture by the boot tracer and split the\ninitcall events in two parts: call and return. This way we have the\nring buffer timestamp of both.\n\nAn example trace:\n\n[   27.904149584] calling  net_ns_init+0x0/0x1c0 @ 1\n[   27.904429624] initcall net_ns_init+0x0/0x1c0 returned 0 after 0 msecs\n[   27.904575926] calling  reboot_init+0x0/0x20 @ 1\n[   27.904655399] initcall reboot_init+0x0/0x20 returned 0 after 0 msecs\n[   27.904800228] calling  sysctl_init+0x0/0x30 @ 1\n[   27.905142914] initcall sysctl_init+0x0/0x30 returned 0 after 0 msecs\n[   27.905287211] calling  ksysfs_init+0x0/0xb0 @ 1\n ##### CPU 0 buffer started ####\n            init-1     [000]    27.905395:      1:120:R   + [001]    11:115:S\n ##### CPU 1 buffer started ####\n          \u003cidle\u003e-0     [001]    27.905425:      0:140:R \u003d\u003d\u003e [001]    11:115:R\n            init-1     [000]    27.905426:      1:120:D \u003d\u003d\u003e [000]     0:140:R\n          \u003cidle\u003e-0     [000]    27.905431:      0:140:R   + [000]     4:115:S\n          \u003cidle\u003e-0     [000]    27.905451:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n     ksoftirqd/0-4     [000]    27.905456:      4:115:S \u003d\u003d\u003e [000]     0:140:R\n           udevd-11    [001]    27.905458:     11:115:R   + [001]    14:115:R\n          \u003cidle\u003e-0     [000]    27.905459:      0:140:R   + [000]     4:115:S\n          \u003cidle\u003e-0     [000]    27.905462:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n           udevd-11    [001]    27.905462:     11:115:R \u003d\u003d\u003e [001]    14:115:R\n     ksoftirqd/0-4     [000]    27.905467:      4:115:S \u003d\u003d\u003e [000]     0:140:R\n          \u003cidle\u003e-0     [000]    27.905470:      0:140:R   + [000]     4:115:S\n          \u003cidle\u003e-0     [000]    27.905473:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n     ksoftirqd/0-4     [000]    27.905476:      4:115:S \u003d\u003d\u003e [000]     0:140:R\n          \u003cidle\u003e-0     [000]    27.905479:      0:140:R   + [000]     4:115:S\n          \u003cidle\u003e-0     [000]    27.905482:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n     ksoftirqd/0-4     [000]    27.905486:      4:115:S \u003d\u003d\u003e [000]     0:140:R\n           udevd-14    [001]    27.905499:     14:120:X \u003d\u003d\u003e [001]    11:115:R\n           udevd-11    [001]    27.905506:     11:115:R   + [000]     1:120:D\n          \u003cidle\u003e-0     [000]    27.905515:      0:140:R \u003d\u003d\u003e [000]     1:120:R\n           udevd-11    [001]    27.905517:     11:115:S \u003d\u003d\u003e [001]     0:140:R\n[   27.905557107] initcall ksysfs_init+0x0/0xb0 returned 0 after 3906 msecs\n[   27.905705736] calling  init_jiffies_clocksource+0x0/0x10 @ 1\n[   27.905779239] initcall init_jiffies_clocksource+0x0/0x10 returned 0 after 0 msecs\n[   27.906769814] calling  pm_init+0x0/0x30 @ 1\n[   27.906853627] initcall pm_init+0x0/0x30 returned 0 after 0 msecs\n[   27.906997803] calling  pm_disk_init+0x0/0x20 @ 1\n[   27.907076946] initcall pm_disk_init+0x0/0x20 returned 0 after 0 msecs\n[   27.907222556] calling  swsusp_header_init+0x0/0x30 @ 1\n[   27.907294325] initcall swsusp_header_init+0x0/0x30 returned 0 after 0 msecs\n[   27.907439620] calling  stop_machine_init+0x0/0x50 @ 1\n            init-1     [000]    27.907485:      1:120:R   + [000]     2:115:S\n            init-1     [000]    27.907490:      1:120:D \u003d\u003d\u003e [000]     2:115:R\n        kthreadd-2     [000]    27.907507:      2:115:R   + [001]    15:115:R\n          \u003cidle\u003e-0     [001]    27.907517:      0:140:R \u003d\u003d\u003e [001]    15:115:R\n        kthreadd-2     [000]    27.907517:      2:115:D \u003d\u003d\u003e [000]     0:140:R\n          \u003cidle\u003e-0     [000]    27.907521:      0:140:R   + [000]     4:115:S\n          \u003cidle\u003e-0     [000]    27.907524:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n           udevd-15    [001]    27.907527:     15:115:D   + [000]     2:115:D\n     ksoftirqd/0-4     [000]    27.907537:      4:115:S \u003d\u003d\u003e [000]     2:115:R\n           udevd-15    [001]    27.907537:     15:115:D \u003d\u003d\u003e [001]     0:140:R\n        kthreadd-2     [000]    27.907546:      2:115:R   + [000]     1:120:D\n        kthreadd-2     [000]    27.907550:      2:115:S \u003d\u003d\u003e [000]     1:120:R\n            init-1     [000]    27.907584:      1:120:R   + [000]    15:  0:D\n            init-1     [000]    27.907589:      1:120:R   + [000]     2:115:S\n            init-1     [000]    27.907593:      1:120:D \u003d\u003d\u003e [000]    15:  0:R\n           udevd-15    [000]    27.907601:     15:  0:S \u003d\u003d\u003e [000]     2:115:R\n ##### CPU 0 buffer started ####\n        kthreadd-2     [000]    27.907616:      2:115:R   + [001]    16:115:R\n ##### CPU 1 buffer started ####\n          \u003cidle\u003e-0     [001]    27.907620:      0:140:R \u003d\u003d\u003e [001]    16:115:R\n        kthreadd-2     [000]    27.907621:      2:115:D \u003d\u003d\u003e [000]     0:140:R\n           udevd-16    [001]    27.907625:     16:115:D   + [000]     2:115:D\n          \u003cidle\u003e-0     [000]    27.907628:      0:140:R   + [000]     4:115:S\n           udevd-16    [001]    27.907629:     16:115:D \u003d\u003d\u003e [001]     0:140:R\n          \u003cidle\u003e-0     [000]    27.907631:      0:140:R \u003d\u003d\u003e [000]     4:115:R\n     ksoftirqd/0-4     [000]    27.907636:      4:115:S \u003d\u003d\u003e [000]     2:115:R\n        kthreadd-2     [000]    27.907644:      2:115:R   + [000]     1:120:D\n        kthreadd-2     [000]    27.907647:      2:115:S \u003d\u003d\u003e [000]     1:120:R\n            init-1     [000]    27.907657:      1:120:R   + [001]    16:  0:D\n          \u003cidle\u003e-0     [001]    27.907666:      0:140:R \u003d\u003d\u003e [001]    16:  0:R\n[   27.907703862] initcall stop_machine_init+0x0/0x50 returned 0 after 0 msecs\n[   27.907850704] calling  filelock_init+0x0/0x30 @ 1\n[   27.907926573] initcall filelock_init+0x0/0x30 returned 0 after 0 msecs\n[   27.908071327] calling  init_script_binfmt+0x0/0x10 @ 1\n[   27.908165195] initcall init_script_binfmt+0x0/0x10 returned 0 after 0 msecs\n[   27.908309461] calling  init_elf_binfmt+0x0/0x10 @ 1\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3f5ec13696fd4a33bde42f385406cbb1d3cc96fd",
      "tree": "3c705c5991fcf0f4968ff790bb2e2ce65c8cbf18",
      "parents": [
        "60a011c736e7dd09a0b01ca6a051a416f3f52ffb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Nov 11 23:21:31 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 12 10:17:18 2008 +0100"
      },
      "message": "tracing/fastboot: move boot tracer structs and funcs into their own header.\n\nImpact: Cleanups on the boot tracer and ftrace\n\nThis patch bring some cleanups about the boot tracer headers. The\nfunctions and structures of this tracer have nothing related to ftrace\nand should have so their own header file.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "71566a0d161edec70361b7f90f6e54af6a6d5d05",
      "tree": "78d2d790ed4e20c179d2f61f2ed50ecbb6d5a451",
      "parents": [
        "7a895f53cda9d9362c30144e42c124a1ae996b9e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Oct 31 12:57:20 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 04 17:14:02 2008 +0100"
      },
      "message": "tracing/fastboot: Enable boot tracing only during initcalls\n\nImpact: modify boot tracer\n\nWe used to disable the initcall tracing at a specified time (IE: end\nof builtin initcalls). But we don\u0027t need it anymore. It will be\nstopped when initcalls are finished.\n\nHowever we want two things:\n\n_Start this tracing only after pre-smp initcalls are finished.\n\n_Since we are planning to trace sched_switches at the same time, we\nwant to enable them only during the initcall execution.\n\nFor this purpose, this patch introduce two functions to enable/disable\nthe sched_switch tracing during boot.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d3f15800d5752ca4814270180798ab8323157d28",
      "tree": "5db82711ede9dade338900bade4d1f33568006b7",
      "parents": [
        "1f98757776eafe31065be9118db6051afcf8643c"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Fri Oct 31 12:47:23 2008 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 01 10:35:51 2008 -0700"
      },
      "message": "init/do_mounts_md.c: remove duplicated #include\n\nRemoved duplicated #include \u003clinux/delay.h\u003e in init/do_mounts_md.c.\n\nThe same compile error (\"error: implicit declaration of function\n\u0027msleep\u0027\") got fixed twice:\n\n - f8b77d39397e1510b1a3bcfd385ebd1a45aae77f (\"init/do_mounts_md.c:\n   msleep compile fix\")\n\n - 73b4a24f5ff09389ba6277c53a266b142f655ed2 (\"init/do_mounts_md.c must\n   #include \u003clinux/delay.h\u003e\")\n\nby people adding the \u003clinux/delay.h\u003e include in two slightly different\nplaces.  Andrew\u0027s quilt scripts happily ignore the fuzz, and will\nre-apply the patch even though they had conflicts.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84ad6d70001df969d7e8569dd18d98d9550277fb",
      "tree": "dee0cb5d20d596ab5144875fe2548dae0e7e2e24",
      "parents": [
        "99e87fd19a2dfba8ec0f2110f6f1b63062a52a6f"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Oct 29 14:01:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "memcg: update menuconfig help text\n\npage_cgroup is now allocated at boot and memmap doesn\u0027t includes pointer\nfor page_cgroup.  Fix the menu help text.\n\nReviewed-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: KAMEZAWA hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f8b77d39397e1510b1a3bcfd385ebd1a45aae77f",
      "tree": "e0e265b6903d3c3f48b274e890484c5d55a213bb",
      "parents": [
        "6158d3a2323835546c7cf83a170316fa77b726e0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 29 14:01:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "init/do_mounts_md.c: msleep compile fix\n\ninit/do_mounts_md.c:285: error: implicit declaration of function \u0027msleep\u0027\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "4403b406d4369a275d483ece6ddee0088cc0d592",
      "tree": "caefd6b7aabc1c517942be1abf25d841b181f323",
      "parents": [
        "e013e13bf605b9e6b702adffbe2853cfc60e7806"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "message": "Revert \"Call init_workqueues before pre smp initcalls.\"\n\nThis reverts commit a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635 by moving\nthe call to init_workqueues() back where it belongs - after SMP has been\ninitialized.\n\nIt also moves stop_machine_init() - which needs workqueues - to a later\nphase using a core_initcall() instead of early_initcall().  That should\nsatisfy all ordering requirements, and was apparently the reason why\ninit_workqueues() was moved to be too early.\n\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
      "tree": "af19ed28db83e8f52690872ac99336da1cf2fd3b",
      "parents": [
        "5b34653963de7a6d0d8c783527457d68fddc60fb",
        "fd217f4d70172c526478f2bc76859e909fdfa674"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "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: (46 commits)\n  [PATCH] fs: add a sanity check in d_free\n  [PATCH] i_version: remount support\n  [patch] vfs: make security_inode_setattr() calling consistent\n  [patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n  [PATCH] move executable checking into -\u003epermission()\n  [PATCH] fs/dcache.c: update comment of d_validate()\n  [RFC PATCH] touch_mnt_namespace when the mount flags change\n  [PATCH] reiserfs: add missing llseek method\n  [PATCH] fix -\u003ellseek for more directories\n  [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n  [PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n  [PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n  [PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n  [PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n  [PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n  [PATCH] get rid of on-stack dentry in udf\n  [PATCH 2/2] anondev: switch to IDA\n  [PATCH 1/2] anondev: init IDR statically\n  [JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n  [PATCH] Optimise NFS readdir hack slightly.\n  ...\n"
    },
    {
      "commit": "a3415dc34f4a615a904852e7a9d0cc2877007e9e",
      "tree": "0072b4b3f266c03220ffb2a9b329b2591f2a8e19",
      "parents": [
        "b4d0b08a4c3947c6ac004c9d83154ec5999c1861",
        "05a34f51ba451c65773ad6f1acf4cc089cc474d8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:16:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:16:53 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (32 commits)\n  PCI hotplug: fix logic in Compaq hotplug controller bus speed setup\n  PCI: don\u0027t export linux/io.h from pci.h\n  PCI: PCI_QUIRKS depends on PCI\n  PCI hotplug: pciehp: poll data link layer link active\n  PCI hotplug: pciehp: fix possible memory leak in pcie_init\n  PCI: Workaround invalid P2P bridge bus numbers\n  PCI Hotplug: fakephp: add duplicate slot name debugging\n  PCI: Hotplug core: remove \u0027name\u0027\n  PCI: shcphp: remove \u0027name\u0027 parameter\n  PCI: SGI Hotplug: stop managing bss_hotplug_slot-\u003ename\n  PCI: rpaphp: kmalloc/kfree slot-\u003ename directly\n  PCI: pciehp: remove \u0027name\u0027 parameter\n  PCI: ibmphp: stop managing hotplug_slot-\u003ename\n  PCI: fakephp: remove \u0027name\u0027 parameter\n  PCI, PCI Hotplug: introduce slot_name helpers\n  PCI: cpqphp: stop managing hotplug_slot-\u003ename\n  PCI: cpci_hotplug: stop managing hotplug_slot-\u003ename\n  PCI: acpiphp: remove \u0027name\u0027 parameter\n  PCI: prevent duplicate slot names\n  PCI Hotplug: serialize pci_hp_register and pci_hp_deregister\n  ...\n"
    },
    {
      "commit": "a5344876065e047d507800d0801a637d68d3b129",
      "tree": "240173ed2f588a1c61aff9bb513255f99b0cd6a2",
      "parents": [
        "296e1ce0dc36bb106c139e25482d02da43c70e71",
        "8163bcac779f62c6bf847caed9bce905db0693fb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -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:\n  stop_machine: fix error code handling on multiple cpus\n  stop_machine: use workqueues instead of kernel threads\n  workqueue: introduce create_rt_workqueue\n  Call init_workqueues before pre smp initcalls.\n  Make panic\u003d and panic_on_oops into core_params\n  Make initcall_debug a core_param\n  core_param() for genuinely core kernel parameters\n  param: Fix duplicate module prefixes\n  module: check kernel param length at compile time, not runtime\n  Remove stop_machine during module load v2\n  module: simplify load_module.\n"
    },
    {
      "commit": "94b6da5ab8293b04a300ba35c72eddfa94db8b02",
      "tree": "8ca1c8abb7934ab51657fffeb26a5f5aabd34743",
      "parents": [
        "be07c4ed4043ab8c26f222348136141335e47a2f"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Oct 22 14:15:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:02 2008 -0700"
      },
      "message": "memcg: fix page_cgroup allocation\n\npage_cgroup_init() is called from mem_cgroup_init(). But at this\npoint, we cannot call alloc_bootmem().\n(and this caused panic at boot.)\n\nThis patch moves page_cgroup_init() to init/main.c.\n\nTime table is following:\n\u003d\u003d\n  parse_args(). # we can trust mem_cgroup_subsys.disabled bit after this.\n  ....\n  cgroup_init_early()  # \"early\" init of cgroup.\n  ....\n  setup_arch()         # memmap is allocated.\n  ...\n  page_cgroup_init();\n  mem_init();   # we cannot call alloc_bootmem after this.\n  ....\n  cgroup_init() # mem_cgroup is initialized.\n\u003d\u003d\n\nBefore page_cgroup_init(), mem_map must be initialized. So,\nI added page_cgroup_init() to init/main.c directly.\n\n(*) maybe this is not very clean but\n    - cgroup_init_early() is too early\n    - in cgroup_init(), we have to use vmalloc instead of alloc_bootmem().\n    use of vmalloc area in x86-32 is important and we should avoid very large\n    vmalloc() in x86-32. So, we want to use alloc_bootmem() and added page_cgroup_init()\n    directly to init/main.c\n\n[akpm@linux-foundation.org: remove unneeded/bad mem_cgroup_subsys declaration]\n[akpm@linux-foundation.org: fix build]\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nTested-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "6de24f0ed08054b2a202902e4d63beff27654db8"
}
