)]}'
{
  "log": [
    {
      "commit": "5e34437840d33554f69380584311743b39e8fbeb",
      "tree": "e081135619ee146af5efb9ee883afca950df5757",
      "parents": [
        "77d05632baee21b1cef8730d7c06aa69601e4dca",
        "d508afb437daee7cf07da085b635c44a4ebf9b38"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 11:15:40 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 11:15:40 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/softlockup\n\nConflicts:\n\tkernel/sysctl.c\n"
    },
    {
      "commit": "07fe7cb7c7c179f473fd9c823348fd3eb5dad369",
      "tree": "516c959de929a4c39870629e550b3307601fa73f",
      "parents": [
        "8fe74cf053de7ad2124a894996f84fa890a81093"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Apr 03 16:42:35 2009 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Apr 03 16:42:35 2009 +0100"
      },
      "message": "Create a dynamically sized pool of threads for doing very slow work items\n\nCreate a dynamically sized pool of threads for doing very slow work items, such\nas invoking mkdir() or rmdir() - things that may take a long time and may\nsleep, holding mutexes/semaphores and hogging a thread, and are thus unsuitable\nfor workqueues.\n\nThe number of threads is always at least a settable minimum, but more are\nstarted when there\u0027s more work to do, up to a limit.  Because of the nature of\nthe load, it\u0027s not suitable for a 1-thread-per-CPU type pool.  A system with\none CPU may well want several threads.\n\nThis is used by FS-Cache to do slow caching operations in the background, such\nas looking up, creating or deleting cache objects.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Steve Dickson \u003csteved@redhat.com\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nTested-by: Daire Byrne \u003cDaire.Byrne@framestore.com\u003e\n"
    },
    {
      "commit": "42f5e039c3f6512271636928ddc4e7f7a0371672",
      "tree": "6582d5f88aeaf112e2293a2147f263fb726352cb",
      "parents": [
        "67e055d144c5b2acdc1c63811fde031263bf92c5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 18 14:48:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:54 2009 -0800"
      },
      "message": "pm: fix build for CONFIG_PM unset\n\nCompilation of kprobes.c with CONFIG_PM unset is broken due to some broken\nconfig dependncies.  Fix that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nTested-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "871cafcc962fa1655c44b4f0e54d4c5cc14e273c",
      "tree": "fdb7bc65d2606c85b7be6c33ba0dfd5b4e472245",
      "parents": [
        "cf2592f59c0e8ed4308adbdb2e0a88655379d579",
        "b578f3fcca1e78624dfb5f358776e63711d7fda2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 12 13:08:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 12 13:08:57 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/softlockup\n"
    },
    {
      "commit": "e162b39a368f0401e41b558f430c354d12a85b37",
      "tree": "3fb7e4d48f398d62e5074e7e3dd183cc54f59820",
      "parents": [
        "c903ff837909ccada51243307d4239f86af40179"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@google.com",
        "time": "Thu Jan 15 11:08:40 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:06:04 2009 +0100"
      },
      "message": "softlockup: decouple hung tasks check from softlockup detection\n\nDecoupling allows:\n\n* hung tasks check to happen at very low priority\n\n* hung tasks check and softlockup to be enabled/disabled independently\n  at compile and/or run-time\n\n* individual panic settings to be enabled disabled independently\n  at compile and/or run-time\n\n* softlockup threshold to be reduced without increasing hung tasks\n  poll frequency (hung task check is expensive relative to softlock watchdog)\n\n* hung task check to be zero over-head when disabled at run-time\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9316fcacb89c59fe556c48587ac02cd7f5d38045",
      "tree": "01e358788e2aef292d46fb8c1f598edf3449fe47",
      "parents": [
        "18e6959c385f3edf3991fa6662a53dac4eb10d5b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Jan 14 09:35:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 14 09:42:11 2009 -0800"
      },
      "message": "kernel/up.c: omit it if SMP\u003dy, USE_GENERIC_SMP_HELPERS\u003dn\n\nFix the sparc build - we were including `up.o\u0027 on SMP builds, when\nCONFIG_USE_GENERIC_SMP_HELPERS\u003dn.\n\nTested-by: Robert Reif \u003creif@earthlink.net\u003e\nFixed-by: Robert Reif \u003creif@earthlink.net\u003e\nCc: David Miller \u003cdavem@davemloft.net\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": "53ce3d9564908794ae7dd32969089b57df5fc098",
      "tree": "d0eb540d9743155eff6d3c454db3493bf75c9023",
      "parents": [
        "abede81c4fb2e3b85d8760f25e3da39d2c69a134"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Jan 09 12:27:08 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 03:41:58 2009 +0100"
      },
      "message": "smp_call_function_single(): be slightly less stupid\n\nIf you do\n\n\tsmp_call_function_single(expression-with-side-effects, ...)\n\nthen expression-with-side-effects never gets evaluated on UP builds.\n\nAs always, implementing it in C is the correct thing to do.\n\nWhile we\u0027re there, uninline it for size and possible header dependency\nreasons.\n\nAnd create a new kernel/up.c, as a place in which to put\nuniprocessor-specific code and storage.  It should mirror kernel/smp.c.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\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": "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": "a39b863342b8aba52390092be95db58f6ed56061",
      "tree": "a952625e9815c0a4d7fe9f85c33908068513429a",
      "parents": [
        "b0f4b285d7ed174804658539129a834270f4829a",
        "4e202284e6ac1695df3eb4a0e549ea78addfb663"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:27:58 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:27:58 2008 -0800"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits)\n  sched: fix warning in fs/proc/base.c\n  schedstat: consolidate per-task cpu runtime stats\n  sched: use RCU variant of list traversal in for_each_leaf_rt_rq()\n  sched, cpuacct: export percpu cpuacct cgroup stats\n  sched, cpuacct: refactoring cpuusage_read / cpuusage_write\n  sched: optimize update_curr()\n  sched: fix wakeup preemption clock\n  sched: add missing arch_update_cpu_topology() call\n  sched: let arch_update_cpu_topology indicate if topology changed\n  sched: idle_balance() does not call load_balance_newidle()\n  sched: fix sd_parent_degenerate on non-numa smp machine\n  sched: add uid information to sched_debug for CONFIG_USER_SCHED\n  sched: move double_unlock_balance() higher\n  sched: update comment for move_task_off_dead_cpu\n  sched: fix inconsistency when redistribute per-cpu tg-\u003ecfs_rq shares\n  sched/rt: removed unneeded defintion\n  sched: add hierarchical accounting to cpu accounting controller\n  sched: include group statistics in /proc/sched_debug\n  sched: rename SCHED_NO_NO_OMIT_FRAME_POINTER \u003d\u003e SCHED_OMIT_FRAME_POINTER\n  sched: clean up SCHED_CPUMASK_ALLOC\n  ...\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": "3ac3ba0b396fd99550e08034b0e4c27fdf39c252",
      "tree": "f9f69fac41d66540a37a33808714d055d702328f",
      "parents": [
        "934352f214b3251eb0793c1209d346595a661d80",
        "7f0f598a0069d1ab072375965a4b69137233169c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 19 09:44:37 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 19 09:44:37 2008 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nConflicts:\n\tkernel/Makefile\n"
    },
    {
      "commit": "f3a5c547012a09f38f7c27b17a8e3150b69cd259",
      "tree": "4d1d47382a4a445fc7ef7431bcf5d06b7cca8539",
      "parents": [
        "e50a906e0200084f04f8f3b7c3a14b0442d1347f",
        "4e14e833ac3b97a4aa8803eea49f899adc5bb5f4"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Nov 18 18:52:37 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Nov 18 18:52:37 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/cifs/misc.c\n\nMerge to resolve above, per the patch below.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n\ndiff --cc fs/cifs/misc.c\nindex ec36410,addd1dc..0000000\n--- a/fs/cifs/misc.c\n+++ b/fs/cifs/misc.c\n@@@ -347,13 -338,13 +338,13 @@@ header_assemble(struct smb_hdr *buffer\n  \t\t/*  BB Add support for establishing new tCon and SMB Session  */\n  \t\t/*      with userid/password pairs found on the smb session   */\n  \t\t/*\tfor other target tcp/ip addresses \t\tBB    */\n -\t\t\t\tif (current-\u003efsuid !\u003d treeCon-\u003eses-\u003elinux_uid) {\n +\t\t\t\tif (current_fsuid() !\u003d treeCon-\u003eses-\u003elinux_uid) {\n  \t\t\t\t\tcFYI(1, (\"Multiuser mode and UID \"\n  \t\t\t\t\t\t \"did not match tcon uid\"));\n- \t\t\t\t\tread_lock(\u0026GlobalSMBSeslock);\n- \t\t\t\t\tlist_for_each(temp_item, \u0026GlobalSMBSessionList) {\n- \t\t\t\t\t\tses \u003d list_entry(temp_item, struct cifsSesInfo, cifsSessionList);\n+ \t\t\t\t\tread_lock(\u0026cifs_tcp_ses_lock);\n+ \t\t\t\t\tlist_for_each(temp_item, \u0026treeCon-\u003eses-\u003eserver-\u003esmb_ses_list) {\n+ \t\t\t\t\t\tses \u003d list_entry(temp_item, struct cifsSesInfo, smb_ses_list);\n -\t\t\t\t\t\tif (ses-\u003elinux_uid \u003d\u003d current-\u003efsuid) {\n +\t\t\t\t\t\tif (ses-\u003elinux_uid \u003d\u003d current_fsuid()) {\n  \t\t\t\t\t\t\tif (ses-\u003eserver \u003d\u003d treeCon-\u003eses-\u003eserver) {\n  \t\t\t\t\t\t\t\tcFYI(1, (\"found matching uid substitute right smb_uid\"));\n  \t\t\t\t\t\t\t\tbuffer-\u003eUid \u003d ses-\u003eSuid;\n"
    },
    {
      "commit": "65ecc14a30ad21bed9aabdfd6a2ae1a1aaaa6a00",
      "tree": "0245f08c672b54a914df9bbb54dff98ed685a3c7",
      "parents": [
        "e77a20e8ef6784586cfd66f4346af88ddb11173f"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Sat Nov 15 12:02:34 2008 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 17 13:24:35 2008 -0800"
      },
      "message": "Remove -mno-spe flags as they dont belong\n\nFor some unknown reason at Steven Rostedt added in disabling of the SPE\ninstruction generation for e500 based PPC cores in commit\n6ec562328fda585be2d7f472cfac99d3b44d362a.\n\nWe are removing it because:\n\n1. It generates e500 kernels that don\u0027t work\n2. its not the correct set of flags to do this\n3. we handle this in the arch/powerpc/Makefile already\n4. its unknown in talking to Steven why he did this\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nTested-and-Acked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1752eec6145c97163dbce62d17cf5d928e28a27",
      "tree": "16bc51166d38815092de36a461b845b0b4b522f9",
      "parents": [
        "b6dff3ec5e116e3af6f537d4caedcad6b9e5082a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:17 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:17 2008 +1100"
      },
      "message": "CRED: Detach the credentials from task_struct\n\nDetach the credentials from task_struct, duplicating them in copy_process()\nand releasing them in __put_task_struct().\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "ae1e9130bfb9ad55eb97ec3fb17a122b7a118f98",
      "tree": "fa37f195008d540a4a69e562f6796b23831f0b56",
      "parents": [
        "6d21cd62516a9697cb7ec33cc52e6b814fb65a13"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 11 09:05:16 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 11 08:59:20 2008 +0100"
      },
      "message": "sched: rename SCHED_NO_NO_OMIT_FRAME_POINTER \u003d\u003e SCHED_OMIT_FRAME_POINTER\n\nImpact: cleanup, change .config option name\n\nWe had this ugly config name for a long time for hysteric raisons.\nRename it to a saner name.\n\nWe still cannot get rid of it completely, until /proc/\u003cpid\u003e/stack\nusage replaces WCHAN usage for good.\n\nWe\u0027ll be able to do that in the v2.6.29/v2.6.30 timeframe.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8bb8c4386d08f2cc5d871d22f220d35032213f84",
      "tree": "db34e8802555c0ee54029fdc82ae6b9905558b3a",
      "parents": [
        "db5935001a43528e673ad26ffec9d98c60a496a9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sat Nov 01 00:13:49 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 03 08:58:55 2008 +0100"
      },
      "message": "sched, ftrace: trace sched.c\n\nImpact: allow function tracing within sched.c\n\nIts useful to see what happens in sched.c.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "debfcaf93ed500a051489db6646d71f29fe86a68",
      "tree": "7ba189b6dd654022ecc655b68e3c0a4573627706",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4",
        "81520a1b0649d0701205b818714a8c1e1cfbbb5b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 09:08:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 09:08:14 2008 +0200"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 into tracing/urgent\n"
    },
    {
      "commit": "92b29b86fe2e183d44eb467e5e74a5f718ef2e43",
      "tree": "1bac8a1aa11d47322b66d10ec3a370016d843d06",
      "parents": [
        "b9d7ccf56be1ac77b71a284a1c0e6337f9a7aff0",
        "98d9c66ab07471006fd7910cb16453581c41a3e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "message": "Merge branch \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (131 commits)\n  tracing/fastboot: improve help text\n  tracing/stacktrace: improve help text\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix bootgraph.pl initcall name regexp\n  tracing/fastboot: fix issues and improve output of bootgraph.pl\n  tracepoints: synchronize unregister static inline\n  tracepoints: tracepoint_synchronize_unregister()\n  ftrace: make ftrace_test_p6nop disassembler-friendly\n  markers: fix synchronize marker unregister static inline\n  tracing/fastboot: add better resolution to initcall debug/tracing\n  trace: add build-time check to avoid overrunning hex buffer\n  ftrace: fix hex output mode of ftrace\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix printk format typo in boot tracer\n  ftrace: return an error when setting a nonexistent tracer\n  ftrace: make some tracers reentrant\n  ring-buffer: make reentrant\n  ring-buffer: move page indexes into page headers\n  tracing/fastboot: only trace non-module initcalls\n  ftrace: move pc counter in irqtrace\n  ...\n\nManually fix conflicts:\n - init/main.c: initcall tracing\n - kernel/module.c: verbose level vs tracepoints\n - scripts/bootgraph.pl: fallout from cherry-picking commits.\n"
    },
    {
      "commit": "606576ce816603d9fe1fb453a88bc6eea16ca709",
      "tree": "7c6844ff4d75f249df49e9e5fe97062d301c3a1f",
      "parents": [
        "c2db8054c1eaf99983d8deee347876b01c26c2cf"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 19:06:12 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:03 2008 +0200"
      },
      "message": "ftrace: rename FTRACE to FUNCTION_TRACER\n\nDue to confusion between the ftrace infrastructure and the gcc profiling\ntracer \"ftrace\", this patch renames the config options from FTRACE to\nFUNCTION_TRACER.  The other two names that are offspring from FTRACE\nDYNAMIC_FTRACE and FTRACE_MCOUNT_RECORD will stay the same.\n\nThis patch was generated mostly by script, and partially by hand.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc52ddc0e6f45b04780b26fc0813509f8e798c42",
      "tree": "384826e9fab4e434bc5c85ce744470ae472e52c3",
      "parents": [
        "8174f1503f4bf7e9a14b3fbbfdb30c6be6e29f77"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: implement freezer cgroup subsystem\n\nThis patch implements a new freezer subsystem in the control groups\nframework.  It provides a way to stop and resume execution of all tasks in\na cgroup by writing in the cgroup filesystem.\n\nThe freezer subsystem in the container filesystem defines a file named\nfreezer.state.  Writing \"FROZEN\" to the state file will freeze all tasks\nin the cgroup.  Subsequently writing \"RUNNING\" will unfreeze the tasks in\nthe cgroup.  Reading will return the current state.\n\n* Examples of usage :\n\n   # mkdir /containers/freezer\n   # mount -t cgroup -ofreezer freezer  /containers\n   # mkdir /containers/0\n   # echo $some_pid \u003e /containers/0/tasks\n\nto get status of the freezer subsystem :\n\n   # cat /containers/0/freezer.state\n   RUNNING\n\nto freeze all tasks in the container :\n\n   # echo FROZEN \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   FREEZING\n   # cat /containers/0/freezer.state\n   FROZEN\n\nto unfreeze all tasks in the container :\n\n   # echo RUNNING \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   RUNNING\n\nThis is the basic mechanism which should do the right thing for user space\ntask in a simple scenario.\n\nIt\u0027s important to note that freezing can be incomplete.  In that case we\nreturn EBUSY.  This means that some tasks in the cgroup are busy doing\nsomething that prevents us from completely freezing the cgroup at this\ntime.  After EBUSY, the cgroup will remain partially frozen -- reflected\nby freezer.state reporting \"FREEZING\" when read.  The state will remain\n\"FREEZING\" until one of these things happens:\n\n\t1) Userspace cancels the freezing operation by writing \"RUNNING\" to\n\t\tthe freezer.state file\n\t2) Userspace retries the freezing operation by writing \"FROZEN\" to\n\t\tthe freezer.state file (writing \"FREEZING\" is not legal\n\t\tand returns EIO)\n\t3) The tasks that blocked the cgroup from entering the \"FROZEN\"\n\t\tstate disappear from the cgroup\u0027s set of tasks.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: export thaw_process]\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@us.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": "8174f1503f4bf7e9a14b3fbbfdb30c6be6e29f77",
      "tree": "a8df1ebd62255dd231452b3f72782604e8919991",
      "parents": [
        "83224b08372be48d5fcefedc4886457da29130c8"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:33 2008 -0700"
      },
      "message": "container freezer: make refrigerator always available\n\nNow that the TIF_FREEZE flag is available in all architectures, extract\nthe refrigerator() and freeze_task() from kernel/power/process.c and make\nit available to all.\n\nThe refrigerator() can now be used in a control group subsystem\nimplementing a control group freezer.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97e1c18e8d17bd87e1e383b2e9d9fc740332c8e2",
      "tree": "5c6bfce8bacf04c2993a0029788a1370a483afa6",
      "parents": [
        "e7f2f9918c0e97aa98ba147ca387e2c7238f0711"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Jul 18 12:16:16 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:28:28 2008 +0200"
      },
      "message": "tracing: Kernel Tracepoints\n\nImplementation of kernel tracepoints. Inspired from the Linux Kernel\nMarkers. Allows complete typing verification by declaring both tracing\nstatement inline functions and probe registration/unregistration static\ninline functions within the same macro \"DEFINE_TRACE\". No format string\nis required. See the tracepoint Documentation and Samples patches for\nusage examples.\n\nTaken from the documentation patch :\n\n\"A tracepoint placed in code provides a hook to call a function (probe)\nthat you can provide at runtime. A tracepoint can be \"on\" (a probe is\nconnected to it) or \"off\" (no probe is attached). When a tracepoint is\n\"off\" it has no effect, except for adding a tiny time penalty (checking\na condition for a branch) and space penalty (adding a few bytes for the\nfunction call at the end of the instrumented function and adds a data\nstructure in a separate section).  When a tracepoint is \"on\", the\nfunction you provide is called each time the tracepoint is executed, in\nthe execution context of the caller. When the function provided ends its\nexecution, it returns to the caller (continuing from the tracepoint\nsite).\n\nYou can put tracepoints at important locations in the code. They are\nlightweight hooks that can pass an arbitrary number of parameters, which\nprototypes are described in a tracepoint declaration placed in a header\nfile.\"\n\nAddition and removal of tracepoints is synchronized by RCU using the\nscheduler (and preempt_disable) as guarantees to find a quiescent state\n(this is really RCU \"classic\"). The update side uses rcu_barrier_sched()\nwith call_rcu_sched() and the read/execute side uses\n\"preempt_disable()/preempt_enable()\".\n\nWe make sure the previous array containing probes, which has been\nscheduled for deletion by the rcu callback, is indeed freed before we\nproceed to the next update. It therefore limits the rate of modification\nof a single tracepoint to one update per RCU period. The objective here\nis to permit fast batch add/removal of probes on _different_\ntracepoints.\n\nChangelog :\n- Use #name \":\" #proto as string to identify the tracepoint in the\n  tracepoint table. This will make sure not type mismatch happens due to\n  connexion of a probe with the wrong type to a tracepoint declared with\n  the same name in a different header.\n- Add tracepoint_entry_free_old.\n- Change __TO_TRACE to get rid of the \u0027i\u0027 iterator.\n\nMasami Hiramatsu \u003cmhiramat@redhat.com\u003e :\nTested on x86-64.\n\nPerformance impact of a tracepoint : same as markers, except that it\nadds about 70 bytes of instructions in an unlikely branch of each\ninstrumented function (the for loop, the stack setup and the function\ncall). It currently adds a memory read, a test and a conditional branch\nat the instrumentation site (in the hot path). Immediate values will\neventually change this into a load immediate, test and branch, which\nremoves the memory read which will make the i-cache impact smaller\n(changing the memory read for a load immediate removes 3-4 bytes per\nsite on x86_32 (depending on mov prefixes), or 7-8 bytes on x86_64, it\nalso saves the d-cache hit).\n\nAbout the performance impact of tracepoints (which is comparable to\nmarkers), even without immediate values optimizations, tests done by\nHideo Aoki on ia64 show no regression. His test case was using hackbench\non a kernel where scheduler instrumentation (about 5 events in code\nscheduler code) was added.\n\nQuoting Hideo Aoki about Markers :\n\nI evaluated overhead of kernel marker using linux-2.6-sched-fixes git\ntree, which includes several markers for LTTng, using an ia64 server.\n\nWhile the immediate trace mark feature isn\u0027t implemented on ia64, there\nis no major performance regression. So, I think that we don\u0027t have any\nissues to propose merging marker point patches into Linus\u0027s tree from\nthe viewpoint of performance impact.\n\nI prepared two kernels to evaluate. The first one was compiled without\nCONFIG_MARKERS. The second one was enabled CONFIG_MARKERS.\n\nI downloaded the original hackbench from the following URL:\nhttp://devresources.linux-foundation.org/craiger/hackbench/src/hackbench.c\n\nI ran hackbench 5 times in each condition and calculated the average and\ndifference between the kernels.\n\n    The parameter of hackbench: every 50 from 50 to 800\n    The number of CPUs of the server: 2, 4, and 8\n\nBelow is the results. As you can see, major performance regression\nwasn\u0027t found in any case. Even if number of processes increases,\ndifferences between marker-enabled kernel and marker- disabled kernel\ndoesn\u0027t increase. Moreover, if number of CPUs increases, the differences\ndoesn\u0027t increase either.\n\nCuriously, marker-enabled kernel is better than marker-disabled kernel\nin more than half cases, although I guess it comes from the difference\nof memory access pattern.\n\n* 2 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      4.811   |       4.872  |  +0.061  |  +1.27  |\n      100 |      9.854   |      10.309  |  +0.454  |  +4.61  |\n      150 |     15.602   |      15.040  |  -0.562  |  -3.6   |\n      200 |     20.489   |      20.380  |  -0.109  |  -0.53  |\n      250 |     25.798   |      25.652  |  -0.146  |  -0.56  |\n      300 |     31.260   |      30.797  |  -0.463  |  -1.48  |\n      350 |     36.121   |      35.770  |  -0.351  |  -0.97  |\n      400 |     42.288   |      42.102  |  -0.186  |  -0.44  |\n      450 |     47.778   |      47.253  |  -0.526  |  -1.1   |\n      500 |     51.953   |      52.278  |  +0.325  |  +0.63  |\n      550 |     58.401   |      57.700  |  -0.701  |  -1.2   |\n      600 |     63.334   |      63.222  |  -0.112  |  -0.18  |\n      650 |     68.816   |      68.511  |  -0.306  |  -0.44  |\n      700 |     74.667   |      74.088  |  -0.579  |  -0.78  |\n      750 |     78.612   |      79.582  |  +0.970  |  +1.23  |\n      800 |     85.431   |      85.263  |  -0.168  |  -0.2   |\n--------------------------------------------------------------\n\n* 4 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.586   |       2.584  |  -0.003  |  -0.1   |\n      100 |      5.254   |       5.283  |  +0.030  |  +0.56  |\n      150 |      8.012   |       8.074  |  +0.061  |  +0.76  |\n      200 |     11.172   |      11.000  |  -0.172  |  -1.54  |\n      250 |     13.917   |      14.036  |  +0.119  |  +0.86  |\n      300 |     16.905   |      16.543  |  -0.362  |  -2.14  |\n      350 |     19.901   |      20.036  |  +0.135  |  +0.68  |\n      400 |     22.908   |      23.094  |  +0.186  |  +0.81  |\n      450 |     26.273   |      26.101  |  -0.172  |  -0.66  |\n      500 |     29.554   |      29.092  |  -0.461  |  -1.56  |\n      550 |     32.377   |      32.274  |  -0.103  |  -0.32  |\n      600 |     35.855   |      35.322  |  -0.533  |  -1.49  |\n      650 |     39.192   |      38.388  |  -0.804  |  -2.05  |\n      700 |     41.744   |      41.719  |  -0.025  |  -0.06  |\n      750 |     45.016   |      44.496  |  -0.520  |  -1.16  |\n      800 |     48.212   |      47.603  |  -0.609  |  -1.26  |\n--------------------------------------------------------------\n\n* 8 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.094   |       2.072  |  -0.022  |  -1.07  |\n      100 |      4.162   |       4.273  |  +0.111  |  +2.66  |\n      150 |      6.485   |       6.540  |  +0.055  |  +0.84  |\n      200 |      8.556   |       8.478  |  -0.078  |  -0.91  |\n      250 |     10.458   |      10.258  |  -0.200  |  -1.91  |\n      300 |     12.425   |      12.750  |  +0.325  |  +2.62  |\n      350 |     14.807   |      14.839  |  +0.032  |  +0.22  |\n      400 |     16.801   |      16.959  |  +0.158  |  +0.94  |\n      450 |     19.478   |      19.009  |  -0.470  |  -2.41  |\n      500 |     21.296   |      21.504  |  +0.208  |  +0.98  |\n      550 |     23.842   |      23.979  |  +0.137  |  +0.57  |\n      600 |     26.309   |      26.111  |  -0.198  |  -0.75  |\n      650 |     28.705   |      28.446  |  -0.259  |  -0.9   |\n      700 |     31.233   |      31.394  |  +0.161  |  +0.52  |\n      750 |     34.064   |      33.720  |  -0.344  |  -1.01  |\n      800 |     36.320   |      36.114  |  -0.206  |  -0.57  |\n--------------------------------------------------------------\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: \u0027Peter Zijlstra\u0027 \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb28a1bbdb4790378e7366d6c9ee1d2340b84f92",
      "tree": "316436f77dac75335fd2c3ef5f109e71606c50d3",
      "parents": [
        "b6d4f7e3ef25beb8c658c97867d98883e69dc544",
        "f934fb19ef34730263e6afc01e8ec27a8a71470f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tarch/x86/Kconfig\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b03f6489f9f27dc519a4c60ebf39cc7b8a58eae7",
      "tree": "6329fc91e860f2949d737c611aa846eb2d653103",
      "parents": [
        "696adfe84c11c571a1e0863460ff0ec142b4e5a9"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:45:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:27 2008 -0700"
      },
      "message": "build kernel/profile.o only when requested\n\nBuild kernel/profile.o only if CONFIG_PROFILING is enabled.\n\nThis makes CONFIG_PROFILING\u003dn kernels smaller.\n\nAs a bonus, some profile_tick() calls and one branch from schedule() are\nnow eliminated with CONFIG_PROFILING\u003dn (but I doubt these are\nmeasurable effects).\n\nThis patch changes the effects of CONFIG_PROFILING\u003dn, but I don\u0027t think\nhaving more than two choices would be the better choice.\n\nThis patch also adds the name of the first parameter to the prototypes\nof profile_{hits,tick}() since I anyway had to add them for the dummy\nfunctions.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.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": "f6dc8ccaab6d8f63cbae1e6c73fe972b26f5376c",
      "tree": "c5643fcdc884a8d0bfc3f1bc28039cab7394e5bc",
      "parents": [
        "323ec001c6bb98eeabb5abbdbb8c8055d9496554",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d88c16919793a9f5dc93e7956da5bb089c7600b4",
      "tree": "783fb96fd4912f11f97f7dea659828e773408d74",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 08:59:24 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 08:59:24 2008 +0200"
      },
      "message": "Revert parts of \"ftrace: do not trace scheduler functions\"\n\nthe removal of -mno-spe in the !ftrace case was not intended.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c349e0a01c3e0f70913db6a5bb61ab204e0602de",
      "tree": "08cd666a96fe9a078fd51c2449376df04f311b73",
      "parents": [
        "9fa111372a54f695f65e0de2f2a2108fe6cf3584"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 15 22:39:31 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:40:11 2008 +0200"
      },
      "message": "ftrace: do not trace scheduler functions\n\ndo not trace scheduler functions - it\u0027s still a bit fragile\nand can lock up with:\n\n  http://redhat.com/~mingo/misc/config-Thu_Jul_17_13_34_52_CEST_2008\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a781a777b2f6ac46523fe92396215762ced624d",
      "tree": "4f34bb4aade85c0eb364b53d664ec7f6ab959006",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "42a2f217a5e324ed5f2373ab1b7a0a15187c4d6c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "message": "Merge branch \u0027generic-ipi\u0027 into generic-ipi-for-linus\n\nConflicts:\n\n\tarch/powerpc/Kconfig\n\tarch/s390/kernel/time.c\n\tarch/x86/kernel/apic_32.c\n\tarch/x86/kernel/cpu/perfctr-watchdog.c\n\tarch/x86/kernel/i8259_64.c\n\tarch/x86/kernel/ldt.c\n\tarch/x86/kernel/nmi_64.c\n\tarch/x86/kernel/smpboot.c\n\tarch/x86/xen/smp.c\n\tinclude/asm-x86/hw_irq_32.h\n\tinclude/asm-x86/hw_irq_64.h\n\tinclude/asm-x86/mach-default/irq_vectors.h\n\tinclude/asm-x86/mach-voyager/irq_vectors.h\n\tinclude/asm-x86/smp.h\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5806b81ac1c0c52665b91723fd4146a4f86e386b",
      "tree": "24ea8763bf308ce1407c1de91dc8de4d2655e1c1",
      "parents": [
        "d14c8a680ccfdeb5e7b9be4d61162c2b373bd1e8",
        "6712e299b7dc78aa4971b85e803435ee6d49a9dd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 14 16:11:52 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 14 16:11:52 2008 +0200"
      },
      "message": "Merge branch \u0027auto-ftrace-next\u0027 into tracing/for-linus\n\nConflicts:\n\n\tarch/x86/kernel/entry_32.S\n\tarch/x86/kernel/process_32.c\n\tarch/x86/kernel/process_64.c\n\tarch/x86/lib/Makefile\n\tinclude/asm-x86/irqflags.h\n\tkernel/Makefile\n\tkernel/sched.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1e16c0a081f6c93f04c6af784d6a160955269f91",
      "tree": "76f36b5218979abd9ff07fef5910fd2751fd471d",
      "parents": [
        "001b6767b1d0c89e458e5ddb039245b268f569fb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jul 10 20:58:11 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:49:19 2008 +0200"
      },
      "message": "ftrace: trace schedule\n\nAfter the sched_clock code has been removed from sched.c we can now trace\nthe scheduler. The scheduler has a lot of functions that would be worth\ntracing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee7e5516be4f2107535ad5a3d47d9c79f93661a2",
      "tree": "57bdb330864036d6241deb8e69f351ee5ee01adb",
      "parents": [
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Sun Jun 29 14:18:46 2008 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 30 12:51:05 2008 +0200"
      },
      "message": "generic: per-device coherent dma allocator\n\nCurrently x86_32, sh and cris-v32 provide per-device coherent dma\nmemory allocator.\n\nHowever their implementation is nearly identical. Refactor out\ncommon code to be reused by them.\n\nSigned-off-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d4422332711ef48ef0f132f1fcbfcbd56c7f3d1",
      "tree": "9fd3cfa9825e8cb0b7e08dfae85cc9a722442849",
      "parents": [
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "message": "Add generic helpers for arch IPI function calls\n\nThis adds kernel/smp.c which contains helpers for IPI function calls. In\naddition to supporting the existing smp_call_function() in a more efficient\nmanner, it also adds a more scalable variant called smp_call_function_single()\nfor calling a given function on a single CPU only.\n\nThe core of this is based on the x86-64 patch from Nick Piggin, lots of\nchanges since then. \"Alan D. Brunelle\" \u003cAlan.Brunelle@hp.com\u003e has\ncontributed lots of fixes and suggestions as well. Also thanks to\nPaul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e for reviewing RCU usage\nand getting rid of the data allocation fallback deadlock.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "68f4f1ec08e3d95730a2693b99df8260aa0d06ae",
      "tree": "c5deab621f545eac80fcec6608d68cddf6705032",
      "parents": [
        "5c8e1ed1d204a6770ca2854cd3b3597070fe7e5a"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Thu May 29 11:17:02 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:25:01 2008 +0200"
      },
      "message": "sched: Move cpu masks from kernel/sched.c into kernel/cpu.c\n\nkernel/cpu.c seems a more logical place for those maps since they do not really\nhave much to do with the scheduler these days.\n\nkernel/cpu.c is now built for the UP kernel too, but it does not affect the size\nthe kernel sections.\n\n$ size vmlinux\n\nbefore\n   text       data        bss        dec        hex    filename\n3313797     307060     310352    3931209     3bfc49    vmlinux\n\nafter\n   text       data        bss        dec        hex    filename\n3313797     307060     310352    3931209     3bfc49    vmlinux\n\nSigned-off-by: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: pj@sgi.com\nCc: menage@google.com\nCc: rostedt@goodmis.org\nCc: mingo@elte.hu\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6e0534f278199f1e3dd1049b9bc19a7a5b87ada1",
      "tree": "25f4da14ec32927742db9f599ac779b4e83d1763",
      "parents": [
        "f333fdc9098b71e2687e4e9b6349fcb352960d66"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon May 12 21:21:01 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:28 2008 +0200"
      },
      "message": "sched: use a 2-d bitmap for searching lowest-pri CPU\n\nThe current code use a linear algorithm which causes scaling issues\non larger SMP machines.  This patch replaces that algorithm with a\n2-dimensional bitmap to reduce latencies in the wake-up path.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6ec562328fda585be2d7f472cfac99d3b44d362a",
      "tree": "82b4be77f89f278b254ebb0f1993b2dc401019d5",
      "parents": [
        "656ee82cc855027b2e994ad218519b09fa652cc1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 14 21:30:30 2008 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 22:46:09 2008 +0200"
      },
      "message": "ftrace: use the new kbuild CFLAGS_REMOVE for kernel directory\n\nThis patch removes the Makefile turd and uses the nice CFLAGS_REMOVE macro\nin the kernel directory.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1d09daa55d2e9bab7e7d30f0d05e5a7bc60b2a4a",
      "tree": "81b138d50b84e052d49f7710ce03250cde1b3606",
      "parents": [
        "9d0a420b737f72d84fabebf29634d800cbf54538"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon May 12 21:20:55 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 21:15:14 2008 +0200"
      },
      "message": "ftrace: use Makefile to remove tracing from lockdep\n\nThis patch removes the \"notrace\" annotation from lockdep and adds the debugging\nfiles in the kernel director to those that should not be compiled with\n\"-pg\" mcount tracing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bc0c38d139ec7fcd5c030aea16b008f3732e42ac",
      "tree": "adaaf5e2ca49bbd7025bc357f87df9cb47641022",
      "parents": [
        "16444a8a40d4c7b4f6de34af0cae1f76a4f6c901"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 12 21:20:42 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:32:06 2008 +0200"
      },
      "message": "ftrace: latency tracer infrastructure\n\nThis patch adds the latency tracer infrastructure. This patch\ndoes not add anything that will select and turn it on, but will\nbe used by later patches.\n\nIf it were to be compiled, it would add the following files\nto the debugfs:\n\n The root tracing directory:\n\n  /debugfs/tracing/\n\nThis patch also adds the following files:\n\n  available_tracers\n     list of available tracers. Currently no tracers are\n     available. Looking into this file only shows\n     \"none\" which is used to unregister all tracers.\n\n  current_tracer\n     The trace that is currently active. Empty on start up.\n     To switch to a tracer simply echo one of the tracers that\n     are listed in available_tracers:\n\n   example: (used with later patches)\n\n      echo function \u003e /debugfs/tracing/current_tracer\n\n     To disable the tracer:\n\n       echo disable \u003e /debugfs/tracing/current_tracer\n\n  tracing_enabled\n     echoing \"1\" into this file starts the ftrace function tracing\n      (if sysctl kernel.ftrace_enabled\u003d1)\n     echoing \"0\" turns it off.\n\n  latency_trace\n      This file is readonly and holds the result of the trace.\n\n  trace\n      This file outputs a easier to read version of the trace.\n\n  iter_ctrl\n      Controls the way the output of traces look.\n      So far there\u0027s two controls:\n        echoing in \"symonly\" will only show the kallsyms variables\n            without the addresses (if kallsyms was configured)\n        echoing in \"verbose\" will change the output to show\n            a lot more data, but not very easy to understand by\n            humans.\n        echoing in \"nosymonly\" turns off symonly.\n        echoing in \"noverbose\" turns off verbose.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "16444a8a40d4c7b4f6de34af0cae1f76a4f6c901",
      "tree": "9c290bcdbdc1ecf8f578c30b3b36914e14fdaacc",
      "parents": [
        "6e766410c4babd37bc7cd5e25009c179781742c8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Mon May 12 21:20:42 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:31:58 2008 +0200"
      },
      "message": "ftrace: add basic support for gcc profiler instrumentation\n\nIf CONFIG_FTRACE is selected and /proc/sys/kernel/ftrace_enabled is\nset to a non-zero value the ftrace routine will be called everytime\nwe enter a kernel function that is not marked with the \"notrace\"\nattribute.\n\nThe ftrace routine will then call a registered function if a function\nhappens to be registered.\n\n[ This code has been highly hacked by Steven Rostedt and Ingo Molnar,\n  so don\u0027t blame Arnaldo for all of this ;-) ]\n\nUpdate:\n  It is now possible to register more than one ftrace function.\n  If only one ftrace function is registered, that will be the\n  function that ftrace calls directly. If more than one function\n  is registered, then ftrace will call a function that will loop\n  through the functions to call.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd",
      "tree": "3752f9ea8e014ec40e95a1b197b0a3d18e1056a8",
      "parents": [
        "a5574cf65b5f03ce9ade3918764fe22e5e2371e3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat May 03 18:29:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:56:18 2008 +0200"
      },
      "message": "sched: add optional support for CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nthis replaces the rq-\u003eclock stuff (and possibly cpu_clock()).\n\n - architectures that have an \u0027imperfect\u0027 hardware clock can set\n   CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\n - the \u0027jiffie\u0027 window might be superfulous when we update tick_gtod\n   before the __update_sched_clock() call in sched_clock_tick()\n\n - cpu_clock() might be implemented as:\n\n     sched_clock_cpu(smp_processor_id())\n\n   if the accuracy proves good enough - how far can TSC drift in a\n   single jiffie when considering the filtering and idle hooks?\n\n[ mingo@elte.hu: various fixes and cleanups ]\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88f458e4b91348b2e892c72977b5f665d7f374da",
      "tree": "1ef9e98f74fc63193327053af079079e23aa8443",
      "parents": [
        "c7705f3449c7edd5c1744871097f93977227afc4"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Tue Apr 29 01:02:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "sysctl: allow embedded targets to disable sysctl_check.c\n\nDisable sysctl_check.c for embedded targets. This saves about about 11 kB\nin .text and another 11 kB in .data on a PXA255 embedded platform.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9732b6112343df2872518ec6701c8ef729310a05",
      "tree": "9e3dcc461845038da4730c2062eee546348ca445",
      "parents": [
        "9e9abecfc0ff3a9ad2ead954b37bbfcb863c775e",
        "1a9a3e76dde191f82f7a8a66059dcbb4a9f63ff3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:37:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:37:01 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-kgdb\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-kgdb:\n  kgdb: always use icache flush for sw breakpoints\n  kgdb: fix SMP NMI kgdb_handle_exception exit race\n  kgdb: documentation fixes\n  kgdb: allow static kgdbts boot configuration\n  kgdb: add documentation\n  kgdb: Kconfig fix\n  kgdb: add kgdb internal test suite\n  kgdb: fix several kgdb regressions\n  kgdb: kgdboc pl011 I/O module\n  kgdb: fix optional arch functions and probe_kernel_*\n  kgdb: add x86 HW breakpoints\n  kgdb: print breakpoint removed on exception\n  kgdb: clocksource watchdog\n  kgdb: fix NMI hangs\n  kgdb: fix kgdboc dynamic module configuration\n  kgdb: document parameters\n  x86: kgdb support\n  consoles: polling support, kgdboc\n  kgdb: core\n  uaccess: add probe_kernel_write()\n"
    },
    {
      "commit": "dc7d552705215ac50a0617fcf51bb9c736255b8e",
      "tree": "3ca376bdf4e6996edd9e2dabd569a791f050dae8",
      "parents": [
        "c33fa9f5609e918824446ef9a75319d4a802f1f4"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "message": "kgdb: core\n\nkgdb core code. Handles the protocol and the arch details.\n\n[ mingo@elte.hu: heavily modified, simplified and cleaned up. ]\n[ xemul@openvz.org: use find_task_by_pid_ns ]\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "64ac24e738823161693bf791f87adc802cf529ff",
      "tree": "19c0b0cf314d4394ca580c05b86cdf874ce0a167",
      "parents": [
        "e48b3deee475134585eed03e7afebe4bf9e0dba9"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Mar 07 21:55:58 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:42:34 2008 -0400"
      },
      "message": "Generic semaphore implementation\n\nSemaphores are no longer performance-critical, so a generic C\nimplementation is better for maintainability, debuggability and\nextensibility.  Thanks to Peter Zijlstra for fixing the lockdep\nwarning.  Thanks to Harvey Harrison for pointing out that the\nunlikely() was unnecessary.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bdc807871d58285737d50dc6163d0feb72cb0dc2",
      "tree": "1a6d35f3537ed1a7460811549efd045ae97a0e6e",
      "parents": [
        "7ef3d2fd17c377ef64a2aa19677d17576606c3b4"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Feb 08 04:21:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:39 2008 -0800"
      },
      "message": "avoid overflows in kernel/time.c\n\nWhen the conversion factor between jiffies and milli- or microseconds is\nnot a single multiply or divide, as for the case of HZ \u003d\u003d 300, we currently\ndo a multiply followed by a divide.  The intervening result, however, is\nsubject to overflows, especially since the fraction is not simplified (for\nHZ \u003d\u003d 300, we multiply by 300 and divide by 1000).\n\nThis is exposed to the user when passing a large timeout to poll(), for\nexample.\n\nThis patch replaces the multiply-divide with a reciprocal multiplication on\n32-bit platforms.  When the input is an unsigned long, there is no portable\nway to do this on 64-bit platforms there is no portable way to do this\nsince it requires a 128-bit intermediate result (which gcc does support on\n64-bit platforms but may generate libgcc calls, e.g.  on 64-bit s390), but\nsince the output is a 32-bit integer in the cases affected, just simplify\nthe multiply-divide (*3/10 instead of *300/1000).\n\nThe reciprocal multiply used can have off-by-one errors in the upper half\nof the valid output range.  This could be avoided at the expense of having\nto deal with a potential 65-bit intermediate result.  Since the intent is\nto avoid overflow problems and most of the other time conversions are only\nsemiexact, the off-by-one errors were considered an acceptable tradeoff.\n\nAt Ralf Baechle\u0027s suggestion, this version uses a Perl script to compute\nthe necessary constants.  We already have dependencies on Perl for kernel\ncompiles.  This does, however, require the Perl module Math::BigInt, which\nis included in the standard Perl distribution starting with version 5.8.0.\nIn order to support older versions of Perl, include a table of canned\nconstants in the script itself, and structure the script so that\nMath::BigInt isn\u0027t required if pulling values from said table.\n\nRunning the script requires that the HZ value is available from the\nMakefile.  Thus, this patch also adds the Kconfig variable CONFIG_HZ to the\narchitectures which didn\u0027t already have it (alpha, cris, frv, h8300, m32r,\nm68k, m68knommu, sparc, v850, and xtensa.) It does *not* touch the sh or\nsh64 architectures, since Paul Mundt has dealt with those separately in the\nsh tree.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e,\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e,\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e,\nCc: Richard Henderson \u003crth@twiddle.net\u003e,\nCc: Michael Starvik \u003cstarvik@axis.com\u003e,\nCc: David Howells \u003cdhowells@redhat.com\u003e,\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e,\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e,\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e,\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e,\nCc: William L. Irwin \u003csparclinux@vger.kernel.org\u003e,\nCc: Chris Zankel \u003cchris@zankel.net\u003e,\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e,\nCc: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74bd59bb39eb08b4379e2590c5f160748d83f812",
      "tree": "2e0b8e18b0d51f9972239a0322aca313b325a8fa",
      "parents": [
        "aee16ce73c71a241190cef3aaa265f6a3ab8e035"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:18:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:23 2008 -0800"
      },
      "message": "namespaces: cleanup the code managed with PID_NS option\n\nJust like with the user namespaces, move the namespace management code into\nthe separate .c file and mark the (already existing) PID_NS option as \"depend\non NAMESPACES\"\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.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": "aee16ce73c71a241190cef3aaa265f6a3ab8e035",
      "tree": "ccfded2678d36af2d4ba9ad106240acf65173b28",
      "parents": [
        "ae5e1b22f17983da929a0d0178896269e19da186"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:18:23 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:23 2008 -0800"
      },
      "message": "namespaces: cleanup the code managed with the USER_NS option\n\nMake the user_namespace.o compilation depend on this option and move the\ninit_user_ns into user.c file to make the kernel compile and work without the\nnamespaces support.  This make the user namespace code be organized similar to\nother namespaces\u0027.\n\nAlso mask the USER_NS option as \"depend on NAMESPACES\".\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.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": "58bfdd6deeec02b73691ea2c951a3c5d743bca63",
      "tree": "8f46771858dee87080b0ed64bc176b25c239f3b1",
      "parents": [
        "c5289a69491f2b597e22d0456b46cc043deedbd8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:18:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:23 2008 -0800"
      },
      "message": "namespaces: move the UTS namespace under UTS_NS option\n\nCurrently all the namespace management code is in the kernel/utsname.c file,\nso just compile it out and make stubs in the appropriate header.\n\nThe init namespace itself is in init/version.c and is in the kernel all the\ntime.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.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": "e552b6617067ab785256dcec5ca29eeea981aacb",
      "tree": "672cccc2e21abfa4dcdc1bdb198e748894bbbbc6",
      "parents": [
        "59bd26582de660d4c9c26125747f1b4a5eb40d1e"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu Feb 07 00:13:49 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 08:42:18 2008 -0800"
      },
      "message": "Memory controller: resource counters\n\nWith fixes from David Rientjes \u003crientjes@google.com\u003e\n\nIntroduce generic structures and routines for resource accounting.\n\nEach resource accounting cgroup is supposed to aggregate it,\ncgroup_subsystem_state and its resource-specific members within.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Pavel Emelianov \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": "f011e2e2df3393c16b0fdc48e855e909b7e021ee",
      "tree": "1ad56011597c739336d7068c8182fd9cfdddad5b",
      "parents": [
        "d82b35186eaa816267f044bd70cc0acb3c7971a3"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Mon Feb 04 22:30:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "latency.c: use QoS infrastructure\n\nReplace latency.c use with pm_qos_params use.\n\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d82b35186eaa816267f044bd70cc0acb3c7971a3",
      "tree": "e8de56c122fd8040086e974895afbb8299045c0f",
      "parents": [
        "4ef7229ffa93695e346d510b871452811509ea65"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Mon Feb 04 22:30:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "pm qos infrastructure and interface\n\nThe following patch is a generalization of the latency.c implementation done\nby Arjan last year.  It provides infrastructure for more than one parameter,\nand exposes a user mode interface for processes to register pm_qos\nexpectations of processes.\n\nThis interface provides a kernel and user mode interface for registering\nperformance expectations by drivers, subsystems and user space applications on\none of the parameters.\n\nCurrently we have {cpu_dma_latency, network_latency, network_throughput} as\nthe initial set of pm_qos parameters.\n\nThe infrastructure exposes multiple misc device nodes one per implemented\nparameter.  The set of parameters implement is defined by pm_qos_power_init()\nand pm_qos_params.h.  This is done because having the available parameters\nbeing runtime configurable or changeable from a driver was seen as too easy to\nabuse.\n\nFor each parameter a list of performance requirements is maintained along with\nan aggregated target value.  The aggregated target value is updated with\nchanges to the requirement list or elements of the list.  Typically the\naggregated target value is simply the max or min of the requirement values\nheld in the parameter list elements.\n\n\u003eFrom kernel mode the use of this interface is simple:\n\npm_qos_add_requirement(param_id, name, target_value):\n\n  Will insert a named element in the list for that identified PM_QOS\n  parameter with the target value.  Upon change to this list the new target is\n  recomputed and any registered notifiers are called only if the target value\n  is now different.\n\npm_qos_update_requirement(param_id, name, new_target_value):\n\n  Will search the list identified by the param_id for the named list element\n  and then update its target value, calling the notification tree if the\n  aggregated target is changed.  with that name is already registered.\n\npm_qos_remove_requirement(param_id, name):\n\n  Will search the identified list for the named element and remove it, after\n  removal it will update the aggregate target and call the notification tree\n  if the target was changed as a result of removing the named requirement.\n\n\u003eFrom user mode:\n\n  Only processes can register a pm_qos requirement.  To provide for\n  automatic cleanup for process the interface requires the process to register\n  its parameter requirements in the following way:\n\n  To register the default pm_qos target for the specific parameter, the\n  process must open one of /dev/[cpu_dma_latency, network_latency,\n  network_throughput]\n\n  As long as the device node is held open that process has a registered\n  requirement on the parameter.  The name of the requirement is\n  \"process_\u003cPID\u003e\" derived from the current-\u003epid from within the open system\n  call.\n\n  To change the requested target value the process needs to write a s32\n  value to the open device node.  This translates to a\n  pm_qos_update_requirement call.\n\n  To remove the user mode request for a target value simply close the device\n  node.\n\n[akpm@linux-foundation.org: fix warnings]\n[akpm@linux-foundation.org: fix build]\n[akpm@linux-foundation.org: fix build again]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Adam Belay \u003cabelay@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": "dfacd68e495bb324ad6e92f4dfcf479dd447c8d3",
      "tree": "d2b75bf431e74349f4878e833dd340ac3ac0036f",
      "parents": [
        "ae9458d6a0956aa21cb49e1251e35a8d4dacbe6e"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu Jan 31 18:12:34 2008 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Feb 02 15:14:46 2008 -0800"
      },
      "message": "kobject: Always build in kernel/ksysfs.o.\n\nkernel/ksysfs.c seems to be a random dumping group for misc globals\nthat the rest of the tree depend on. This has caused problems with\nexports in the past when sysfs is disabled, which can already be\nobserved in commit-id 51107301b629640f9ab76fe23bf385e187b9ac29.\n\nThe latest one is the kernel_kobj usage, which presently results in:\n\nfs/built-in.o: In function `debugfs_init\u0027:\ninode.c:(.init.text+0xc34): undefined reference to `kernel_kobj\u0027\nmake: *** [.tmp_vmlinux1] Error 1\n\nkernel/ksysfs.c itself at this point only contains globals and some\nbasic sysfs initialization, the sysfs initialization code is optimized\nout when we build with sysfs disabled. Given that, it\u0027s easier to just\nbuild in unconditionally, rather than trying to find some other random\nplace to dump and initialize the globals.\n\nAdditionally, the current trend seems to be decoupling of kobjects from\nsysfs, in which case it still makes sense to perform the kernel_kobj\ninitialization that happens here even if sysfs is disabled, as\nlib/kobject.o is built-in unconditionally.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6dab27784b2a97823b522e1cb88e40be40a93d45",
      "tree": "75ee27b4841aad5800531e591aed141164071727",
      "parents": [
        "80b51f310b6f55006a265d087b8f48744e65663d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "message": "x86: add a simple backtrace test module\n\nDuring the work on the x86 32 and 64 bit backtrace code I found it useful\nto have a simple test module to test a process and irq context backtrace.\nSince the existing backtrace code was buggy, I figure it might be useful\nto have such a test module in the kernel so that maybe we can even\ndetect such bugs earlier..\n\n[ mingo@elte.hu: build fix ]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8c1c9356429741a82ff176d0f3400fb9e06b2a30",
      "tree": "4daa7864163b77943e3d303c32a08672f443685e",
      "parents": [
        "3334052a321aca0ffecb54244d666311f98f5487"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "message": "x86: kprobes: add kprobes smoke tests that run on boot\n\nHere is a quick and naive smoke test for kprobes. This is intended to\njust verify if some unrelated change broke the *probes subsystem. It is\nself contained, architecture agnostic and isn\u0027t of any great use by itself.\n\nThis needs to be built in the kernel and runs a basic set of tests to\nverify if kprobes, jprobes and kretprobes run fine on the kernel. In case\nof an error, it\u0027ll print out a message with a \"BUG\" prefix.\n\nThis is a start; we intend to add more tests to this bucket over time.\n\nThanks to Jim Keniston and Masami Hiramatsu for comments and suggestions.\n\nTested on x86 (32/64) and powerpc.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9745512ce79de686df354dc70a8d1a74d801892d",
      "tree": "9b64e2b2e6d2ae534beef136922082f21701c7b9",
      "parents": [
        "326587b840785c60f5dc18557235a23bafefd620"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jan 25 21:08:34 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:34 2008 +0100"
      },
      "message": "sched: latencytop support\n\nLatencyTOP kernel infrastructure; it measures latencies in the\nscheduler and tracks it system wide and per process.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e260be673a15b6125068270e0216a3bfbfc12f87",
      "tree": "f50760606d395bf6faa9e865f814761a3c88d32c",
      "parents": [
        "e0ecfa7917cafe72f4a75f87e8bb5d8d51dc534f"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "message": "Preempt-RCU: implementation\n\nThis patch implements a new version of RCU which allows its read-side\ncritical sections to be preempted. It uses a set of counter pairs\nto keep track of the read-side critical sections and flips them\nwhen all tasks exit read-side critical section. The details\nof this implementation can be found in this paper -\n\n\thttp://www.rdrop.com/users/paulmck/RCU/OLSrtRCU.2006.08.11a.pdf\n\nand the article-\n\n\thttp://lwn.net/Articles/253651/\n\nThis patch was developed as a part of the -rt kernel development and\nmeant to provide better latencies when read-side critical sections of\nRCU don\u0027t disable preemption.  As a consequence of keeping track of RCU\nreaders, the readers have a slight overhead (optimizations in the paper).\nThis implementation co-exists with the \"classic\" RCU implementations\nand can be switched to at compiler.\n\nAlso includes RCU tracing summarized in debugfs.\n\n[ akpm@linux-foundation.org: build fixes on non-preempt architectures ]\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@us.ibm.com\u003e\nReviewed-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "01c1c660f4b8086cad7a62345fd04290f3d82c8f",
      "tree": "bd09ab1fc3f9e267b1ea78f1a41b121175e1585a",
      "parents": [
        "c2d727aa2ff17a1c8e5ed1e5e231bb8579b27e82"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "message": "Preempt-RCU: reorganize RCU code into rcuclassic.c and rcupdate.c\n\nThis patch re-organizes the RCU code to enable multiple implementations\nof RCU. Users of RCU continues to include rcupdate.h and the\nRCU interfaces remain the same. This is in preparation for\nsubsequently merging the preemptible RCU implementation.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfb5285660aad4931b2ebbfa902ea48a37dfffa1",
      "tree": "6c345c4f00a139d7ccbc4efc5f2b9829aec21d24",
      "parents": [
        "45c682a68a87251d9a01383ce076ab21ee09812e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Nov 14 16:59:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:40 2007 -0800"
      },
      "message": "revert \"Task Control Groups: example CPU accounting subsystem\"\n\nRevert 62d0df64065e7c135d0002f069444fbdfc64768f.\n\nThis was originally intended as a simple initial example of how to create a\ncontrol groups subsystem; it wasn\u0027t intended for mainline, but I didn\u0027t make\nthis clear enough to Andrew.\n\nThe CFS cgroup subsystem now has better functionality for the per-cgroup usage\naccounting (based directly on CFS stats) than the \"usage\" status file in this\npatch, and the \"load\" status file is rather simplistic - although having a\nper-cgroup load average report would be a useful feature, I don\u0027t believe this\npatch actually provides it.  If it gets into the final 2.6.24 we\u0027d probably\nhave to support this interface for ever.\n\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": "74c3cbe33bc077ac1159cadfea608b501e100344",
      "tree": "4c4023caa4e15d19780255fa5880df3d36eb292c",
      "parents": [
        "455434d450a358ac5bcf3fc58f8913d13c544622"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 22 08:04:18 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Oct 21 02:37:45 2007 -0400"
      },
      "message": "[PATCH] audit: watching subtrees\n\nNew kind of audit rule predicates: \"object is visible in given subtree\".\nThe part that can be sanely implemented, that is.  Limitations:\n\t* if you have hardlink from outside of tree, you\u0027d better watch\nit too (or just watch the object itself, obviously)\n\t* if you mount something under a watched tree, tell audit\nthat new chunk should be added to watched subtrees\n\t* if you umount something in a watched tree and it\u0027s still mounted\nelsewhere, you will get matches on events happening there.  New command\ntells audit to recalculate the trees, trimming such sources of false\npositives.\n\nNote that it\u0027s _not_ about path - if something mounted in several places\n(multiple mount, bindings, different namespaces, etc.), the match does\n_not_ depend on which one we are using for access.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c1cb8e48bddd9e16ef488ea5d50885908c5a4081",
      "tree": "a4df1a782b9bfe1002dd01bbeb0020da93a7e746",
      "parents": [
        "60812a4a99b796d894d2522dc63cb0fafc3be25e"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Oct 19 18:23:25 2007 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 18:04:22 2007 -0700"
      },
      "message": "sysctl: Don\u0027t compile sysctl_check when !CONFIG_SYSCTL\n\nWeird I thought I had written the makefile so this would be handled.  Oh\nwell this should fix it.\n\nSorry about that.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-and-tested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8256e47cdc8923e9959eb1d7f95d80da538add80",
      "tree": "4702aa3ad7c9025f70314f1146e551b4e1dfcbb2",
      "parents": [
        "09cadedbdc01f1a4bea1f427d4fb4642eaa19da9"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Thu Oct 18 23:41:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:54 2007 -0700"
      },
      "message": "Linux Kernel Markers\n\nThe marker activation functions sits in kernel/marker.c.  A hash table is used\nto keep track of the registered probes and armed markers, so the markers\nwithin a newly loaded module that should be active can be activated at module\nload time.\n\nmarker_query has been removed. marker_get_first, marker_get_next and\nmarker_release should be used as iterators on the markers.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Mike Mason \u003cmmlnx@us.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": "858d72ead4864da0fb0b89b919524125ce998e27",
      "tree": "19ea321ca3b505efecb2053a829daf89a6a22529",
      "parents": [
        "846c7bb055747989891f5cd2bb6e8d56243ba1e7"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "cgroups: implement namespace tracking subsystem\n\nWhen a task enters a new namespace via a clone() or unshare(), a new cgroup\nis created and the task moves into it.\n\nThis version names cgroups which are automatically created using\ncgroup_clone() as \"node_\u003cpid\u003e\" where pid is the pid of the unsharing or\ncloned process.  (Thanks Pavel for the idea) This is safe because if the\nprocess unshares again, it will create\n\n\t/cgroups/(...)/node_\u003cpid\u003e/node_\u003cpid\u003e\n\nThe only possibilities (AFAICT) for a -EEXIST on unshare are\n\n\t1. pid wraparound\n\t2. a process fails an unshare, then tries again.\n\nCase 1 is unlikely enough that I ignore it (at least for now).  In case 2, the\nnode_\u003cpid\u003e will be empty and can be rmdir\u0027ed to make the subsequent unshare()\nsucceed.\n\nChangelog:\n\tName cloned cgroups as \"node_\u003cpid\u003e\".\n\n[clg@fr.ibm.com: fix order of cgroup subsystems in init/Kconfig]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.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": "006cb99200a38a8e3b0cbc1be48035a08921e601",
      "tree": "9bbbc71000469f94dbd4fbc04b4fb2ff8777604b",
      "parents": [
        "62d0df64065e7c135d0002f069444fbdfc64768f"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: simple task cgroup debug info subsystem\n\nThis example subsystem exports debugging information as an aid to diagnosing\nrefcount leaks, etc, in the cgroup framework.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "62d0df64065e7c135d0002f069444fbdfc64768f",
      "tree": "9087bf336182ab9c619460ba2370a223200179bc",
      "parents": [
        "8793d854edbc2774943a4b0de3304dc73991159a"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: example CPU accounting subsystem\n\nThis example demonstrates how to use the generic cgroup subsystem for a\nsimple resource tracker that counts, for the processes in a cgroup, the\ntotal CPU time used and the %CPU used in the last complete 10 second interval.\n\nPortions contributed by Balbir Singh \u003cbalbir@in.ibm.com\u003e\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "ddbcc7e8e50aefe467c01cac3dec71f118cd8ac2",
      "tree": "0881a031e669582f819d572339e955b04abfc3d2",
      "parents": [
        "55a230aae650157720becc09cadb7d10efbf5013"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: basic task cgroup framework\n\nGeneric Process Control Groups\n--------------------------\n\nThere have recently been various proposals floating around for\nresource management/accounting and other task grouping subsystems in\nthe kernel, including ResGroups, User BeanCounters, NSProxy\ncgroups, and others.  These all need the basic abstraction of being\nable to group together multiple processes in an aggregate, in order to\ntrack/limit the resources permitted to those processes, or control\nother behaviour of the processes, and all implement this grouping in\ndifferent ways.\n\nThis patchset provides a framework for tracking and grouping processes\ninto arbitrary \"cgroups\" and assigning arbitrary state to those\ngroupings, in order to control the behaviour of the cgroup as an\naggregate.\n\nThe intention is that the various resource management and\nvirtualization/cgroup efforts can also become task cgroup\nclients, with the result that:\n\n- the userspace APIs are (somewhat) normalised\n\n- it\u0027s easier to test e.g. the ResGroups CPU controller in\n conjunction with the BeanCounters memory controller, or use either of\nthem as the resource-control portion of a virtual server system.\n\n- the additional kernel footprint of any of the competing resource\n management systems is substantially reduced, since it doesn\u0027t need\n to provide process grouping/containment, hence improving their\n chances of getting into the kernel\n\nThis patch:\n\nAdd the main task cgroups framework - the cgroup filesystem, and the\nbasic structures for tracking membership and associating subsystem state\nobjects to tasks.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "fe9d4f576324999ac521c931f3b3eee0c8e45544",
      "tree": "8ff6ad770e15e81d00c87b945cb60326f28aee6b",
      "parents": [
        "3ed75eb8f1cd89565966599c4f77d2edb086d5b0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Thu Oct 18 23:39:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:34 2007 -0700"
      },
      "message": "Add kernel/notifier.c\n\nThere is separate notifier header, but no separate notifier .c file.\n\nExtract notifier code out of kernel/sys.c which will remain for\nmisc syscalls I hope. Merge kernel/die_notifier.c into kernel/notifier.c.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc6cd25b738c2369d7ed3a6ef2ca248b51fcd2d4",
      "tree": "bd3708eac72edf06097a8a2ed72c3a3fea0b0998",
      "parents": [
        "f429cd37a21b8efc825bdbb22db7f033564cbc98"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:23 2007 -0700"
      },
      "message": "sysctl: Error on bad sysctl tables\n\nAfter going through the kernels sysctl tables several times it has become\nclear that code review and testing is just not effective in prevent\nproblematic sysctl tables from being used in the stable kernel.  I certainly\ncan\u0027t seem to fix the problems as fast as they are introduced.\n\nTherefore this patch adds sysctl_check_table which is called when a sysctl\ntable is registered and checks to see if we have a problematic sysctl table.\n\nThe biggest part of the code is the table of valid binary sysctl entries, but\nsince we have frozen our set of binary sysctls this table should not need to\nchange, and it makes it much easier to detect when someone unintentionally\nadds a new binary sysctl value.\n\nAs best as I can determine all of the several hundred errors spewed on boot up\nnow are legitimate.\n\n[bunk@kernel.org: kernel/sysctl_check.c must #include \u003clinux/string.h\u003e]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acce292c82d4d82d35553b928df2b0597c3a9c78",
      "tree": "464288f40db9c254da214c400d0880ee50dc37f3",
      "parents": [
        "7d69a1f4a72b18876c99c697692b78339d491568"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Sun Jul 15 23:40:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:47 2007 -0700"
      },
      "message": "user namespace: add the framework\n\nBasically, it will allow a process to unshare its user_struct table,\nresetting at the same time its own user_struct and all the associated\naccounting.\n\nA new root user (uid \u003d\u003d 0) is added to the user namespace upon creation.\nSuch root users have full privileges and it seems that theses privileges\nshould be controlled through some means (process capabilities ?)\n\nThe unshare is not included in this patch.\n\nChanges since [try #4]:\n\t- Updated get_user_ns and put_user_ns to accept NULL, and\n\t  get_user_ns to return the namespace.\n\nChanges since [try #3]:\n\t- moved struct user_namespace to files user_namespace.{c,h}\n\nChanges since [try #2]:\n\t- removed struct user_namespace* argument from find_user()\n\nChanges since [try #1]:\n\t- removed struct user_namespace* argument from find_user()\n\t- added a root_user per user namespace\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Andrew Morgan \u003cagm@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": "7d69a1f4a72b18876c99c697692b78339d491568",
      "tree": "c09faf07f15240592919ec7e3dd722fe4f1dd370",
      "parents": [
        "522ed7767e800cff6c650ec64b0ee0677303119c"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Sun Jul 15 23:40:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:47 2007 -0700"
      },
      "message": "remove CONFIG_UTS_NS and CONFIG_IPC_NS\n\nCONFIG_UTS_NS and CONFIG_IPC_NS have very little value as they only\ndeactivate the unshare of the uts and ipc namespaces and do not improve\nperformance.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Pavel Emelianov \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": "1eeb66a1bb973534dc3d064920a5ca683823372e",
      "tree": "19c22d611e6adefb352dbc107b859e4d13ba38c1",
      "parents": [
        "e3869792990f708c97be5877499cada70d469bd3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 08 00:27:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:04 2007 -0700"
      },
      "message": "move die notifier handling to common code\n\nThis patch moves the die notifier handling to common code.  Previous\nvarious architectures had exactly the same code for it.  Note that the new\ncode is compiled unconditionally, this should be understood as an appel to\nthe other architecture maintainer to implement support for it aswell (aka\nsprinkling a notify_die or two in the proper place)\n\narm had a notifiy_die that did something totally different, I renamed it to\narm_notify_die as part of the patch and made it static to the file it\u0027s\ndeclared and used at.  avr32 used to pass slightly less information through\nthis interface and I brought it into line with the other architectures.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix vmalloc_sync_all bustage]\n[bryan.wu@analog.com: fix vmalloc_sync_all in nommu]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Bryan Wu \u003cbryan.wu@analog.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39732acd968a007036ff3c504f1e6748024ef548",
      "tree": "91d3ecdd8579559daa6b9d4b25eb688d1bb909a8",
      "parents": [
        "b04c3afb2b6e2f902b41bb62b73684d92d7e6c34"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:33:58 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:58 2007 -0800"
      },
      "message": "[PATCH] sysctl: move utsname sysctls to their own file\n\nThis is just a simple cleanup to keep kernel/sysctl.c from getting to crowded\nwith special cases, and by keeping all of the utsname logic to together it\nmakes the code a little more readable.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1526e2cda64d5a1de56aef50bad9e5df14245c2",
      "tree": "d7b490b1a11dd9720c9918733ca0c06e0e82cfba",
      "parents": [
        "d1998ef38a13c4e74c69df55ccd38b0440c429b2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 15 08:43:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 15 08:47:51 2006 -0800"
      },
      "message": "Remove stack unwinder for now\n\nIt has caused more problems than it ever really solved, and is\napparently not getting cleaned up and fixed.  We can put it back when\nit\u0027s stable and isn\u0027t likely to make warning or bug events worse.\n\nIn the meantime, enable frame pointers for more readable stack traces.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "621934ee7ed5b073c7fd638b347e632c53572761",
      "tree": "5722f9cda22c099ad60545f963410dcbc762ee65",
      "parents": [
        "95d77884c77beed676036d2f74d10b470a483c63"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@us.ibm.com",
        "time": "Wed Oct 04 02:17:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:30 2006 -0700"
      },
      "message": "[PATCH] srcu-3: RCU variant permitting read-side blocking\n\nUpdated patch adding a variant of RCU that permits sleeping in read-side\ncritical sections.  SRCU is as follows:\n\no\tEach use of SRCU creates its own srcu_struct, and each\n\tsrcu_struct has its own set of grace periods.  This is\n\tcritical, as it prevents one subsystem with a blocking\n\treader from holding up SRCU grace periods for other\n\tsubsystems.\n\no\tThe SRCU primitives (srcu_read_lock(), srcu_read_unlock(),\n\tand synchronize_srcu()) all take a pointer to a srcu_struct.\n\no\tThe SRCU primitives must be called from process context.\n\no\tsrcu_read_lock() returns an int that must be passed to\n\tthe matching srcu_read_unlock().  Realtime RCU avoids the\n\tneed for this by storing the state in the task struct,\n\tbut SRCU needs to allow a given code path to pass through\n\tmultiple SRCU domains -- storing state in the task struct\n\twould therefore require either arbitrary space in the\n\ttask struct or arbitrary limits on SRCU nesting.  So I\n\tkicked the state-storage problem up to the caller.\n\n\tOf course, it is not permitted to call synchronize_srcu()\n\twhile in an SRCU read-side critical section.\n\no\tThere is no call_srcu().  It would not be hard to implement\n\tone, but it seems like too easy a way to OOM the system.\n\t(Hey, we have enough trouble with call_rcu(), which does\n\t-not- permit readers to sleep!!!)  So, if you want it,\n\tplease tell me why...\n\n[josht@us.ibm.com: sparse notation]\nSigned-off-by: Paul E. McKenney \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Josh Triplett \u003cjosh@freedesktop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4865ecf1315b450ab3317a745a6678c04d311e40",
      "tree": "6cf5d3028f8642eba2a8094eb413db080cc9219c",
      "parents": [
        "96b644bdec977b97a45133e5b4466ba47a7a5e65"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: implement utsname namespaces\n\nThis patch defines the uts namespace and some manipulators.\nAdds the uts namespace to task_struct, and initializes a\nsystem-wide init namespace.\n\nIt leaves a #define for system_utsname so sysctl will compile.\nThis define will be removed in a separate patch.\n\n[akpm@osdl.org: build fix, cleanup]\nSigned-off-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab516013ad9ca47f1d3a936fa81303bfbf734d52",
      "tree": "643ea9c4c3d28958cb42dd87b1856f74edd22b11",
      "parents": [
        "b1ba4ddde0cf67991d89f039365eaaeda61aa027"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] namespaces: add nsproxy\n\nThis patch adds a nsproxy structure to the task struct.  Later patches will\nmove the fs namespace pointer into this structure, and introduce a new utsname\nnamespace into the nsproxy.\n\nThe vserver and openvz functionality, then, would be implemented in large part\nby virtualizing/isolating more and more resources into namespaces, each\ncontained in the nsproxy.\n\n[akpm@osdl.org: build fix]\nSigned-off-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3cef7a99469afc159fec3a61b42dc7ca5b6824f",
      "tree": "b1805a0d0b4a273b8ce0a245c17570ff18abdc5b",
      "parents": [
        "7d1bdca9b06acb3df07329eaff72d5eaf1543287"
      ],
      "author": {
        "name": "Jay Lan",
        "email": "jlan@engr.sgi.com",
        "time": "Sat Sep 30 23:28:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:29 2006 -0700"
      },
      "message": "[PATCH] csa: basic accounting over taskstats\n\nAdd some basic accounting fields to the taskstats struct, add a new\nkernel/tsacct.c to handle basic accounting data handling upon exit.  A handle\nis added to taskstats.c to invoke the basic accounting data handling.\n\nSigned-off-by: Jay Lan \u003cjlan@sgi.com\u003e\nCc: Shailabh Nagar \u003cnagar@watson.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Chris Sturtivant \u003ccsturtiv@sgi.com\u003e\nCc: Tony Ernst \u003ctee@sgi.com\u003e\nCc: Guillaume Thouvenin \u003cguillaume.thouvenin@bull.net\u003e\nCc: \"Michal Piotrowski\" \u003cmichal.k.k.piotrowski@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5c87579e65ee4f419b2369407f82326d38b5d2d8",
      "tree": "3e015ba93eb6eefb7ed4318daf95be0771d596a8",
      "parents": [
        "130c6b98984a058068ea595c465fba2beb48b9ef"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 30 23:27:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] maximum latency tracking infrastructure\n\nAdd infrastructure to track \"maximum allowable latency\" for power saving\npolicies.\n\nThe reason for adding this infrastructure is that power management in the\nidle loop needs to make a tradeoff between latency and power savings\n(deeper power save modes have a longer latency to running code again).  The\ncode that today makes this tradeoff just does a rather simple algorithm;\nhowever this is not good enough: There are devices and use cases where a\nlower latency is required than that the higher power saving states provide.\n An example would be audio playback, but another example is the ipw2100\nwireless driver that right now has a very direct and ugly acpi hook to\ndisable some higher power states randomly when it gets certain types of\nerror.\n\nThe proposed solution is to have an interface where drivers can\n\n* announce the maximum latency (in microseconds) that they can deal with\n* modify this latency\n* give up their constraint\n\nand a function where the code that decides on power saving strategy can\nquery the current global desired maximum.\n\nThis patch has a user of each side: on the consumer side, ACPI is patched\nto use this, on the producer side the ipw2100 driver is patched.\n\nA generic maximum latency is also registered of 2 timer ticks (more and you\nlose accurate time tracking after all).\n\nWhile the existing users of the patch are x86 specific, the infrastructure\nis not.  I\u0027d like to ask the arch maintainers of other architectures if the\ninfrastructure is generic enough for their use (assuming the architecture\nhas such a tradeoff as concept at all), and the sound/multimedia driver\nowners to look at the driver facing API to see if this is something they\ncan use.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jesse Barnes \u003cjesse.barnes@intel.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c757249af152c59fd74b85e52e8c090acb33d9c0",
      "tree": "78495f661fe537bf5087b24e6577659de8725b5a",
      "parents": [
        "fb0ba6bd021248b6bdc58a7b1213a55a6776a38a"
      ],
      "author": {
        "name": "Shailabh Nagar",
        "email": "nagar@watson.ibm.com",
        "time": "Fri Jul 14 00:24:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:56 2006 -0700"
      },
      "message": "[PATCH] per-task-delay-accounting: taskstats interface\n\nCreate a \"taskstats\" interface based on generic netlink (NETLINK_GENERIC\nfamily), for getting statistics of tasks and thread groups during their\nlifetime and when they exit.  The interface is intended for use by multiple\naccounting packages though it is being created in the context of delay\naccounting.\n\nThis patch creates the interface without populating the fields of the data\nthat is sent to the user in response to a command or upon the exit of a task.\nEach accounting package interested in using taskstats has to provide an\nadditional patch to add its stats to the common structure.\n\n[akpm@osdl.org: cleanups, Kconfig fix]\nSigned-off-by: Shailabh Nagar \u003cnagar@us.ibm.com\u003e\nSigned-off-by: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Peter Chubb \u003cpeterc@gelato.unsw.edu.au\u003e\nCc: Erich Focht \u003cefocht@ess.nec.de\u003e\nCc: Levent Serinol \u003clserinol@gmail.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca74e92b4698276b6696f15a801759f50944f387",
      "tree": "26f0de66d8207608e07ee22389bfc173e773c0c2",
      "parents": [
        "e8f4d97e1b58b50ad6449bb2d35e6632c0236abd"
      ],
      "author": {
        "name": "Shailabh Nagar",
        "email": "nagar@watson.ibm.com",
        "time": "Fri Jul 14 00:24:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:56 2006 -0700"
      },
      "message": "[PATCH] per-task-delay-accounting: setup\n\nInitialization code related to collection of per-task \"delay\" statistics which\nmeasure how long it had to wait for cpu, sync block io, swapping etc.  The\ncollection of statistics and the interface are in other patches.  This patch\nsets up the data structures and allows the statistics collection to be\ndisabled through a kernel boot parameter.\n\nSigned-off-by: Shailabh Nagar \u003cnagar@watson.ibm.com\u003e\nSigned-off-by: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Peter Chubb \u003cpeterc@gelato.unsw.edu.au\u003e\nCc: Erich Focht \u003cefocht@ess.nec.de\u003e\nCc: Levent Serinol \u003clserinol@gmail.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8a25d5debff2daee280e83e09d8c25d67c26a972",
      "tree": "3bccfef9acb66fc62863bfd6c16493c5e8c8e394",
      "parents": [
        "4ea2176dfa714882e88180b474e4cbcd888b70af"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:04 2006 -0700"
      },
      "message": "[PATCH] lockdep: prove spinlock rwlock locking correctness\n\nUse the lock validator framework to prove spinlock and rwlock locking\ncorrectness.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ea2176dfa714882e88180b474e4cbcd888b70af",
      "tree": "7ff3810f6b8750c226234887bb3063d91e1d71c3",
      "parents": [
        "a8f24a3978c5f82419e1c90dc90460731204f46f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:04 2006 -0700"
      },
      "message": "[PATCH] lockdep: prove rwsem locking correctness\n\nUse the lock validator framework to prove rwsem locking correctness.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8f24a3978c5f82419e1c90dc90460731204f46f",
      "tree": "431cf447835463c04f6d982bade874e8b0eee767",
      "parents": [
        "f3e97da38e1d69d24195d76f96b912323f5ee30c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:04 2006 -0700"
      },
      "message": "[PATCH] lockdep: procfs\n\nLock validator /proc/lockdep and /proc/lockdep_stats support.\n(FIXME: should go into debugfs)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fbb9ce9530fd9b66096d5187fa6a115d16d9746c",
      "tree": "1151a55e5d56045bac17b9766e6a4696cff0a26f",
      "parents": [
        "cae2ed9aa573415c6e5de9a09b7ff0d74af793bc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:03 2006 -0700"
      },
      "message": "[PATCH] lockdep: core\n\nDo \u0027make oldconfig\u0027 and accept all the defaults for new config options -\nreboot into the kernel and if everything goes well it should boot up fine and\nyou should have /proc/lockdep and /proc/lockdep_stats files.\n\nTypically if the lock validator finds some problem it will print out\nvoluminous debug output that begins with \"BUG: ...\" and which syslog output\ncan be used by kernel developers to figure out the precise locking scenario.\n\nWhat does the lock validator do?  It \"observes\" and maps all locking rules as\nthey occur dynamically (as triggered by the kernel\u0027s natural use of spinlocks,\nrwlocks, mutexes and rwsems).  Whenever the lock validator subsystem detects a\nnew locking scenario, it validates this new rule against the existing set of\nrules.  If this new rule is consistent with the existing set of rules then the\nnew rule is added transparently and the kernel continues as normal.  If the\nnew rule could create a deadlock scenario then this condition is printed out.\n\nWhen determining validity of locking, all possible \"deadlock scenarios\" are\nconsidered: assuming arbitrary number of CPUs, arbitrary irq context and task\ncontext constellations, running arbitrary combinations of all the existing\nlocking scenarios.  In a typical system this means millions of separate\nscenarios.  This is why we call it a \"locking correctness\" validator - for all\nrules that are observed the lock validator proves it with mathematical\ncertainty that a deadlock could not occur (assuming that the lock validator\nimplementation itself is correct and its internal data structures are not\ncorrupted by some other kernel subsystem).  [see more details and conditionals\nof this statement in include/linux/lockdep.h and\nDocumentation/lockdep-design.txt]\n\nFurthermore, this \"all possible scenarios\" property of the validator also\nenables the finding of complex, highly unlikely multi-CPU multi-context races\nvia single single-context rules, increasing the likelyhood of finding bugs\ndrastically.  In practical terms: the lock validator already found a bug in\nthe upstream kernel that could only occur on systems with 3 or more CPUs, and\nwhich needed 3 very unlikely code sequences to occur at once on the 3 CPUs.\nThat bug was found and reported on a single-CPU system (!).  So in essence a\nrace will be found \"piecemail-wise\", triggering all the necessary components\nfor the race, without having to reproduce the race scenario itself!  In its\nshort existence the lock validator found and reported many bugs before they\nactually caused a real deadlock.\n\nTo further increase the efficiency of the validator, the mapping is not per\n\"lock instance\", but per \"lock-class\".  For example, all struct inode objects\nin the kernel have inode-\u003einotify_mutex.  If there are 10,000 inodes cached,\nthen there are 10,000 lock objects.  But -\u003einotify_mutex is a single \"lock\ntype\", and all locking activities that occur against -\u003einotify_mutex are\n\"unified\" into this single lock-class.  The advantage of the lock-class\napproach is that all historical -\u003einotify_mutex uses are mapped into a single\n(and as narrow as possible) set of locking rules - regardless of how many\ndifferent tasks or inode structures it took to build this set of rules.  The\nset of rules persist during the lifetime of the kernel.\n\nTo see the rough magnitude of checking that the lock validator does, here\u0027s a\nportion of /proc/lockdep_stats, fresh after bootup:\n\n lock-classes:                            694 [max: 2048]\n direct dependencies:                  1598 [max: 8192]\n indirect dependencies:               17896\n all direct dependencies:             16206\n dependency chains:                    1910 [max: 8192]\n in-hardirq chains:                      17\n in-softirq chains:                     105\n in-process chains:                    1065\n stack-trace entries:                 38761 [max: 131072]\n combined max dependencies:         2033928\n hardirq-safe locks:                     24\n hardirq-unsafe locks:                  176\n softirq-safe locks:                     53\n softirq-unsafe locks:                  137\n irq-safe locks:                         59\n irq-unsafe locks:                      176\n\nThe lock validator has observed 1598 actual single-thread locking patterns,\nand has validated all possible 2033928 distinct locking scenarios.\n\nMore details about the design of the lock validator can be found in\nDocumentation/lockdep-design.txt, which can also found at:\n\n   http://redhat.com/~mingo/lockdep-patches/lockdep-design.txt\n\n[bunk@stusta.de: cleanups]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8637c09901049f061b94f684915d4f18ecf91d79",
      "tree": "83ca3ab38ab4d12f4e10176ba01ae33809388767",
      "parents": [
        "f0a5c315eb266edc608a29971bb4ff1a3025c58f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:02 2006 -0700"
      },
      "message": "[PATCH] lockdep: stacktrace subsystem, core\n\nFramework to generate and save stacktraces quickly, without printing anything\nto the console.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "61a87122869b6340a63b6f9f84097d3688604b90",
      "tree": "11d60d29763a42abd66453a920cc06bebc852427",
      "parents": [
        "e7eebaf6a81b956c989f184ee4b27277c88f8afe"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jun 27 02:54:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex tester\n\nRT-mutex tester: scriptable tester for rt mutexes, which allows userspace\nscripting of mutex unit-tests (and dynamic tests as well), using the actual\nrt-mutex implementation of the kernel.\n\n[akpm@osdl.org: fixlet]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7eebaf6a81b956c989f184ee4b27277c88f8afe",
      "tree": "25adcfb17ec5f857791557a874cc1cced390ca9f",
      "parents": [
        "a6537be9324c67b41f6d98f5a60a1bd5a8e02861"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex debug\n\nRuntime debugging functionality for rt-mutexes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23f78d4a03c53cbd75d87a795378ea540aa08c86",
      "tree": "27dfe06337990911380fe8c5949ae9acd8e9568a",
      "parents": [
        "b29739f902ee76a05493fb7d2303490fc75364f4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex core\n\nCore functions for the rt-mutex subsystem.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "81a07d7588d376c530d006e24d7981304ce96e16",
      "tree": "1608e094c88b9702c86cf2e6f65339aab9ea3f3f",
      "parents": [
        "8871e73fdbde07d0a41393f7ee30787b65387b36",
        "8501a2fbe762b21d2504ed3aca3b52be61b5e6e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:51:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:51:09 2006 -0700"
      },
      "message": "Merge branch \u0027x86-64\u0027\n\n* x86-64: (83 commits)\n  [PATCH] x86_64: x86_64 stack usage debugging\n  [PATCH] x86_64: (resend) x86_64 stack overflow debugging\n  [PATCH] x86_64: msi_apic.c build fix\n  [PATCH] x86_64: i386/x86-64 Add nmi watchdog support for new Intel CPUs\n  [PATCH] x86_64: Avoid broadcasting NMI IPIs\n  [PATCH] x86_64: fix apic error on bootup\n  [PATCH] x86_64: enlarge window for stack growth\n  [PATCH] x86_64: Minor string functions optimizations\n  [PATCH] x86_64: Move export symbols to their C functions\n  [PATCH] x86_64: Standardize i386/x86_64 handling of NMI_VECTOR\n  [PATCH] x86_64: Fix modular pc speaker\n  [PATCH] x86_64: remove sys32_ni_syscall()\n  [PATCH] x86_64: Do not use -ffunction-sections for modules\n  [PATCH] x86_64: Add cpu_relax to apic_wait_icr_idle\n  [PATCH] x86_64: adjust kstack_depth_to_print default\n  [PATCH] i386/x86-64: adjust /proc/interrupts column headings\n  [PATCH] x86_64: Fix race in cpu_local_* on preemptible kernels\n  [PATCH] x86_64: Fix fast check in safe_smp_processor_id\n  [PATCH] x86_64: x86_64 setup.c - printing cmp related boottime information\n  [PATCH] i386/x86-64/ia64: Move polling flag into thread_info_status\n  ...\n\nManual resolve of trivial conflict in arch/i386/kernel/Makefile\n"
    },
    {
      "commit": "4552d5dc08b79868829b4be8951b29b07284753f",
      "tree": "7b25695b4c0e1917fc80e8dd4bc494de36320ccc",
      "parents": [
        "2b28592b07223d7fc0691ce3fe57d495dc9cbe3a"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:28 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] x86_64: reliable stack trace support\n\nThese are the generic bits needed to enable reliable stack traces based\non Dwarf2-like (.eh_frame) unwind information. Subsequent patches will\nenable x86-64 and i386 to make use of this.\n\nThanks to Andi Kleen and Ingo Molnar, who pointed out several possibilities\nfor improvement.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ad596171ed635c51a9eef829187af100cbf8dcf7",
      "tree": "24b19bec1b1abd8bd110064226569aa42dde0b3b",
      "parents": [
        "734efb467b31e56c2f9430590a9aa867ecf3eea1"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Jun 26 00:25:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:20 2006 -0700"
      },
      "message": "[PATCH] Time: Use clocksource infrastructure for update_wall_time\n\nModify the update_wall_time function so it increments time using the\nclocksource abstraction instead of jiffies.  Since the only clocksource driver\ncurrently provided is the jiffies clocksource, this should result in no\nfunctional change.  Additionally, a timekeeping_init and timekeeping_resume\nfunction has been added to initialize and maintain some of the new timekeping\nstate.\n\n[hirofumi@mail.parknet.co.jp: fixlet]\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6f18a022fb311f07f3b32f2c0e1b5c9477dc4439",
      "tree": "5c0e66f14e02f53555bfc365098cc7e5eb85c343",
      "parents": [
        "a15bdeef108d282e540e202fc3c3e4bdf9692074"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 08 22:40:05 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 08 22:40:05 2006 +0100"
      },
      "message": "Finally remove the obnoxious inter_module_xxx()\n\nThis was already a bad plan when I argued against adding it in the first\nplace. Good riddance.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "34f192c6527f20c47ccec239e7d51a27691b93fc",
      "tree": "6c80416cf6a170a193f829e414051cc618b15ee3",
      "parents": [
        "2eec9ad91f71a3dbacece5c4fb5adc09fad53a96"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: compat\n\n32-bit syscall compatibility support.  (This patch also moves all futex\nrelated compat functionality into kernel/futex_compat.c.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b9a3917366028cc451a98dd22e3bcd537d4e5c1",
      "tree": "d911058720e0a9aeeaf9f407ccdc6fbf4047f47d",
      "parents": [
        "3661f00e2097676847deb01add1a0918044bd816",
        "71e1c784b24a026a490b3de01541fc5ee14ebc09"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:24:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:24:53 2006 -0800"
      },
      "message": "Merge branch \u0027audit.b3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: (22 commits)\n  [PATCH] fix audit_init failure path\n  [PATCH] EXPORT_SYMBOL patch for audit_log, audit_log_start, audit_log_end and audit_format\n  [PATCH] sem2mutex: audit_netlink_sem\n  [PATCH] simplify audit_free() locking\n  [PATCH] Fix audit operators\n  [PATCH] promiscuous mode\n  [PATCH] Add tty to syscall audit records\n  [PATCH] add/remove rule update\n  [PATCH] audit string fields interface + consumer\n  [PATCH] SE Linux audit events\n  [PATCH] Minor cosmetic cleanups to the code moved into auditfilter.c\n  [PATCH] Fix audit record filtering with !CONFIG_AUDITSYSCALL\n  [PATCH] Fix IA64 success/failure indication in syscall auditing.\n  [PATCH] Miscellaneous bug and warning fixes\n  [PATCH] Capture selinux subject/object context information.\n  [PATCH] Exclude messages by message type\n  [PATCH] Collect more inode information during syscall processing.\n  [PATCH] Pass dentry, not just name, in fsnotify creation hooks.\n  [PATCH] Define new range of userspace messages.\n  [PATCH] Filter rule comparators\n  ...\n\nFixed trivial conflict in security/selinux/hooks.c\n"
    },
    {
      "commit": "b86ff981a8252d83d6a7719ae09f3a05307e3592",
      "tree": "ba8839f46cb140664e6a1ff6c7361b7424a95a7f",
      "parents": [
        "b0e6e962992b76580f4900b166a337bad7c1e81b"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 19:56:55 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 19:56:55 2006 +0100"
      },
      "message": "[PATCH] relay: migrate from relayfs to a generic relay API\n\nOriginal patch from Paul Mundt, sysfs parts removed by me since they\nwere broken.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "fe7752bab26a9ac0651b695ad4f55659761f68f7",
      "tree": "b2e516a52232c978fc824b226418d8a28460b8a8",
      "parents": [
        "ee436dc46a762f430e37952d375a23d87735f73f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Dec 15 18:33:52 2005 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 20 14:08:54 2006 -0500"
      },
      "message": "[PATCH] Fix audit record filtering with !CONFIG_AUDITSYSCALL\n\nThis fixes the per-user and per-message-type filtering when syscall\nauditing isn\u0027t enabled.\n\n[AV: folded followup fix from the same author]\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fd279197b1df6b46076991ca0e1f7faa8f3d8028",
      "tree": "0e841794a25a54e9288b86dd97d9d5ced8ca112c",
      "parents": [
        "3001aa826ea6a4de12b437188c2a095991d2d142"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jan 16 22:13:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 23:15:26 2006 -0800"
      },
      "message": "[PATCH] build kernel/intermodule.c only when required\n\nBuild kernel/intermodule.c only when required.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c0a3132963db68f1fbbd0e316b73de100fee3f08",
      "tree": "cdd76aacf0ca7ae7780696a06bf9643f8b245ba1",
      "parents": [
        "97fc79f97b1111c80010d34ee66312b88f531e41"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jan 09 20:52:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:37 2006 -0800"
      },
      "message": "[PATCH] hrtimer: hrtimer core code\n\nhrtimer subsystem core.  It is initialized at bootup and expired by the timer\ninterrupt, but is otherwise not utilized by any other subsystem yet.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ae362be509306eafa6441603686d33fefe321c1",
      "tree": "d16a59e9c85945a6cc4a0945c80c0ecd97815923",
      "parents": [
        "ec9ce0dbaa734bc95ec73cf5c13f202f1adb219d"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Mon Jan 09 20:51:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:28 2006 -0800"
      },
      "message": "[PATCH] kdump: read previous kernel\u0027s memory\n\n- Moving the crash_dump.c file to arch dependent part as kmap_atomic_pfn is\n  specific to i386 and highmem may not exist in other archs.\n\n- Use ioremap for x86_64 to map the previous kernel memory.\n\n- In copy_oldmem_page(), we now directly copy to the user/kernel buffer and\n  avoid the unneccesary copy to a kmalloc\u0027d page.\n\nSigned-off-by: Rachita Kothiyal \u003crachita@in.ibm.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "408894ee4dd4debfdedd472eb4d8414892fc90f6",
      "tree": "b324c1086b804cc05c2839f9d9675eef2bc7c949",
      "parents": [
        "f3f54ffa703c6298240ffd69616451d645bae4d5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 09 15:59:20 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:20 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, debugging code\n\nmutex implementation - add debugging code.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\n"
    },
    {
      "commit": "6053ee3b32e3437e8c1e72687850f436e779bd49",
      "tree": "bb845004eb66554c569bc53a1efc87365c8a3cbe",
      "parents": [
        "2acbb8c657af86b2fa5b185f1d7048385e310585"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 09 15:59:19 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:19 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, core\n\nmutex implementation, core files: just the basic subsystem, no users of it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\n"
    }
  ],
  "next": "a241ec65aeac3d69a08a7b153cccbdb7ea35063f"
}
