)]}'
{
  "log": [
    {
      "commit": "569b846df54ffb2827b83ce3244c5f032394cba4",
      "tree": "77c5d373a5edf97710fab8777912971b99e84828",
      "parents": [
        "cd9b45b78a61e8df250e69385c74e729e5b66abf"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Dec 15 16:47:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:07 2009 -0800"
      },
      "message": "memcg: coalesce uncharge during unmap/truncate\n\nIn massive parallel enviroment, res_counter can be a performance\nbottleneck.  One strong techinque to reduce lock contention is reducing\ncalls by coalescing some amount of calls into one.\n\nConsidering charge/uncharge chatacteristic,\n\t- charge is done one by one via demand-paging.\n\t- uncharge is done by\n\t\t- in chunk at munmap, truncate, exit, execve...\n\t\t- one by one via vmscan/paging.\n\nIt seems we have a chance to coalesce uncharges for improving scalability\nat unmap/truncation.\n\nThis patch is a for coalescing uncharge.  For avoiding scattering memcg\u0027s\nstructure to functions under /mm, this patch adds memcg batch uncharge\ninformation to the task.  A reason for per-task batching is for making use\nof caller\u0027s context information.  We do batched uncharge (deleyed\nuncharge) when truncation/unmap occurs but do direct uncharge when\nuncharge is called by memory reclaim (vmscan.c).\n\nThe degree of coalescing depends on callers\n  - at invalidate/trucate... pagevec size\n  - at unmap ....ZAP_BLOCK_SIZE\n(memory itself will be freed in this degree.)\nThen, we\u0027ll not coalescing too much.\n\nOn x86-64 8cpu server, I tested overheads of memcg at page fault by\nrunning a program which does map/fault/unmap in a loop. Running\na task per a cpu by taskset and see sum of the number of page faults\nin 60secs.\n\n[without memcg config]\n  40156968  page-faults              #      0.085 M/sec   ( +-   0.046% )\n  27.67 cache-miss/faults\n[root cgroup]\n  36659599  page-faults              #      0.077 M/sec   ( +-   0.247% )\n  31.58 miss/faults\n[in a child cgroup]\n  18444157  page-faults              #      0.039 M/sec   ( +-   0.133% )\n  69.96 miss/faults\n[child with this patch]\n  27133719  page-faults              #      0.057 M/sec   ( +-   0.155% )\n  47.16 miss/faults\n\nWe can see some amounts of improvement.\n(root cgroup doesn\u0027t affected by this patch)\nAnother patch for \"charge\" will follow this and above will be improved more.\n\nChangelog(since 2009/10/02):\n - renamed filed of memcg_batch (as pages to bytes, memsw to memsw_bytes)\n - some clean up and commentary/description updates.\n - added initialize code to copy_process(). (possible bug fix)\n\nChangelog(old):\n - fixed !CONFIG_MEM_CGROUP case.\n - rebased onto the latest mmotm + softlimit fix patches.\n - unified patch for callers\n - added commetns.\n - make -\u003edo_batch as bool.\n - removed css_get() at el. We don\u0027t need it.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28dfef8febe48f59cf1e7596e1992a6a1893ca24",
      "tree": "eb2df6dd75e72db066062950f91c9ab2e8215280",
      "parents": [
        "5116fa2b3a0a3ec625a10445ae45667f094c125b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Dec 15 16:46:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:05 2009 -0800"
      },
      "message": "const: constify remaining pipe_buf_operations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f065f41f48569122b5bcddbd1ba2354f7cc29fdc",
      "tree": "68606305bfb3aba16437017e0596ccae11e6f6db",
      "parents": [
        "4365a5676fa3aa1d5ae6c90c22a0044f09ba584e"
      ],
      "author": {
        "name": "Barry Song",
        "email": "21cnbao@gmail.com",
        "time": "Tue Dec 15 16:45:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:19:57 2009 -0800"
      },
      "message": "timecompare: fix half-Y2K38 problem in timecompare_update while calculating offset\n\nktime will overflow from 03:14:07 UTC on Tuesday, 19 January 2038,\nktime_add() in timecompare_update() will overflow a half earlier.  As a\nresult, wrong offset will be gotten, then cause some strange problems.\n\nSigned-off-by: Barry Song \u003c21cnbao@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Patrick Ohly \u003cpatrick.ohly@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: John Stultz \u003cjohnstul@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": "8f0ddf91f2aeb09602373e400cf8b403e9017210",
      "tree": "b907c35c79caadafff6ad46a91614e30afd2f967",
      "parents": [
        "050cbb09dac0402672edeaeac06094ef8ff1749a",
        "b5f91da0a6973bb6f9ff3b91b0e92c0773a458f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 09:02:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 09:02:01 2009 -0800"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (26 commits)\n  clockevents: Convert to raw_spinlock\n  clockevents: Make tick_device_lock static\n  debugobjects: Convert to raw_spinlocks\n  perf_event: Convert to raw_spinlock\n  hrtimers: Convert to raw_spinlocks\n  genirq: Convert irq_desc.lock to raw_spinlock\n  smp: Convert smplocks to raw_spinlocks\n  rtmutes: Convert rtmutex.lock to raw_spinlock\n  sched: Convert pi_lock to raw_spinlock\n  sched: Convert cpupri lock to raw_spinlock\n  sched: Convert rt_runtime_lock to raw_spinlock\n  sched: Convert rq-\u003elock to raw_spinlock\n  plist: Make plist debugging raw_spinlock aware\n  bkl: Fixup core_lock fallout\n  locking: Cleanup the name space completely\n  locking: Further name space cleanups\n  alpha: Fix fallout from locking changes\n  locking: Implement new raw_spinlock\n  locking: Convert raw_rwlock functions to arch_rwlock\n  locking: Convert raw_rwlock to arch_rwlock\n  ...\n"
    },
    {
      "commit": "e7d2860b690d4f3bed6824757c540579638e3d1e",
      "tree": "84268ee28893256fd6a6a7e1d4474f61dbee74e7",
      "parents": [
        "84c95c9acf088c99d8793d78036b67faa5d0b851"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Mon Dec 14 18:01:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:32 2009 -0800"
      },
      "message": "tree-wide: convert open calls to remove spaces to skip_spaces() lib function\n\nMakes use of skip_spaces() defined in lib/string.c for removing leading\nspaces from strings all over the tree.\n\nIt decreases lib.a code size by 47 bytes and reuses the function tree-wide:\n   text    data     bss     dec     hex filename\n  64688     584     592   65864   10148 (TOTALS-BEFORE)\n  64641     584     592   65817   10119 (TOTALS-AFTER)\n\nAlso, while at it, if we see (*str \u0026\u0026 isspace(*str)), we can be sure to\nremove the first condition (*str) as the second one (isspace(*str)) also\nevaluates to 0 whenever *str \u003d\u003d 0, making it redundant. In other words,\n\"a char equals zero is never a space\".\n\nJulia Lawall tried the semantic patch (http://coccinelle.lip6.fr) below,\nand found occurrences of this pattern on 3 more files:\n    drivers/leds/led-class.c\n    drivers/leds/ledtrig-timer.c\n    drivers/video/output.c\n\n@@\nexpression str;\n@@\n\n( // ignore skip_spaces cases\nwhile (*str \u0026\u0026  isspace(*str)) { \\(str++;\\|++str;\\) }\n|\n- *str \u0026\u0026\nisspace(*str)\n)\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ada918b82399eef3afd6a71e3637697d6bd719f",
      "tree": "9bff5251d9d21960726078c2117a0ab19ca25956",
      "parents": [
        "c95d1e53ed89b75a4d7b68d1cbae4607b1479243"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bernhard@bwalle.de",
        "time": "Mon Dec 14 18:00:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:28 2009 -0800"
      },
      "message": "vt: introduce and use vt_kmsg_redirect() function\n\nThe kernel offers with TIOCL_GETKMSGREDIRECT ioctl() the possibility to\nredirect the kernel messages to a specific console.\n\nHowever, since it\u0027s not possible to switch to the kernel message console\nafter a panic(), it would be nice if the kernel would print the panic\nmessage on the current console.\n\nThis patch series adds a new interface to access the global kmsg_redirect\nvariable by a function to be able to use it in code where\nCONFIG_VT_CONSOLE is not set (kernel/panic.c).\n\nThis patch:\n\nInstead of using and exporting a global value kmsg_redirect, introduce a\nfunction vt_kmsg_redirect() that both can set and return the console where\nmessages are printed.\n\nChange all users of kmsg_redirect (the VT code itself and kernel/power.c)\nto the new interface.\n\nThe main advantage is that vt_kmsg_redirect() can also be used when\nCONFIG_VT_CONSOLE is not set.\n\nSigned-off-by: Bernhard Walle \u003cbernhard@bwalle.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\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": "dfc6a736d452a8c308190b618b065c2257d370ff",
      "tree": "129800fa31f88a5f6d520a2c0d0a64273488a3fa",
      "parents": [
        "948c1e2521979c332b21b623414cf258150f214e"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Mon Dec 14 18:00:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:26 2009 -0800"
      },
      "message": "kernel/sys.c: fix \"warning: do-while statement is not a compound statement\" noise\n\ndo_each_thread/while_each_thread wrap a block of code that is in this format:\n\n\tfor (...)\n\t\tdo\n\t\t\t...\n\t\twhile\n\nIf curly braces do not surround the inner loop the following warning is\ngenerated by sparse:\n\n\twarning: do-while statement is not a compound statement\n\nFix the warning by adding the braces.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0f68c2fab4898bcc4671a8fb941f428856b4ad5",
      "tree": "87cc5addf461b699b3b9c9d1931f77acf947051d",
      "parents": [
        "4eb174bee6f8623fed1af0072f1bebfc3b513a52"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Dec 14 18:00:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:25 2009 -0800"
      },
      "message": "generic-ipi: cleanup for generic_smp_call_function_interrupt()\n\nUse smp_processor_id() instead of get_cpu() and put_cpu() in\ngeneric_smp_call_function_interrupt(), It\u0027s no need to disable preempt,\nbecause we must call generic_smp_call_function_interrupt() with interrupts\ndisabled.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70da2340fbc68e91e701762f785479ab495a0869",
      "tree": "f55055a8fa8cb8e00b72ae8f3629dc884515f5e9",
      "parents": [
        "f096e59e844ba3c5d5a7b54b3deafd2aeeebf921"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Dec 14 17:59:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:23 2009 -0800"
      },
      "message": "\u0027sysctl_max_map_count\u0027 should be non-negative\n\nJan Engelhardt reported we have this problem:\n\nsetting max_map_count to a value large enough results in programs dying at\nfirst try.  This is on 2.6.31.6:\n\n15:59 borg:/proc/sys/vm # echo $[1\u003c\u003c31-1] \u003emax_map_count\n15:59 borg:/proc/sys/vm # cat max_map_count\n1073741824\n15:59 borg:/proc/sys/vm # echo $[1\u003c\u003c31] \u003emax_map_count\n15:59 borg:/proc/sys/vm # cat max_map_count\nKilled\n\nThis is because we have a chance to make \u0027max_map_count\u0027 negative.  but\nit\u0027s meaningless.  Make it only accept non-negative values.\n\nReported-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06808b0827e1cd14eedc96bac2655d5b37ac246c",
      "tree": "8f7b52a4af1532ed414631f68b99a059e299d83f",
      "parents": [
        "c1e6c8d074ea3621106548654cc244d2edc12ead"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Dec 14 17:58:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:12 2009 -0800"
      },
      "message": "hugetlb: derive huge pages nodes allowed from task mempolicy\n\nThis patch derives a \"nodes_allowed\" node mask from the numa mempolicy of\nthe task modifying the number of persistent huge pages to control the\nallocation, freeing and adjusting of surplus huge pages when the pool page\ncount is modified via the new sysctl or sysfs attribute\n\"nr_hugepages_mempolicy\".  The nodes_allowed mask is derived as follows:\n\n* For \"default\" [NULL] task mempolicy, a NULL nodemask_t pointer\n  is produced.  This will cause the hugetlb subsystem to use\n  node_online_map as the \"nodes_allowed\".  This preserves the\n  behavior before this patch.\n* For \"preferred\" mempolicy, including explicit local allocation,\n  a nodemask with the single preferred node will be produced.\n  \"local\" policy will NOT track any internode migrations of the\n  task adjusting nr_hugepages.\n* For \"bind\" and \"interleave\" policy, the mempolicy\u0027s nodemask\n  will be used.\n* Other than to inform the construction of the nodes_allowed node\n  mask, the actual mempolicy mode is ignored.  That is, all modes\n  behave like interleave over the resulting nodes_allowed mask\n  with no \"fallback\".\n\nSee the updated documentation [next patch] for more information\nabout the implications of this patch.\n\nExamples:\n\nStarting with:\n\n\tNode 0 HugePages_Total:     0\n\tNode 1 HugePages_Total:     0\n\tNode 2 HugePages_Total:     0\n\tNode 3 HugePages_Total:     0\n\nDefault behavior [with or without this patch] balances persistent\nhugepage allocation across nodes [with sufficient contiguous memory]:\n\n\tsysctl vm.nr_hugepages[_mempolicy]\u003d32\n\nyields:\n\n\tNode 0 HugePages_Total:     8\n\tNode 1 HugePages_Total:     8\n\tNode 2 HugePages_Total:     8\n\tNode 3 HugePages_Total:     8\n\nOf course, we only have nr_hugepages_mempolicy with the patch,\nbut with default mempolicy, nr_hugepages_mempolicy behaves the\nsame as nr_hugepages.\n\nApplying mempolicy--e.g., with numactl [using \u0027-m\u0027 a.k.a.\n\u0027--membind\u0027 because it allows multiple nodes to be specified\nand it\u0027s easy to type]--we can allocate huge pages on\nindividual nodes or sets of nodes.  So, starting from the\ncondition above, with 8 huge pages per node, add 8 more to\nnode 2 using:\n\n\tnumactl -m 2 sysctl vm.nr_hugepages_mempolicy\u003d40\n\nThis yields:\n\n\tNode 0 HugePages_Total:     8\n\tNode 1 HugePages_Total:     8\n\tNode 2 HugePages_Total:    16\n\tNode 3 HugePages_Total:     8\n\nThe incremental 8 huge pages were restricted to node 2 by the\nspecified mempolicy.\n\nSimilarly, we can use mempolicy to free persistent huge pages\nfrom specified nodes:\n\n\tnumactl -m 0,1 sysctl vm.nr_hugepages_mempolicy\u003d32\n\nyields:\n\n\tNode 0 HugePages_Total:     4\n\tNode 1 HugePages_Total:     4\n\tNode 2 HugePages_Total:    16\n\tNode 3 HugePages_Total:     8\n\nThe 8 huge pages freed were balanced over nodes 0 and 1.\n\n[rientjes@google.com: accomodate reworked NODEMASK_ALLOC]\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b731d50ff3df6b9141a6c12b088e8eb0109e83c",
      "tree": "4c0c5c744383a4f426be6b9a8fb73528379eabdd",
      "parents": [
        "5443040754207f9777f71c892c66e45ba56b0fc1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Dec 14 17:57:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:10 2009 -0800"
      },
      "message": "bsdacct: fix uid/gid misreporting\n\ncommit d8e180dcd5bbbab9cd3ff2e779efcf70692ef541 \"bsdacct: switch\ncredentials for writing to the accounting file\" introduced credential\nswitching during final acct data collecting.  However, uid/gid pair\ncontinued to be collected from current which became credentials of who\ncreated acct file, not who exits.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d14676\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nReported-by: Juho K. Juopperi \u003cjkj@kapsi.fi\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5f91da0a6973bb6f9ff3b91b0e92c0773a458f3",
      "tree": "911ad0eeb484ce9309504fcf5a031403ad47ce84",
      "parents": [
        "d192c47f25daa98996c7eae543d8a27e41247ec2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 12:40:31 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "clockevents: Convert to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d192c47f25daa98996c7eae543d8a27e41247ec2",
      "tree": "7ad7970ffbf0fa25bab4fc9eb20f6a6fdbb30bb1",
      "parents": [
        "aef9cb05247df3d7615773737beb4f83d78577bb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 12:49:26 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "clockevents: Make tick_device_lock static\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e625cce1b73fb38b74e5387226534f7bcbfc36fe",
      "tree": "cfdecc4326845d0601d1447aad334e78d92d3316",
      "parents": [
        "ecb49d1a639acbacfc3771cae5ec07bed5df3847"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 18:02:06 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "perf_event: Convert to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ecb49d1a639acbacfc3771cae5ec07bed5df3847",
      "tree": "19c8fa91d1f9b1c965cd60653e16d1eb60cd9d3a",
      "parents": [
        "239007b8440abff689632f50cdf0f2b9e895b534"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 16:36:54 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "hrtimers: Convert to raw_spinlocks\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "239007b8440abff689632f50cdf0f2b9e895b534",
      "tree": "569cab843af4a999d6d868ec9a824530d2bfa733",
      "parents": [
        "9f5a5621e78cf48d86682a71ceb3fcdbde38b222"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 16:46:45 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "genirq: Convert irq_desc.lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9f5a5621e78cf48d86682a71ceb3fcdbde38b222",
      "tree": "615076c3d592ebd293dcd4c8babfa91ce88d049b",
      "parents": [
        "d209d74d52ab39dc071656533cac095294f70de7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 15:40:01 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "smp: Convert smplocks to raw_spinlocks\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d209d74d52ab39dc071656533cac095294f70de7",
      "tree": "f48ae39908db89df7d93df79ac713318e026f0f7",
      "parents": [
        "1d615482547584b9a8bb6316a58fed6ce90dd9ff"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 18:22:11 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "rtmutes: Convert rtmutex.lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1d615482547584b9a8bb6316a58fed6ce90dd9ff",
      "tree": "21dae4b70acb3ce0bdaeeaee1dbd970be41d26e2",
      "parents": [
        "fe841226bd954fba4fd79f037a876053fe9c3217"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:54:03 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert pi_lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe841226bd954fba4fd79f037a876053fe9c3217",
      "tree": "0819ff8a78b9eeed61a1dc26b5aa900f48d0c2e3",
      "parents": [
        "0986b11b12ad2baed338385f79fd0dec58a23fc6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 17:59:15 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert cpupri lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0986b11b12ad2baed338385f79fd0dec58a23fc6",
      "tree": "36bdf3985704f87f0c278a35e53470f6248419e2",
      "parents": [
        "05fa785cf80c9b7c0254c3056037147aed3ea16b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 15:32:06 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert rt_runtime_lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "05fa785cf80c9b7c0254c3056037147aed3ea16b",
      "tree": "3d5c69d449b9240dc6d1005dddf344e467de4f34",
      "parents": [
        "a26724591edba5acc528d41f3906a972590e8f54"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:28:38 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert rq-\u003elock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "a26724591edba5acc528d41f3906a972590e8f54",
      "tree": "4e7a1c7c7e4b19b428222da9232aa7322439e243",
      "parents": [
        "fa4062e7eae8f484c90b9cdd850b5df39ab0e5a0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:46:14 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "plist: Make plist debugging raw_spinlock aware\n\nplists are used with spinlocks and raw_spinlocks. Change the plist\ndebugging to handle both types.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c1721aa4994f6625decbd915241f3a94ee2fe67",
      "tree": "bc1c2d623ac5d0db82df18163f6ab029e057c558",
      "parents": [
        "9828ea9d75c38fe3dce05d00566eed61c85732e6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 21:52:18 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "locking: Cleanup the name space completely\n\nMake the name space hierarchy of locking functions consistent:\n     raw_spin* -\u003e _raw_spin* -\u003e __raw_spin*\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "9828ea9d75c38fe3dce05d00566eed61c85732e6",
      "tree": "6cee5c8ffb07cdf45cc12d58f74a3053ffefcb5f",
      "parents": [
        "5f6384c5fb6bfc9aac506e058974d3ba293951b3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 20:55:53 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "locking: Further name space cleanups\n\nThe name space hierarchy for the internal lock functions is now a bit\nbackwards. raw_spin* functions map to _spin* which use __spin*, while\nwe would like to have _raw_spin* and __raw_spin*.\n\n_raw_spin* is already used by lock debugging, so rename those funtions\nto do_raw_spin* to free up the _raw_spin* name space.\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2f21ce2e31286a0a32f8da0a7856e9ca1122ef3",
      "tree": "6cc8d1fd37ffa6d02481353857b92734241f4dd0",
      "parents": [
        "e5931943d02bf751b1ec849c0d2ade23d76a8d41"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:02:59 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Implement new raw_spinlock\n\nNow that the raw_spin name space is freed up, we can implement\nraw_spinlock and the related functions which are used to annotate the\nlocks which are not converted to sleeping spinlocks in preempt-rt.\n\nA side effect is that only such locks can be used with the low level\nlock fsunctions which circumvent lockdep.\n\nFor !rt spin_* functions are mapped to the raw_spin* implementations.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "0199c4e68d1f02894bdefe4b5d9e9ee4aedd8d62",
      "tree": "e371d17bd73d64332349debbf45962ec67e7269d",
      "parents": [
        "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:01:25 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert __raw_spin* functions to arch_spin*\n\nName space cleanup. No functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26",
      "tree": "a4fac9d24d243d3296fc36a2371db2a56d363e1a",
      "parents": [
        "445c89514be242b1b0080056d50bdc1b72adeb5c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 12:38:57 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Rename __RAW_SPIN_LOCK_UNLOCKED to __ARCH_SPIN_LOCK_UNLOCKED\n\nFurther name space cleanup. No functional change\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "445c89514be242b1b0080056d50bdc1b72adeb5c",
      "tree": "96ed062794ad0fb6a649713c83f009eea382e8b2",
      "parents": [
        "6b6b4792f89346e47437682c7ba3438e6681c0f9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 19:49:50 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert raw_spinlock to arch_spinlock\n\nThe raw_spin* namespace was taken by lockdep for the architecture\nspecific implementations. raw_spin_* would be the ideal name space for\nthe spinlocks which are not converted to sleeping locks in preempt-rt.\n\nLinus suggested to convert the raw_ to arch_ locks and cleanup the\nname space instead of using an artifical name like core_spin,\natomic_spin or whatever\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n\n"
    },
    {
      "commit": "b7b40ade58e621851896aa261452df99d4e9d99b",
      "tree": "6ff6d2adea28376b86875cd070fbea6d4473d029",
      "parents": [
        "3ea6b3d0e6d0ffd91c0f8cadeb69b7133c038b32"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Nov 09 21:01:59 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Reorder functions in spinlock.c\n\nSeparate spin_lock and rw_lock functions. Preempt-RT needs to exclude\nthe rw_lock functions from being compiled. The reordering allows to do\nthat with a single #ifdef.\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d0316554d3586cbea60592a41391b5def2553d6f",
      "tree": "5e7418f0bacbc68cec5dfd1541e03eb56870aa02",
      "parents": [
        "fb0bbb92d42d5bd0ab224605444efdfed06d6934",
        "51e99be00ce2713cbb841cedc997cafa6e26c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)\n  m68k: rename global variable vmalloc_end to m68k_vmalloc_end\n  percpu: add missing per_cpu_ptr_to_phys() definition for UP\n  percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n  percpu: make misc percpu symbols unique\n  percpu: make percpu symbols in ia64 unique\n  percpu: make percpu symbols in powerpc unique\n  percpu: make percpu symbols in x86 unique\n  percpu: make percpu symbols in xen unique\n  percpu: make percpu symbols in cpufreq unique\n  percpu: make percpu symbols in oprofile unique\n  percpu: make percpu symbols in tracer unique\n  percpu: make percpu symbols under kernel/ and mm/ unique\n  percpu: remove some sparse warnings\n  percpu: make alloc_percpu() handle array types\n  vmalloc: fix use of non-existent percpu variable in put_cpu_var()\n  this_cpu: Use this_cpu_xx in trace_functions_graph.c\n  this_cpu: Use this_cpu_xx for ftrace\n  this_cpu: Use this_cpu_xx in nmi handling\n  this_cpu: Use this_cpu operations in RCU\n  this_cpu: Use this_cpu ops for VM statistics\n  ...\n\nFix up trivial (famous last words) global per-cpu naming conflicts in\n\tarch/x86/kvm/svm.c\n\tmm/slab.c\n"
    },
    {
      "commit": "702a7c7609bec3a940b6a46b0d6ab9ce45274580",
      "tree": "6c169691449259410b9b51a146acb0e837dae96a",
      "parents": [
        "053fe57ac249a9531c396175778160d9e9509399",
        "b9889ed1ddeca5a3f3569c8de7354e9e97d803ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 12 11:34:10 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 12 11:34:10 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (21 commits)\n  sched: Remove forced2_migrations stats\n  sched: Fix memory leak in two error corner cases\n  sched: Fix build warning in get_update_sysctl_factor()\n  sched: Update normalized values on user updates via proc\n  sched: Make tunable scaling style configurable\n  sched: Fix missing sched tunable recalculation on cpu add/remove\n  sched: Fix task priority bug\n  sched: cgroup: Implement different treatment for idle shares\n  sched: Remove unnecessary RCU exclusion\n  sched: Discard some old bits\n  sched: Clean up check_preempt_wakeup()\n  sched: Move update_curr() in check_preempt_wakeup() to avoid redundant call\n  sched: Sanitize fork() handling\n  sched: Clean up ttwu() rq locking\n  sched: Remove rq-\u003eclock coupling from set_task_cpu()\n  sched: Consolidate select_task_rq() callers\n  sched: Remove sysctl.sched_features\n  sched: Protect sched_rr_get_param() access to task-\u003esched_class\n  sched: Protect task-\u003ecpus_allowed access in sched_getaffinity()\n  sched: Fix balance vs hotplug race\n  ...\n\nFixed up conflicts in kernel/sysctl.c (due to sysctl cleanup)\n"
    },
    {
      "commit": "3070f27d6ecb69364e7cffe16c8b15e1b8ef41dd",
      "tree": "6a624eb764265b67b2765b978c749fbe08871886",
      "parents": [
        "1e57c2186fc204ecd5e47f279d00eba3c3db245c",
        "e9c0748b687aa70179a9e6d8ffc24b2874fe350b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:49:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:49:09 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  itimer: Fix the itimer trace print format\n  hrtimer: move timer stats helper functions to hrtimer.c\n  hrtimer: Tune hrtimer_interrupt hang logic\n"
    },
    {
      "commit": "1e57c2186fc204ecd5e47f279d00eba3c3db245c",
      "tree": "aad97e94afe668b2fe734ef28536627ec00860d8",
      "parents": [
        "756300983f11a1c6f9457d6d8f57354e0f0fe8d4",
        "ea5b41f9d595be354f7a50e56b28c2d72e6e88a5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:48:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:48:21 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: Avoid out of bounds array reference in save_trace()\n  futex: Take mmap_sem for get_user_pages in fault_in_user_writeable\n  lockstat: Add usage info to Documentation/lockstat.txt\n  lockstat: Fix min, max times in /proc/lock_stats\n"
    },
    {
      "commit": "df7147b3c37cb203f968119f3b6a1cd648c535a1",
      "tree": "f5e0026cc8b1f711beef03338b087ff66cae92c4",
      "parents": [
        "6f696eb17be741668810fe1f798135c7cf6733e2",
        "788d70dce0184eccc249ac6f05aa38b385b7497c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n  tracing: Fix function graph trace_pipe to properly display failed entries\n  tracing: Add full state to trace_seq\n  tracing: Buffer the output of seq_file in case of filled buffer\n  tracing: Only call pipe_close if pipe_close is defined\n  tracing: Add pipe_close interface\n"
    },
    {
      "commit": "6f696eb17be741668810fe1f798135c7cf6733e2",
      "tree": "f9bcfe5831dfcaaad50ca68d7f04d80d8236fa56",
      "parents": [
        "c4e194e3b71ff4fed01d727c32ee1071921d28a3",
        "125580380f418000b1a06d9a54700f1191b6e561"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (57 commits)\n  x86, perf events: Check if we have APIC enabled\n  perf_event: Fix variable initialization in other codepaths\n  perf kmem: Fix unused argument build warning\n  perf symbols: perf_header__read_build_ids() offset\u0027n\u0027size should be u64\n  perf symbols: dsos__read_build_ids() should read both user and kernel buildids\n  perf tools: Align long options which have no short forms\n  perf kmem: Show usage if no option is specified\n  sched: Mark sched_clock() as notrace\n  perf sched: Add max delay time snapshot\n  perf tools: Correct size given to memset\n  perf_event: Fix perf_swevent_hrtimer() variable initialization\n  perf sched: Fix for getting task\u0027s execution time\n  tracing/kprobes: Fix field creation\u0027s bad error handling\n  perf_event: Cleanup for cpu_clock_perf_event_update()\n  perf_event: Allocate children\u0027s perf_event_ctxp at the right time\n  perf_event: Clean up __perf_event_init_context()\n  hw-breakpoints: Modify breakpoints without unregistering them\n  perf probe: Update perf-probe document\n  perf probe: Support --del option\n  trace-kprobe: Support delete probe syntax\n  ...\n"
    },
    {
      "commit": "0f4974c439dd7826c85bae4e6a8088ce2db0f498",
      "tree": "fdabc7d9bb7d7bc49aad547c0aac3a633ce01f09",
      "parents": [
        "3126c136bc30225d7a43af741778aa50e95e467a",
        "36ba782e9674cdc29ec7003757df0b375e99fa96"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 15:34:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 15:34:40 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (58 commits)\n  tty: split the lock up a bit further\n  tty: Move the leader test in disassociate\n  tty: Push the bkl down a bit in the hangup code\n  tty: Push the lock down further into the ldisc code\n  tty: push the BKL down into the handlers a bit\n  tty: moxa: split open lock\n  tty: moxa: Kill the use of lock_kernel\n  tty: moxa: Fix modem op locking\n  tty: moxa: Kill off the throttle method\n  tty: moxa: Locking clean up\n  tty: moxa: rework the locking a bit\n  tty: moxa: Use more tty_port ops\n  tty: isicom: fix deadlock on shutdown\n  tty: mxser: Use the new locking rules to fix setserial properly\n  tty: mxser: use the tty_port_open method\n  tty: isicom: sort out the board init logic\n  tty: isicom: switch to the new tty_port_open helper\n  tty: tty_port: Add a kref object to the tty port\n  tty: istallion: tty port open/close methods\n  tty: stallion: Convert to the tty_port_open/close methods\n  ...\n"
    },
    {
      "commit": "880188b2433c3af51fa006207d9b13c70d2e5938",
      "tree": "77376c0270e4e36f73a80856de798c6a89eeb96c",
      "parents": [
        "9764757932ce26f139332f89d1d3b815e4cc56ab",
        "7f8b7ed6f825c729332b8190aca55c6bf95b158e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 15:19:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 15:19:56 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdb: Always process the whole breakpoint list on activate or deactivate\n  kgdb: continue and warn on signal passing from gdb\n  kgdb,x86: do not set kgdb_single_step on x86\n  kgdb: allow for cpu switch when single stepping\n  kgdb,i386: Fix corner case access to ss with NMI watch dog exception\n  kgdb: Replace strstr() by strchr() for single-character needles\n  kgdbts: Read buffer overflow\n  kgdb: Read buffer overflow\n  kgdb,x86: remove redundant test\n"
    },
    {
      "commit": "5ec93d1154fd1e269162398f8e70efc7e004485d",
      "tree": "2a76835812d3502b036a7234faeaa0f6ba0356da",
      "parents": [
        "38c70b27f9502c31c1d0c29676275f7362cdb0d9"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Mon Nov 30 13:18:45 2009 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 15:18:08 2009 -0800"
      },
      "message": "tty: Move the leader test in disassociate\n\nThere are two call points, both want to check that tty-\u003esignal-\u003eleader is\nset. Move the test into disassociate_ctty() as that will make locking\nchanges easier in a bit\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "11bd04f6f35621193311c32e0721142b073a7794",
      "tree": "00979740582bb26e8d3756bf3526c85f19f66a46",
      "parents": [
        "4e2ccdb0409146f8cf64a11b6ef82a9c928ced2a",
        "9e0b5b2c447ad0caa075a5cfef86def62e1782ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 12:18:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 12:18:16 2009 -0800"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (109 commits)\n  PCI: fix coding style issue in pci_save_state()\n  PCI: add pci_request_acs\n  PCI: fix BUG_ON triggered by logical PCIe root port removal\n  PCI: remove ifdefed pci_cleanup_aer_correct_error_status\n  PCI: unconditionally clear AER uncorr status register during cleanup\n  x86/PCI: claim SR-IOV BARs in pcibios_allocate_resource\n  PCI: portdrv: remove redundant definitions\n  PCI: portdrv: remove unnecessary struct pcie_port_data\n  PCI: portdrv: minor cleanup for pcie_port_device_register\n  PCI: portdrv: add missing irq cleanup\n  PCI: portdrv: enable device before irq initialization\n  PCI: portdrv: cleanup service irqs initialization\n  PCI: portdrv: check capabilities first\n  PCI: portdrv: move PME capability check\n  PCI: portdrv: remove redundant pcie type calculation\n  PCI: portdrv: cleanup pcie_device registration\n  PCI: portdrv: remove redundant pcie_port_device_probe\n  PCI: Always set prefetchable base/limit upper32 registers\n  PCI: read-modify-write the pcie device control register when initiating pcie flr\n  PCI: show dma_mask bits in /sys\n  ...\n\nFixed up conflicts in:\n\tarch/x86/kernel/amd_iommu_init.c\n\tdrivers/pci/dmar.c\n\tdrivers/pci/hotplug/acpiphp_glue.c\n"
    },
    {
      "commit": "7f8b7ed6f825c729332b8190aca55c6bf95b158e",
      "tree": "29496e5c24361945a38a240263c04d9ba5b3bd2b",
      "parents": [
        "d625e9c0d706eb43afbf52634d5cecacae1d57cc"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:20 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:20 2009 -0600"
      },
      "message": "kgdb: Always process the whole breakpoint list on activate or deactivate\n\nThis patch fixes 2 edge cases in using kgdb in conjunction with gdb.\n\n1) kgdb_deactivate_sw_breakpoints() should process the entire array of\n   breakpoints.  The failure to do so results in breakpoints that you\n   cannot remove, because a break point can only be removed if its\n   state flag is set to BP_SET.\n\n   The easy way to duplicate this problem is to plant a break point in\n   a kernel module and then unload the kernel module.\n\n2) kgdb_activate_sw_breakpoints() should process the entire array of\n   breakpoints.  The failure to do so results in missed breakpoints\n   when a breakpoint cannot be activated.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "d625e9c0d706eb43afbf52634d5cecacae1d57cc",
      "tree": "080cb5ced15c3a0235fc270e9bae2fe8a904bd11",
      "parents": [
        "8097551d9ab9b9e3630694ad1bc6e12c597c515e"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Apr 27 13:20:21 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:19 2009 -0600"
      },
      "message": "kgdb: continue and warn on signal passing from gdb\n\nOn some architectures for the segv trap, gdb wants to pass the signal\nback on continue.  For kgdb this is not the default behavior, because\nit can cause the kernel to crash if you arbitrarily pass back a\nexception outside of kgdb.\n\nInstead of causing instability, pass a message back to gdb about the\nsupported kgdb signal passing and execute a standard kgdb continue\noperation.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "028e7b175970be8fca58bfd7d61cc375babe40b7",
      "tree": "c94d3acdc460836a9ef2d06f3e80f83d5f33f157",
      "parents": [
        "cf6f196d112a6f6757b1ca3cce0b576f7abee479"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:17 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:17 2009 -0600"
      },
      "message": "kgdb: allow for cpu switch when single stepping\n\nThe kgdb core should not assume that a single step operation of a\nkernel thread will complete on the same CPU.  The single step flag is\nset at the \"thread\" level and it is possible in a multi cpu system\nthat a kernel thread can get scheduled on another cpu the next time it\nis run.\n\nAs a further safety net in case a slave cpu is hung, the debug master\ncpu will try 100 times before giving up and assuming control of the\nslave cpus is no longer possible.  It is more useful to be able to get\nsome information out of kgdb instead of spinning forever.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "84667d4849b0e0a939a76f9f62d45fa3b4d59692",
      "tree": "5765d861dc39cf52863ac569211a43355ef3fc29",
      "parents": [
        "a5d09d68335bb8422d5e7050c9f03f99ba6cfebd"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:13 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:13 2009 -0600"
      },
      "message": "kgdb: Read buffer overflow\n\nRoel Kluin reported an error found with Parfait.  Where we want to\nensure that that kgdb_info[-1] never gets accessed.\n\nAlso check to ensure any negative tid does not exceed the size of the\nshadow CPU array, else report critical debug context because it is an\ninternal kgdb failure.\n\nReported-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "b9889ed1ddeca5a3f3569c8de7354e9e97d803ae",
      "tree": "7309bed51e68f3414a7dd4159a7941d672028dbc",
      "parents": [
        "dfc12eb26a285df316be68a808af86964f3bff86"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 20:32:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 20:32:39 2009 +0100"
      },
      "message": "sched: Remove forced2_migrations stats\n\nThis build warning:\n\n kernel/sched.c: In function \u0027set_task_cpu\u0027:\n kernel/sched.c:2070: warning: unused variable \u0027old_rq\u0027\n\nMade me realize that the forced2_migrations stat looks pretty\npointless (and a misnomer) - remove it.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d71cb81af3817193bc605de061da0499934263a6",
      "tree": "f7ff95e0cf0cdf00234be29ba4050135314ab859",
      "parents": [
        "ab1831b0b87851c874a75e4b3a8538e3d76b37d7",
        "dc186ad741c12ae9ecac8b89e317ef706fdaf8f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:35:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:35:44 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: Add debugobjects support\n"
    },
    {
      "commit": "5e855db5d8fec44e6604eb245aa9077bbd3f0d05",
      "tree": "480a7af69a0168ea3a6b05a21e10dd964fd44ac1",
      "parents": [
        "7931241694b25589658b1ceb02218d2750540ae0"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Dec 10 17:08:54 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 17:23:02 2009 +0100"
      },
      "message": "perf_event: Fix variable initialization in other codepaths\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B20BAA6.7010609@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dfc12eb26a285df316be68a808af86964f3bff86",
      "tree": "502e31f805cd335131a52dd202c7c2825cf4006b",
      "parents": [
        "4ca3ef71f54655af98b66e8ff308a47a2a580a53"
      ],
      "author": {
        "name": "Phil Carmody",
        "email": "ext-phil.2.carmody@nokia.com",
        "time": "Thu Dec 10 14:29:37 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 14:28:10 2009 +0100"
      },
      "message": "sched: Fix memory leak in two error corner cases\n\nIf the second in each of these pairs of allocations fails, then the\nfirst one will not be freed in the error route out.\n\nFound by a static code analysis tool.\n\nSigned-off-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1260448177-28448-1-git-send-email-ext-phil.2.carmody@nokia.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f201907dfe4ad42c44006ddfcec00ed12e59497",
      "tree": "b796471d44eb588f8d95affaeb0aa6cf6478b460",
      "parents": [
        "41d2e494937715d3150e5c75d01f0e75ae899337"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Dec 10 10:56:29 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 13:08:11 2009 +0100"
      },
      "message": "hrtimer: move timer stats helper functions to hrtimer.c\n\nThere is no reason to make timer_stats_hrtimer_set_start_info and\nfriends visible to the rest of the kernel. So move all of them to\nhrtimer.c.  Also make timer_stats_hrtimer_set_start_info a static\ninline function so it gets inlined and we avoid another function call.\nBased on a patch by Thomas Gleixner.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nLKML-Reference: \u003c20091210095629.GC4144@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "41d2e494937715d3150e5c75d01f0e75ae899337",
      "tree": "9bc7270aa7b06ed065671a96085fbdf235977d91",
      "parents": [
        "3067e02f8f3ae2f3f02ba76400d03b8bcb4942b0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Nov 13 17:05:44 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 13:08:11 2009 +0100"
      },
      "message": "hrtimer: Tune hrtimer_interrupt hang logic\n\nThe hrtimer_interrupt hang logic adjusts min_delta_ns based on the\nexecution time of the hrtimer callbacks.\n\nThis is error-prone for virtual machines, where a guest vcpu can be\nscheduled out during the execution of the callbacks (and the callbacks\nthemselves can do operations that translate to blocking operations in\nthe hypervisor), which in can lead to large min_delta_ns rendering the\nsystem unusable.\n\nReplace the current heuristics with something more reliable. Allow the\ninterrupt code to try 3 times to catch up with the lost time. If that\nfails use the total time spent in the interrupt handler to defer the\nnext timer interrupt so the system can catch up with other things\nwhich got delayed. Limit that deferment to 100ms.\n\nThe retry events and the maximum time spent in the interrupt handler\nare recorded and exposed via /proc/timer_list\n\nInspired by a patch from Marcelo.\n\nReported-by: Michael Tokarev \u003cmjt@tls.msk.ru\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: kvm@vger.kernel.org\n\n"
    },
    {
      "commit": "4ca3ef71f54655af98b66e8ff308a47a2a580a53",
      "tree": "8c9bb089d56fbf1dd3902cb0a9f43b9b49d4fdc6",
      "parents": [
        "acb4a848da821a095ae9e4d8b22ae2d9633ba5cd"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu Dec 10 09:25:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 09:34:50 2009 +0100"
      },
      "message": "sched: Fix build warning in get_update_sysctl_factor()\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003cnew-submission\u003e\n"
    },
    {
      "commit": "ea5b41f9d595be354f7a50e56b28c2d72e6e88a5",
      "tree": "cfb23bea9059df20c1c64da92f3619dc0a1038ec",
      "parents": [
        "722d0172377a5697919b9f7e5beb95165b1dec4e"
      ],
      "author": {
        "name": "Luck, Tony",
        "email": "tony.luck@intel.com",
        "time": "Wed Dec 09 14:29:36 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:29:33 2009 +0100"
      },
      "message": "lockdep: Avoid out of bounds array reference in save_trace()\n\nia64 found this the hard way (because we currently have a stub\nfor save_stack_trace() that does nothing). But it would be a\ngood idea to  be cautious in case a real save_stack_trace()\nbailed out with an error before it set trace-\u003enr_entries.\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: luming.yu@intel.com\nLKML-Reference: \u003c4b2024d085302c2a2@agluck-desktop.sc.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "788d70dce0184eccc249ac6f05aa38b385b7497c",
      "tree": "607f2d23bab877a530bbd3b7da2b9fd9e6c24ce1",
      "parents": [
        "2b876f95d03e226394b5d360c86127cbefaf614b",
        "f2942487ffb0c0a80b2312f667ea30dd55a24bb0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:18:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:18:41 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/core\n"
    },
    {
      "commit": "21140f4d3387aa2213f1deea0128df1dbf924379",
      "tree": "16a5920041cc8f263e5680c88d68969a2147f8e3",
      "parents": [
        "c0c9e72150c07b4a6766cd24a6f685ec2dc9c343"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Dec 10 14:00:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 07:11:05 2009 +0100"
      },
      "message": "perf_event: Fix perf_swevent_hrtimer() variable initialization\n\nfix:\n\n [\u003cc0477471\u003e] ? printk+0x1d/0x24\n [\u003cc01c98f9\u003e] ? perf_prepare_sample+0x269/0x280\n [\u003cc0149231\u003e] warn_slowpath_common+0x71/0xd0\n [\u003cc01c98f9\u003e] ? perf_prepare_sample+0x269/0x280\n [\u003cc01492aa\u003e] warn_slowpath_null+0x1a/0x20\n [\u003cc01c98f9\u003e] perf_prepare_sample+0x269/0x280\n [\u003cc016e9f3\u003e] ? cpu_clock+0x53/0x90\n [\u003cc01cc368\u003e] __perf_event_overflow+0x2a8/0x300\n [\u003cc01ccc3b\u003e] perf_event_overflow+0x1b/0x30\n [\u003cc01ccccf\u003e] perf_swevent_hrtimer+0x7f/0x120\n\nThis is because \u0027data.raw\u0027 variable not initialize.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B208E93.1010801@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "f2942487ffb0c0a80b2312f667ea30dd55a24bb0",
      "tree": "8e6e4c8ae8230f2648142c863e8482b7656e6614",
      "parents": [
        "be1eca39319689aed7d3aedb9c3bece9469fe10f"
      ],
      "author": {
        "name": "Carsten Emde",
        "email": "Carsten.Emde@osadl.org",
        "time": "Sun Dec 06 14:02:44 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:20:08 2009 -0500"
      },
      "message": "tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n\nOlof Johansson stated the following:\n\n  Comparing a va_list with NULL is bogus. It\u0027s supposed to be treated like\n  an opaque type and only be manipulated with va_* accessors.\n\nOlof noticed that this code broke the ARM builds:\n\n    kernel/trace/trace.c: In function \u0027trace_array_vprintk\u0027:\n    kernel/trace/trace.c:1364: error: invalid operands to binary \u003d\u003d (have \u0027va_list\u0027 and \u0027void *\u0027)\n    kernel/trace/trace.c: In function \u0027tracing_mark_write\u0027:\n    kernel/trace/trace.c:3349: error: incompatible type for argument 3 of \u0027trace_vprintk\u0027\n\nThis patch partly reverts c13d2f7c3231e873f30db92b96c8caa48f100f33 and\nre-installs the original mark_printk() mechanism.\n\nReported-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Carsten Emde \u003cC.Emde@osadl.org\u003e\nLKML-Reference: \u003c4B1BAB74.104@osadl.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "be1eca39319689aed7d3aedb9c3bece9469fe10f",
      "tree": "fd55a6c086f328a2cdf9ed9ea2d371c3383c663f",
      "parents": [
        "d184b31c0e403580aafb3f8955ecc185a3d04801"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Tue Nov 24 13:57:38 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:09:06 2009 -0500"
      },
      "message": "tracing: Fix function graph trace_pipe to properly display failed entries\n\nThere is a case where the graph tracer might get confused and omits\ndisplaying of a single record.  This applies mostly with the trace_pipe\nsince it is unlikely that the trace_seq buffer will overflow with the\ntrace file.\n\nAs the function_graph tracer goes through the trace entries keeping a\npointer to the current record:\n\ncurrent -\u003e  func1 ENTRY\n            func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nWhen an function ENTRY is encountered, it moves the pointer to the\nnext entry to check if the function is a nested or leaf function.\n\n            func1 ENTRY\ncurrent -\u003e  func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nIf the rest of the writing of the function fills the trace_seq buffer,\nthen the trace_pipe read will ignore this entry. The next read will\nNow start at the current location, but the first entry (func1) will\nbe discarded.\n\nThis patch keeps a copy of the current entry in the iterator private\nstorage and will keep track of when the trace_seq buffer fills. When\nthe trace_seq buffer fills, it will reuse the copy of the entry in the\nnext iteration.\n\n[\n  This patch has been largely modified by Steven Rostedt in order to\n  clean it up and simplify it. The original idea and concept was from\n  Jirka and for that, this patch will go under his name to give him\n  the credit he deserves. But because this was modify by Steven Rostedt\n  anything wrong with the patch should be blamed on Steven.\n]\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1259067458-27143-1-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d184b31c0e403580aafb3f8955ecc185a3d04801",
      "tree": "ca3fc8371382ce8dbe43eb684313847b7555573e",
      "parents": [
        "a63ce5b306855bccdacba95c03bfc293316c8ae3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 25 16:10:14 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:05:49 2009 -0500"
      },
      "message": "tracing: Add full state to trace_seq\n\nThe trace_seq buffer might fill up, and right now one needs to check the\nreturn value of each printf into the buffer to check for that.\n\nInstead, have the buffer keep track of whether it is full or not, and\nreject more input if it is full or would have overflowed with an input\nthat wasn\u0027t added.\n\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a63ce5b306855bccdacba95c03bfc293316c8ae3",
      "tree": "b6d91266e9333a9cf74d6171bbee0acc0e18096b",
      "parents": [
        "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 07 09:11:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 13:55:26 2009 -0500"
      },
      "message": "tracing: Buffer the output of seq_file in case of filled buffer\n\nIf the seq_read fills the buffer it will call s_start again on the next\nitertation with the same position. This causes a problem with the\nfunction_graph tracer because it consumes the iteration in order to\ndetermine leaf functions.\n\nWhat happens is that the iterator stores the entry, and the function\ngraph plugin will look at the next entry. If that next entry is a return\nof the same function and task, then the function is a leaf and the\nfunction_graph plugin calls ring_buffer_read which moves the ring buffer\niterator forward (the trace iterator still points to the function start\nentry).\n\nThe copying of the trace_seq to the seq_file buffer will fail if the\nseq_file buffer is full. The seq_read will not show this entry.\nThe next read by userspace will cause seq_read to again call s_start\nwhich will reuse the trace iterator entry (the function start entry).\nBut the function return entry was already consumed. The function graph\nplugin will think that this entry is a nested function and not a leaf.\n\nTo solve this, the trace code now checks the return status of the\nseq_printf (trace_print_seq). If the writing to the seq_file buffer\nfails, we set a flag in the iterator (leftover) and we do not reset\nthe trace_seq buffer. On the next call to s_start, we check the leftover\nflag, and if it is set, we just reuse the trace_seq buffer and do not\ncall into the plugin print functions.\n\nBefore this patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)               |          __fsnotify_parent() {\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\nAfter the patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)   0.548 us    |          __fsnotify_parent();\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\n[\n  Updated the patch to fix a missing return 0 from the trace_print_seq()\n  stub when CONFIG_TRACING is disabled.\n\n  Reported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n]\n\nReported-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458",
      "tree": "42a93ba9e1e7d0fb7b1f46382dba9a5245768629",
      "parents": [
        "c521efd1700a8c0f7ce26f011f5eaecca17fabfa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Dec 09 12:37:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 12:47:35 2009 -0500"
      },
      "message": "tracing: Only call pipe_close if pipe_close is defined\n\nThis fixes a cut and paste error that had pipe_close get called\nif pipe_open was defined (not pipe_close).\n\nReported-by: Kosaki Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20091209153204.F4CD.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3b8ecd22447c4266500c0bcf97f035310543e494",
      "tree": "af4c86fd8d250d4978ad6b6905c30dafb3a552c6",
      "parents": [
        "a9280fed383082da08a40af3f38daccaed6d8d62",
        "6f15fa50087c8317e353145319466afbeb27a75d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 08:07:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 08:07:17 2009 -0800"
      },
      "message": "Merge branch \u0027bkl-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027bkl-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sys: Remove BKL from sys_reboot\n  pm_qos: clean up racy global \"name\" variable\n  pm_qos: remove BKL\n"
    },
    {
      "commit": "822a6961112f0c9101d3359d8524604c3309ee6c",
      "tree": "ba66dda1220c6f3f9208b56cb50f716bbf08fa13",
      "parents": [
        "ec89a06fd4e12301f11ab039ee07d2353a18addc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Dec 08 10:00:04 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:32:21 2009 +0100"
      },
      "message": "tracing/kprobes: Fix field creation\u0027s bad error handling\n\nWhen we define the common event fields in kprobe, we invert the error\nhandling and return immediately in case of success. Then we omit\nto define specific kprobes fields (ip and nargs), and specific\nkretprobes fields (func, ret_ip, nargs). And we only define them\nwhen we fail to create common fields.\n\nThe most visible consequence is that we can\u0027t create filter for\nk(ret)probes specific fields.\n\nThis patch re-invert the success/error handling to fix it.\n\nReported-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1260263815-5167-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "acb4a848da821a095ae9e4d8b22ae2d9633ba5cd",
      "tree": "152efff68841e554eb71c82a97d3ed9571352581",
      "parents": [
        "1983a922a1bc843806b9a36cf3a370b242783140"
      ],
      "author": {
        "name": "Christian Ehrhardt",
        "email": "ehrhardt@linux.vnet.ibm.com",
        "time": "Mon Nov 30 12:16:48 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:04:02 2009 +0100"
      },
      "message": "sched: Update normalized values on user updates via proc\n\nThe normalized values are also recalculated in case the scaling factor\nchanges.\n\nThis patch updates the internally used scheduler tuning values that are\nnormalized to one cpu in case a user sets new values via sysfs.\n\nTogether with patch 2 of this series this allows to let user configured\nvalues scale (or not) to cpu add/remove events taking place later.\n\nSigned-off-by: Christian Ehrhardt \u003cehrhardt@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1259579808-11357-4-git-send-email-ehrhardt@linux.vnet.ibm.com\u003e\n[ v2: fix warning ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1983a922a1bc843806b9a36cf3a370b242783140",
      "tree": "3071f23d39e05587823a40033c4c11a0867dd46e",
      "parents": [
        "0bcdcf28c979869f44e05121b96ff2cfb05bd8e6"
      ],
      "author": {
        "name": "Christian Ehrhardt",
        "email": "ehrhardt@linux.vnet.ibm.com",
        "time": "Mon Nov 30 12:16:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:04:01 2009 +0100"
      },
      "message": "sched: Make tunable scaling style configurable\n\nAs scaling now takes place on all kind of cpu add/remove events a user\nthat configures values via proc should be able to configure if his set\nvalues are still rescaled or kept whatever happens.\n\nAs the comments state that log2 was just a second guess that worked the\ninterface is not just designed for on/off, but to choose a scaling type.\nCurrently this allows none, log and linear, but more important it allwos\nus to keep the interface even if someone has an even better idea how to\nscale the values.\n\nSigned-off-by: Christian Ehrhardt \u003cehrhardt@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1259579808-11357-3-git-send-email-ehrhardt@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0bcdcf28c979869f44e05121b96ff2cfb05bd8e6",
      "tree": "c70b8fb37fec9badf95ac2ea679407334f580ae5",
      "parents": [
        "57785df5ac53c70da9fb53696130f3c551bfe1f9"
      ],
      "author": {
        "name": "Christian Ehrhardt",
        "email": "ehrhardt@linux.vnet.ibm.com",
        "time": "Mon Nov 30 12:16:46 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:58 2009 +0100"
      },
      "message": "sched: Fix missing sched tunable recalculation on cpu add/remove\n\nBased on Peter Zijlstras patch suggestion this enables recalculation of\nthe scheduler tunables in response of a change in the number of cpus. It\nalso adds a max of eight cpus that are considered in that scaling.\n\nSigned-off-by: Christian Ehrhardt \u003cehrhardt@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1259579808-11357-2-git-send-email-ehrhardt@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "57785df5ac53c70da9fb53696130f3c551bfe1f9",
      "tree": "5653c894d74a1555f480835b013fdb7b512f8b69",
      "parents": [
        "cd8ad40de36c2fe75f3b731bd70198b385895246"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Dec 04 09:59:02 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:10 2009 +0100"
      },
      "message": "sched: Fix task priority bug\n\n83f9ac removed a call to effective_prio() in wake_up_new_task(), which\nleads to tasks running at MAX_PRIO.\n\nThis is caused by the idle thread being set to MAX_PRIO before forking\noff init. O(1) used that to make sure idle was always preempted, CFS\nuses check_preempt_curr_idle() for that so we can savely remove this bit\nof legacy code.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nTested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1259754383.4003.610.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cd8ad40de36c2fe75f3b731bd70198b385895246",
      "tree": "c1e6d5c8dddfa0d9ad643a1df8e92f26700e3143",
      "parents": [
        "fb58bac5c75bfff8bbf7d02071a10a62f32fe28b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 03 18:00:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:09 2009 +0100"
      },
      "message": "sched: cgroup: Implement different treatment for idle shares\n\nWhen setting the weight for a per-cpu task-group, we have to put in a\nphantom weight when there is no work on that cpu, otherwise we\u0027ll not\nservice that cpu when new work gets placed there until we again update\nthe per-cpu weights.\n\nWe used to add these phantom weights to the total, so that the idle\nper-cpu shares don\u0027t get inflated, this however causes the non-idle\nparts to get deflated, causing unexpected weight distibutions.\n\nReverse this, so that the non-idle shares are correct but the idle\nshares are inflated.\n\nReported-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nTested-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1257934048.23203.76.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fb58bac5c75bfff8bbf7d02071a10a62f32fe28b",
      "tree": "b2ff68b388efa043c152d75254da27171ea5e586",
      "parents": [
        "6cecd084d0fd27bb1e498e2829fd45846d806856"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Dec 01 12:21:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:08 2009 +0100"
      },
      "message": "sched: Remove unnecessary RCU exclusion\n\nAs Nick pointed out, and realized by myself when doing:\n   sched: Fix balance vs hotplug race\nthe patch:\n   sched: for_each_domain() vs RCU\n\nis wrong, sched_domains are freed after synchronize_sched(), which\nmeans disabling preemption is enough.\n\nReported-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6cecd084d0fd27bb1e498e2829fd45846d806856",
      "tree": "90cc079c942ad35669d1a33957a121c1cb3a88a6",
      "parents": [
        "3a7e73a2e26fffdbc46ba95fc0425418984f5140"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Nov 30 13:00:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:07 2009 +0100"
      },
      "message": "sched: Discard some old bits\n\nWAKEUP_RUNNING was an experiment, not sure why that ever ended up being\nmerged...\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3a7e73a2e26fffdbc46ba95fc0425418984f5140",
      "tree": "02fdd1c081acfde7522a971bc2969bca76ca90c7",
      "parents": [
        "a65ac745e47e91f9d98dbf07f22ed0492e34d998"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat Nov 28 18:51:02 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:07 2009 +0100"
      },
      "message": "sched: Clean up check_preempt_wakeup()\n\nStreamline the wakeup preemption code a bit, unifying the preempt path\nso that they all do the same.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a65ac745e47e91f9d98dbf07f22ed0492e34d998",
      "tree": "246b0953cbf4e2d890d71d01cbfb070f8e4b1811",
      "parents": [
        "cd29fe6f2637cc2ccbda5ac65f5332d6bf5fa3c6"
      ],
      "author": {
        "name": "Jupyung Lee",
        "email": "jupyung@gmail.com",
        "time": "Tue Nov 17 18:51:40 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:06 2009 +0100"
      },
      "message": "sched: Move update_curr() in check_preempt_wakeup() to avoid redundant call\n\nIf a RT task is woken up while a non-RT task is running,\ncheck_preempt_wakeup() is called to check whether the new task can\npreempt the old task. The function returns quickly without going deeper\nbecause it is apparent that a RT task can always preempt a non-RT task.\n\nIn this situation, check_preempt_wakeup() always calls update_curr() to\nupdate vruntime value of the currently running task. However, the\nfunction call is unnecessary and redundant at that moment because (1) a\nnon-RT task can always be preempted by a RT task regardless of its\nvruntime value, and (2) update_curr() will be called shortly when the\ncontext switch between two occurs.\n\nBy moving update_curr() in check_preempt_wakeup(), we can avoid\nredundant call to update_curr(), slightly reducing the time taken to\nwake up RT tasks.\n\nSigned-off-by: Jupyung Lee \u003cjupyung@gmail.com\u003e\n[ Place update_curr() right before the wake_preempt_entity() call, which\n  is the only thing that relies on the updated vruntime ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1258451500-6714-1-git-send-email-jupyung@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cd29fe6f2637cc2ccbda5ac65f5332d6bf5fa3c6",
      "tree": "b4206012d424a8c0bce1f260d042c678db0602a2",
      "parents": [
        "ab19cb23313733c55e0517607844b86720b35f5f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Nov 27 17:32:46 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:05 2009 +0100"
      },
      "message": "sched: Sanitize fork() handling\n\nCurrently we try to do task placement in wake_up_new_task() after we do\nthe load-balance pass in sched_fork(). This yields complicated semantics\nin that we have to deal with tasks on different RQs and the\nset_task_cpu() calls in copy_process() and sched_fork()\n\nRename -\u003etask_new() to -\u003etask_fork() and call it from sched_fork()\nbefore the balancing, this gives the policy a clear point to place the\ntask.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ab19cb23313733c55e0517607844b86720b35f5f",
      "tree": "0d6780ab6d1e1e97b624e978ed3418e5786646d4",
      "parents": [
        "5afcdab706d6002cb02b567ba46e650215e694e8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Nov 27 15:44:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:04 2009 +0100"
      },
      "message": "sched: Clean up ttwu() rq locking\n\nSince set_task_clock() doesn\u0027t rely on rq-\u003eclock anymore we can simplyfy\nthe mess in ttwu().\n\nOptimize things a bit by not fiddling with the IRQ state there.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5afcdab706d6002cb02b567ba46e650215e694e8",
      "tree": "015c3fb61dc8a4217bc83927efd7882e7d494d2b",
      "parents": [
        "970b13bacba14a8cef6f642861947df1d175b0b3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Nov 27 14:12:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:03 2009 +0100"
      },
      "message": "sched: Remove rq-\u003eclock coupling from set_task_cpu()\n\nset_task_cpu() should be rq invariant and only touch task state, it\ncurrently fails to do so, which opens up a few races, since not all\ncallers hold both rq-\u003elocks.\n\nRemove the relyance on rq-\u003eclock, as any site calling set_task_cpu()\nshould also do a remote clock update, which should ensure the observed\ntime between these two cpus is monotonic, as per\nkernel/sched_clock.c:sched_clock_remote().\n\nTherefore we can simply remove the clock_offset bits and be happy.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "970b13bacba14a8cef6f642861947df1d175b0b3",
      "tree": "9baa1fe0074b25ccacd58b2da98a3d2fa1e46d16",
      "parents": [
        "6b314d0e11924c803bf8cd944e87fd58cdb5088c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 25 13:31:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:02 2009 +0100"
      },
      "message": "sched: Consolidate select_task_rq() callers\n\nSmall cleanup.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\n[ v2: build fix ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6b314d0e11924c803bf8cd944e87fd58cdb5088c",
      "tree": "27fda1b12e7552d2fd384378a67639ec8643bc38",
      "parents": [
        "dba091b9e3522b9d32fc9975e48d3b69633b45f0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 02 18:58:05 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:03:01 2009 +0100"
      },
      "message": "sched: Remove sysctl.sched_features\n\nSince we\u0027ve had a much saner debugfs interface to this, remove the\nsysctl one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\n[ v2: build fix ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dba091b9e3522b9d32fc9975e48d3b69633b45f0",
      "tree": "91549e3921971b6d0074fd34c29223b593381c8a",
      "parents": [
        "3160568371da441b7f2fb57f2f1225404207e8f2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 09 09:32:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:01:07 2009 +0100"
      },
      "message": "sched: Protect sched_rr_get_param() access to task-\u003esched_class\n\nsched_rr_get_param calls\ntask-\u003esched_class-\u003eget_rr_interval(task) without protection\nagainst a concurrent sched_setscheduler() call which modifies\ntask-\u003esched_class.\n\nSerialize the access with task_rq_lock(task) and hand the rq\npointer into get_rr_interval() as it\u0027s needed at least in the\nsched_fair implementation.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003calpine.LFD.2.00.0912090930120.3089@localhost.localdomain\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3160568371da441b7f2fb57f2f1225404207e8f2",
      "tree": "bf717db23c352fe14138863157433a79f5edf3e6",
      "parents": [
        "6ad4c18884e864cf4c77f9074d3d1816063f99cd"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 20:24:16 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:01:06 2009 +0100"
      },
      "message": "sched: Protect task-\u003ecpus_allowed access in sched_getaffinity()\n\nsched_getaffinity() is not protected against a concurrent\nmodification of the tasks affinity.\n\nSerialize the access with task_rq_lock(task).\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091208202026.769251187@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec89a06fd4e12301f11ab039ee07d2353a18addc",
      "tree": "507d33bda6504dd8422b9952156d338b0200fb2b",
      "parents": [
        "b93f7978ad6b46133e9453b90ccc057dc2429e75"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Dec 09 11:30:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 09:56:27 2009 +0100"
      },
      "message": "perf_event: Cleanup for cpu_clock_perf_event_update()\n\nUsing atomic64_xchg() instead of atomic64_read() and\natomic64_set().\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B1F19DC.90204@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b93f7978ad6b46133e9453b90ccc057dc2429e75",
      "tree": "f3420ebd5fa80ddb1a4c3e302a64861146104385",
      "parents": [
        "aa5452d70c0d559310598b243b8b1033c10056e7"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Dec 09 11:29:44 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 09:56:27 2009 +0100"
      },
      "message": "perf_event: Allocate children\u0027s perf_event_ctxp at the right time\n\nIn current code, children task will allocate memory for\n\u0027child-\u003eperf_event_ctxp\u0027 if the parent is counted, we can\ndo it only if the parent allowed children inherit it.\n\nIt can save memory and reduce overhead.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B1F19A8.5040805@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aa5452d70c0d559310598b243b8b1033c10056e7",
      "tree": "80f1c0b1137722a71623254c93bec20e33f4b19d",
      "parents": [
        "44234adcdce38f83c56e05f808ce656175b4beeb"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Dec 09 11:28:13 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 09:56:27 2009 +0100"
      },
      "message": "perf_event: Clean up __perf_event_init_context()\n\nClean up the code a bit:\n\n - define \u0027perf_cpu_context\u0027 variable with \u0027static\u0027\n - use kzalloc() instead of kmalloc() and memset()\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B1F194D.7080306@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44234adcdce38f83c56e05f808ce656175b4beeb",
      "tree": "caff2ca7bbf4bf7c0b12652caf739bcc6db5f4d3",
      "parents": [
        "c937fe20cb6d9e24c6ad5f9f0c64d64c78411057"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Dec 09 09:25:48 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 09:48:20 2009 +0100"
      },
      "message": "hw-breakpoints: Modify breakpoints without unregistering them\n\nCurrently, when ptrace needs to modify a breakpoint, like disabling\nit, changing its address, type or len, it calls\nmodify_user_hw_breakpoint(). This latter will perform the heavy and\nracy task of unregistering the old breakpoint and registering a new\none.\n\nThis is racy as someone else might steal the reserved breakpoint\nslot under us, which is undesired as the breakpoint is only\nsupposed to be modified, sometimes in the middle of a debugging\nworkflow. We don\u0027t want our slot to be stolen in the middle.\n\nSo instead of unregistering/registering the breakpoint, just\ndisable it while we modify its breakpoint fields and re-enable it\nafter if necessary.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1260347148-5519-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a7c312bed772c11138409c3a98531e85d690302e",
      "tree": "3471a0d13a790e563f3191c524a742876ff81b25",
      "parents": [
        "f984f03da35357b23d53e9cad29e909810857451"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Dec 08 17:03:16 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 07:26:53 2009 +0100"
      },
      "message": "trace-kprobe: Support delete probe syntax\n\nSupport delete probe syntax. The syntax is \"-:[group/]event\".\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091208220316.10142.39192.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "2b876f95d03e226394b5d360c86127cbefaf614b",
      "tree": "1f7ea2b85896bac5f5caecb6ff7a8c5d5262914f",
      "parents": [
        "fbf07eac7bf21c262143194181bd97c5d18b8ceb",
        "c95b4502ad7fe8f3b9954aec794b00ac0046ab3a",
        "6ce51c431019310ca03371355a4366c4649fa349"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:30:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:30:19 2009 -0800"
      },
      "message": "Merge branches \u0027timers-for-linus-ntp\u0027 and \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus-ntp\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ntp: Provide compability defines (You say MOD_NANO, I say ADJ_NANO)\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: do not execute DEBUG_SHIRQ when irq setup failed\n"
    },
    {
      "commit": "fbf07eac7bf21c262143194181bd97c5d18b8ceb",
      "tree": "c9228b7d272f1e39472da28032605ecd1860e688",
      "parents": [
        "60d8ce2cd6c283132928c11f3fd57ff4187287e0",
        "8629ea2eaba8ca0de2e38ce1b4a825e16255976e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:28:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:28:09 2009 -0800"
      },
      "message": "Merge branch \u0027timers-for-linus-urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus-urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  hrtimer: Fix /proc/timer_list regression\n  itimers: Fix racy writes to cpu_itimer fields\n  timekeeping: Fix clock_gettime vsyscall time warp\n"
    },
    {
      "commit": "60d8ce2cd6c283132928c11f3fd57ff4187287e0",
      "tree": "36d08a2ead7a7d8c3c081d484215ccca00bf6aab",
      "parents": [
        "849e8dea099aafa56db9e74b580b0d858b956533",
        "feae3203d711db0a9965300ee6d592257fdaae4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:27:08 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 19:27:08 2009 -0800"
      },
      "message": "Merge branch \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timers, init: Limit the number of per cpu calibration bootup messages\n  posix-cpu-timers: optimize and document timer_create callback\n  clockevents: Add missing include to pacify sparse\n  x86: vmiclock: Fix printk format\n  x86: Fix printk format due to variable type change\n  sparc: fix printk for change of variable type\n  clocksource/events: Fix fallout of generic code changes\n  nohz: Allow 32-bit machines to sleep for more than 2.15 seconds\n  nohz: Track last do_timer() cpu\n  nohz: Prevent clocksource wrapping during idle\n  nohz: Type cast printk argument\n  mips: Use generic mult/shift factor calculation for clocks\n  clocksource: Provide a generic mult/shift factor calculation\n  clockevents: Use u32 for mult and shift factors\n  nohz: Introduce arch_needs_cpu\n  nohz: Reuse ktime in sub-functions of tick_check_idle.\n  time: Remove xtime_cache\n  time: Implement logarithmic time accumulation\n"
    },
    {
      "commit": "4d2a914239eee6fcddd12a7c9c32e135dde8f3f1",
      "tree": "55100d41d0771f1f47083c886475c2fbaf648751",
      "parents": [
        "9e9868a7372afc60615e8e11db246a91a121654d",
        "1786bf009f18f722afbb62143c8541e7e60a4e92"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 13:24:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 13:24:20 2009 -0800"
      },
      "message": "Merge branch \u0027x86-entry-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-entry-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  core: Clean up user return notifers use of per_cpu\n"
    },
    {
      "commit": "6035ccd8e9e40bb654fbfdef325902ab531679a5",
      "tree": "c1810d8a4d4ef150cdf14af72e6087dfc3f4b6e0",
      "parents": [
        "23eb3b64b5e44680c867e165fe1cd18e57fba255",
        "878eaddd05d251cefa9632c2b8046833c5eead66"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:19:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:19:16 2009 -0800"
      },
      "message": "Merge branch \u0027for-2.6.33\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.33\u0027 of git://git.kernel.dk/linux-2.6-block: (113 commits)\n  cfq-iosched: Do not access cfqq after freeing it\n  block: include linux/err.h to use ERR_PTR\n  cfq-iosched: use call_rcu() instead of doing grace period stall on queue exit\n  blkio: Allow CFQ group IO scheduling even when CFQ is a module\n  blkio: Implement dynamic io controlling policy registration\n  blkio: Export some symbols from blkio as its user CFQ can be a module\n  block: Fix io_context leak after failure of clone with CLONE_IO\n  block: Fix io_context leak after clone with CLONE_IO\n  cfq-iosched: make nonrot check logic consistent\n  io controller: quick fix for blk-cgroup and modular CFQ\n  cfq-iosched: move IO controller declerations to a header file\n  cfq-iosched: fix compile problem with !CONFIG_CGROUP\n  blkio: Documentation\n  blkio: Wait on sync-noidle queue even if rq_noidle \u003d 1\n  blkio: Implement group_isolation tunable\n  blkio: Determine async workload length based on total number of queues\n  blkio: Wait for cfq queue to get backlogged if group is empty\n  blkio: Propagate cgroup weight updation to cfq groups\n  blkio: Drop the reference to queue once the task changes cgroup\n  blkio: Provide some isolation between groups\n  ...\n"
    },
    {
      "commit": "dad3de7d0090280f44ff27131ed2878f1ab6ddad",
      "tree": "f887c721761ce845037d96b59542198294a5d3a5",
      "parents": [
        "ed9216c1717a3f3738a77908aff78995ea69e7ff",
        "7a1a8eb58a2c6cd819d17332c5a2c369203635d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:07:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:07:16 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM: Add flag for devices capable of generating run-time wake-up events\n  PM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()\n  PM / Runtime: Make documentation of runtime_idle() agree with the code\n  PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()\n  PM / Runtime: Use deferred_resume flag in pm_request_resume\n  PM / Runtime: Export the PM runtime workqueue\n  PM / Runtime: Fix lockdep warning in __pm_runtime_set_status()\n  PM / Hibernate: Swap, use KERN_CONT\n  PM / Hibernate: Shift remaining code from swsusp.c to hibernate.c\n  PM / Hibernate: Move swap functions to kernel/power/swap.c.\n  PM / freezer: Don\u0027t get over-anxious while waiting\n"
    },
    {
      "commit": "ed9216c1717a3f3738a77908aff78995ea69e7ff",
      "tree": "c6b5ace7c333dabbf1d94074a13a98244bcdfb26",
      "parents": [
        "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
        "d5696725b2a4c59503f5e0bc33adeee7f30cd45b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (84 commits)\n  KVM: VMX: Fix comparison of guest efer with stale host value\n  KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c\n  KVM: Drop user return notifier when disabling virtualization on a cpu\n  KVM: VMX: Disable unrestricted guest when EPT disabled\n  KVM: x86 emulator: limit instructions to 15 bytes\n  KVM: s390: Make psw available on all exits, not just a subset\n  KVM: x86: Add KVM_GET/SET_VCPU_EVENTS\n  KVM: VMX: Report unexpected simultaneous exceptions as internal errors\n  KVM: Allow internal errors reported to userspace to carry extra data\n  KVM: Reorder IOCTLs in main kvm.h\n  KVM: x86: Polish exception injection via KVM_SET_GUEST_DEBUG\n  KVM: only clear irq_source_id if irqchip is present\n  KVM: x86: disallow KVM_{SET,GET}_LAPIC without allocated in-kernel lapic\n  KVM: x86: disallow multiple KVM_CREATE_IRQCHIP\n  KVM: VMX: Remove vmx-\u003emsr_offset_efer\n  KVM: MMU: update invlpg handler comment\n  KVM: VMX: move CR3/PDPTR update to vmx_set_cr3\n  KVM: remove duplicated task_switch check\n  KVM: powerpc: Fix BUILD_BUG_ON condition\n  KVM: VMX: Use shared msr infrastructure\n  ...\n\nTrivial conflicts due to new Kconfig options in arch/Kconfig and kernel/Makefile\n"
    },
    {
      "commit": "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
      "tree": "a43d56fa72913a1cc98a0bbebe054d08581b3a7c",
      "parents": [
        "ee1262dbc65ce0b6234a915d8432171e8d77f518",
        "28b4d5cc17c20786848cdc07b7ea237a309776bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1815 commits)\n  mac80211: fix reorder buffer release\n  iwmc3200wifi: Enable wimax core through module parameter\n  iwmc3200wifi: Add wifi-wimax coexistence mode as a module parameter\n  iwmc3200wifi: Coex table command does not expect a response\n  iwmc3200wifi: Update wiwi priority table\n  iwlwifi: driver version track kernel version\n  iwlwifi: indicate uCode type when fail dump error/event log\n  iwl3945: remove duplicated event logging code\n  b43: fix two warnings\n  ipw2100: fix rebooting hang with driver loaded\n  cfg80211: indent regulatory messages with spaces\n  iwmc3200wifi: fix NULL pointer dereference in pmkid update\n  mac80211: Fix TX status reporting for injected data frames\n  ath9k: enable 2GHz band only if the device supports it\n  airo: Fix integer overflow warning\n  rt2x00: Fix padding bug on L2PAD devices.\n  WE: Fix set events not propagated\n  b43legacy: avoid PPC fault during resume\n  b43: avoid PPC fault during resume\n  tcp: fix a timewait refcnt race\n  ...\n\nFix up conflicts due to sysctl cleanups (dead sysctl_check code and\nCTL_UNNUMBERED removed) in\n\tkernel/sysctl_check.c\n\tnet/ipv4/sysctl_net_ipv4.c\n\tnet/ipv6/addrconf.c\n\tnet/sctp/sysctl.c\n"
    },
    {
      "commit": "1557d33007f63dd96e5d15f33af389378e5f2e54",
      "tree": "06d05722b2ba5d2a67532f779fa8a88efe3c88f1",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d",
        "c656ae95d1c5c8ed5763356263ace2d03087efec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:38:50 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:38:50 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6: (43 commits)\n  security/tomoyo: Remove now unnecessary handling of security_sysctl.\n  security/tomoyo: Add a special case to handle accesses through the internal proc mount.\n  sysctl: Drop \u0026 in front of every proc_handler.\n  sysctl: Remove CTL_NONE and CTL_UNNUMBERED\n  sysctl: kill dead ctl_handler definitions.\n  sysctl: Remove the last of the generic binary sysctl support\n  sysctl net: Remove unused binary sysctl code\n  sysctl security/tomoyo: Don\u0027t look at ctl_name\n  sysctl arm: Remove binary sysctl support\n  sysctl x86: Remove dead binary sysctl support\n  sysctl sh: Remove dead binary sysctl support\n  sysctl powerpc: Remove dead binary sysctl support\n  sysctl ia64: Remove dead binary sysctl support\n  sysctl s390: Remove dead sysctl binary support\n  sysctl frv: Remove dead binary sysctl support\n  sysctl mips/lasat: Remove dead binary sysctl support\n  sysctl drivers: Remove dead binary sysctl support\n  sysctl crypto: Remove dead binary sysctl support\n  sysctl security/keys: Remove dead binary sysctl support\n  sysctl kernel: Remove binary sysctl logic\n  ...\n"
    },
    {
      "commit": "722d0172377a5697919b9f7e5beb95165b1dec4e",
      "tree": "4ee18c7233de8e28b1fc87031fa1be7a2d59e5d2",
      "parents": [
        "f5754bfd107b08edddaf871d676ec6fe0792d07a"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Dec 08 13:19:42 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 14:59:36 2009 +0100"
      },
      "message": "futex: Take mmap_sem for get_user_pages in fault_in_user_writeable\n\nget_user_pages() must be called with mmap_sem held.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: stable@kernel.org\nCc: Andrew Morton \u003cakpm@linuxfoundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091208121942.GA21298@basil.fritz.box\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "6ab8886326a1b9a3a8d164d8174e3c20703a03a2",
      "tree": "dab951be5106d9e4350916af6a9281045e6b2f80",
      "parents": [
        "2ff6cfd70720780234fdfea636218c2a62b31287"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Dec 08 18:25:15 2009 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 08 09:34:43 2009 +0100"
      },
      "message": "perf: hw_breakpoints: Fix percpu namespace clash\n\nToday\u0027s linux-next build failed with:\n\n  kernel/hw_breakpoint.c:86: error: \u0027task_bp_pinned\u0027 redeclared as different kind of symbol\n  ...\n\nCaused by commit dd17c8f72993f9461e9c19250e3f155d6d99df22 (\"percpu:\nremove per_cpu__ prefix\") from the percpu tree interacting with\ncommit 56053170ea2a2c0dc17420e9b94aa3ca51d80408 (\"hw-breakpoints:\nFix task-bound breakpoint slot allocation\") from the tip tree.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20091208182515.bb6dda4a.sfr@canb.auug.org.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50de1a8ef18da0cfff97543315b4e042e8bb7c83",
      "tree": "86056d1aef0e83d7839a8350c9e6109b80b3cfa5",
      "parents": [
        "390dfd95c5df1ab3921dd388d11b2aee332c3f2c",
        "ee0a6efc1897ef817e177e669f5c5d211194df24"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Dec 08 10:02:12 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Dec 08 10:02:12 2009 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n\nConflicts:\n\tmm/percpu.c\n"
    },
    {
      "commit": "d014d043869cdc591f3a33243d3481fa4479c2d0",
      "tree": "63626829498e647ba058a1ce06419fe7e4d5f97d",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d",
        "6070d81eb5f2d4943223c96e7609a53cdc984364"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\n\tkernel/irq/chip.c\n"
    },
    {
      "commit": "c521efd1700a8c0f7ce26f011f5eaecca17fabfa",
      "tree": "8dd9f8171222e856aafa5db1c1a150098327d409",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 07 09:06:24 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 07 12:01:35 2009 -0500"
      },
      "message": "tracing: Add pipe_close interface\n\nAn ftrace plugin can add a pipe_open interface when the user opens\ntrace_pipe. But if the plugin allocates something within the pipe_open\nit can not free it because there exists no pipe_close. The hook to\nthe trace file open has a corresponding close. The closing of the\ntrace_pipe file should also have a corresponding close.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "56053170ea2a2c0dc17420e9b94aa3ca51d80408",
      "tree": "af54e4816e53a8bd0fb5852236c381ce53fadcf6",
      "parents": [
        "ed872d09effd54aa8ecb4ceedbc4dbab9592f337"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Dec 07 06:46:48 2009 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Dec 07 07:05:28 2009 +0100"
      },
      "message": "hw-breakpoints: Fix task-bound breakpoint slot allocation\n\nWhatever the context nature of a breakpoint, we always perform the\nfollowing constraint checks before allocating it a slot:\n\n- Check the number of pinned breakpoint bound the concerned cpus\n- Check the max number of task-bound breakpoints that are belonging\n  to a task.\n- Add both and see if we have a reamining slot for the new breakpoint\n\nThis is the right thing to do when we are about to register a cpu-only\nbound breakpoint. But not if we are dealing with a task bound\nbreakpoint. What we want in this case is:\n\n- Check the number of pinned breakpoint bound the concerned cpus\n- Check the number of breakpoints that already belong to the task\n  in which the breakpoint to register is bound to.\n- Add both\n\nThis fixes a regression that makes the \"firefox -g\" command fail to\nregister breakpoints once we deal with a secondary thread.\n\nReported-by: Walt \u003cw41ter@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "6ad4c18884e864cf4c77f9074d3d1816063f99cd",
      "tree": "f09643f6148b576fa2d23bf7d4b37d082d94e267",
      "parents": [
        "e1b8090bdf125f8b2e192149547fead7f302a89c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 25 13:31:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 06 21:10:56 2009 +0100"
      },
      "message": "sched: Fix balance vs hotplug race\n\nSince (e761b77: cpu hotplug, sched: Introduce cpu_active_map and redo\nsched domain managment) we have cpu_active_mask which is suppose to rule\nscheduler migration and load-balancing, except it never (fully) did.\n\nThe particular problem being solved here is a crash in try_to_wake_up()\nwhere select_task_rq() ends up selecting an offline cpu because\nselect_task_rq_fair() trusts the sched_domain tree to reflect the\ncurrent state of affairs, similarly select_task_rq_rt() trusts the\nroot_domain.\n\nHowever, the sched_domains are updated from CPU_DEAD, which is after the\ncpu is taken offline and after stop_machine is done. Therefore it can\nrace perfectly well with code assuming the domains are right.\n\nCure this by building the domains from cpu_active_mask on\nCPU_DOWN_PREPARE.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e1b8090bdf125f8b2e192149547fead7f302a89c",
      "tree": "76cfb31f2b1c17953c02afa5cbbc683a6d01869d",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Sun Dec 06 20:41:16 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 06 21:08:41 2009 +0100"
      },
      "message": "cpumask: Fix generate_sched_domains() for UP\n\nCommit acc3f5d7cabbfd6cec71f0c1f9900621fa2d6ae7 (\"cpumask:\nPartition_sched_domains takes array of cpumask_var_t\") changed\nthe function signature of generate_sched_domains() for the\nCONFIG_SMP\u003dy case, but forgot to update the corresponding\nfunction for the CONFIG_SMP\u003dn case, causing:\n\n  kernel/cpuset.c:2073: warning: passing argument 1 of \u0027generate_sched_domains\u0027 from incompatible pointer type\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003calpine.DEB.2.00.0912062038070.5693@ayla.of.borg\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "7b199ca2025f4756daceec8802f07da636c524c9"
}
