)]}'
{
  "log": [
    {
      "commit": "0b54968f667585aa4b98a7225f4d4df63917703c",
      "tree": "6d354dade8bfe96f00bbba55eaf3c87fc9593fe4",
      "parents": [
        "effdb9492de01a51f8123e62e87e3330688f9bf1",
        "f3384b28a05624783b53836ccfed95ecde66a7ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:44:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:44:09 2008 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ftrace: fix trace_nop config select\n  ftrace: perform an initialization for ftrace to enable it\n"
    },
    {
      "commit": "d25141a818383b3c3b09f065698c544a7a0ec6e7",
      "tree": "fb2f868b42ccdde710ddf426e1c90f8ffcc83368",
      "parents": [
        "e74481e23283fb080d4591c258de20785cc3b6c3"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.vnet.ibm.com",
        "time": "Wed Oct 29 14:01:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "\u0027kill sig -1\u0027 must only apply to caller\u0027s namespace\n\nCurrently \"kill \u003csig\u003e -1\" kills processes in all namespaces and breaks the\nisolation of namespaces.  Earlier attempt to fix this was discussed at:\n\n\thttp://lkml.org/lkml/2008/7/23/148\n\nAs suggested by Oleg Nesterov in that thread, use \"task_pid_vnr() \u003e 1\"\ncheck since task_pid_vnr() returns 0 if process is outside the caller\u0027s\nnamespace.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nTested-by: Daniel Hokka Zakrisson \u003cdaniel@hozac.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce05fcc30ea41c85f9d50bee1ce289f7cb7fb223",
      "tree": "925dff669191e3a539febf74ad7aadc940ff3d88",
      "parents": [
        "84ad6d70001df969d7e8569dd18d98d9550277fb"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Oct 29 14:01:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "kernel/profile: fix profile_init() section mismatch\n\nprofile_init() calls in to alloc_bootmem() on early initialization.  While\nalloc_bootmem() is __init, the reference itself is safe in that it is\ntucked below a !slab_is_available() check.  So, flag profile_init() as\n__ref.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51308ee59dee1136ed599d875ea8968d7be55c91",
      "tree": "8976509c5fbf8171774e7eb7007cf0d4d00f0f83",
      "parents": [
        "00c2e63c31d0f431952ff2a671c5c6997dd4f8b2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Oct 29 14:00:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:45 2008 -0700"
      },
      "message": "freezer_cg: simplify freezer_change_state()\n\nJust call unfreeze_cgroup() if goal_state \u003d\u003d THAWED, and call\ntry_to_freeze_cgroup() if goal_state \u003d\u003d FROZEN.\n\nNo behavior has been changed.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00c2e63c31d0f431952ff2a671c5c6997dd4f8b2",
      "tree": "2277b400fef79e55c13d7045aa63d5bed9ad5883",
      "parents": [
        "80a6a2cf3bebcf20285cf05373b9c5ec96816577"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Oct 29 14:00:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:45 2008 -0700"
      },
      "message": "freezer_cg: use thaw_process() in unfreeze_cgroup()\n\nDon\u0027t duplicate the implementation of thaw_process().\n\n[akpm@linux-foundation.org: make __thaw_process() static]\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "80a6a2cf3bebcf20285cf05373b9c5ec96816577",
      "tree": "b934c6b9c55e7f0979312bdec9f679680d73aac1",
      "parents": [
        "7ccb97437bcc818d0ba6067513475f6ee8177a15"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Oct 29 14:00:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:45 2008 -0700"
      },
      "message": "freezer_cg: remove redundant check in freezer_can_attach()\n\nIt is sufficient to check if @task is frozen, and no need to check if the\noriginal freezer is frozen.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ccb97437bcc818d0ba6067513475f6ee8177a15",
      "tree": "5d9209002ea50383ffc256f89c25743552b5c637",
      "parents": [
        "df8bc08c192f00f155185bfd6f052d46a728814a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Oct 29 14:00:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:45 2008 -0700"
      },
      "message": "freezer_cg: fix improper BUG_ON() causing oops\n\nThe BUG_ON() should be protected by freezer-\u003elock, otherwise it can be\ntriggered easily when a task has been unfreezed but the corresponding\ncgroup hasn\u0027t been changed to FROZEN state.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3384b28a05624783b53836ccfed95ecde66a7ad",
      "tree": "e5fa8281ef1e4a9e638160204291556d42ed8a06",
      "parents": [
        "0b6e4d56bf71866a2b58daa8323cf747988ce7e4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Oct 29 11:15:57 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 29 17:21:05 2008 +0100"
      },
      "message": "ftrace: fix trace_nop config select\n\nImpact: build fix on non-function-tracing architectures\n\nThe trace_nop is the tracer that is defined when no tracer is set in\nthe ftrace infrastructure.\n\nThe trace_nop was mistakenly selected by HAVE_FTRACE due to the confusion\nbetween ftrace infrastructure and the ftrace function tracer (which has\nbeen solved by renaming the function tracer).\n\nThis patch changes the select to the approriate TRACING.\n\nThis patch should fix compile errors on architectures that do not define\nthe FUNCTION_TRACER.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b6e4d56bf71866a2b58daa8323cf747988ce7e4",
      "tree": "abda53ec941c887283d496abf5d364ba80f72d5e",
      "parents": [
        "e946217e4fdaa67681bbabfa8e6b18641921f750"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Oct 28 20:17:38 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 28 19:15:58 2008 +0100"
      },
      "message": "ftrace: perform an initialization for ftrace to enable it\n\nImpact: corrects a bug which made the non-dyn function tracer not functional\n\nWith latest git, the non-dynamic function tracer didn\u0027t get any trace.\n\nThe problem was the fact that ftrace_enabled wasn\u0027t initialized to 1\nbecause ftrace hasn\u0027t any init function when DYNAMIC_FTRACE is disabled.\n\nSo when a tracer tries to register an ftrace_ops struct,\n__register_ftrace_function failed to set the hook.\n\nThis patch corrects it by setting an init function to initialize\nftrace during the boot.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e946217e4fdaa67681bbabfa8e6b18641921f750",
      "tree": "057ad6cb5869e20db7b93f154319560b55cbc725",
      "parents": [
        "a1865769254dd4eefbc1e857d17bc2a77d5f8580",
        "60063a66236c15f5613f91390631e06718689782"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:52:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:52:25 2008 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits)\n  ftrace: fix current_tracer error return\n  tracing: fix a build error on alpha\n  ftrace: use a real variable for ftrace_nop in x86\n  tracing/ftrace: make boot tracer select the sched_switch tracer\n  tracepoint: check if the probe has been registered\n  asm-generic: define DIE_OOPS in asm-generic\n  trace: fix printk warning for u64\n  ftrace: warning in kernel/trace/ftrace.c\n  ftrace: fix build failure\n  ftrace, powerpc, sparc64, x86: remove notrace from arch ftrace file\n  ftrace: remove ftrace hash\n  ftrace: remove mcount set\n  ftrace: remove daemon\n  ftrace: disable dynamic ftrace for all archs that use daemon\n  ftrace: add ftrace warn on to disable ftrace\n  ftrace: only have ftrace_kill atomic\n  ftrace: use probe_kernel\n  ftrace: comment arch ftrace code\n  ftrace: return error on failed modified text.\n  ftrace: dynamic ftrace process only text section\n  ...\n"
    },
    {
      "commit": "0d8762c9ee40cf83d5dbf3a22843bc566912b592",
      "tree": "d3ae691a55226e3671caa1f837e127693f6742e8",
      "parents": [
        "cf76dddb22c019f03ada6479210f894f19bd591b",
        "6afe40b4dace385d7ba2faf24b352f066f3b71bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:49:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:49:27 2008 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: fix irqs on/off ip tracing\n  lockdep: minor fix for debug_show_all_locks()\n  x86: restore the old swiotlb alloc_coherent behavior\n  x86: use GFP_DMA for 24bit coherent_dma_mask\n  swiotlb: remove panic for alloc_coherent failure\n  xen: compilation fix of drivers/xen/events.c on IA64\n  xen: portability clean up and some minor clean up for xencomm.c\n  xen: don\u0027t reload cr3 on suspend\n  kernel/resource: fix reserve_region_with_split() section mismatch\n  printk: remove unused code from kernel/printk.c\n"
    },
    {
      "commit": "cf76dddb22c019f03ada6479210f894f19bd591b",
      "tree": "5a2e478fcf7d001f2d369141b9698398c352bf5e",
      "parents": [
        "8ca6215502462f564d7bcae2d8dcc825aa95d743",
        "3786fc710c32b61464c322e5cd0c3d1d34ae72d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:48:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:48:25 2008 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: make variable static\n"
    },
    {
      "commit": "8ca6215502462f564d7bcae2d8dcc825aa95d743",
      "tree": "1534f8ad77640ab6f6d9471679b6e4c2d11e739c",
      "parents": [
        "f8245e91a5121acc435e509aa56cd04d445a74c7",
        "4078e359c4688541a0093fde0dff35dc7190c4f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:46:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 28 09:46:20 2008 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: fix documentation reference for sched_min_granularity_ns\n  sched: virtual time buddy preemption\n  sched: re-instate vruntime based wakeup preemption\n  sched: weaken sync hint\n  sched: more accurate min_vruntime accounting\n  sched: fix a find_busiest_group buglet\n  sched: add CONFIG_SMP consistency\n"
    },
    {
      "commit": "60063a66236c15f5613f91390631e06718689782",
      "tree": "3625c15ade69e4f8cbb85d737290da1312123241",
      "parents": [
        "21798a84ab383cdac0e7ee3368e0792b718b867d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Oct 28 10:44:24 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 28 16:33:47 2008 +0100"
      },
      "message": "ftrace: fix current_tracer error return\n\nThe commit (in linux-tip) c2931e05ec5965597cbfb79ad332d4a29aeceb23\n ( ftrace: return an error when setting a nonexistent tracer )\nadded useful code that would error when a bad tracer was written into\nthe current_tracer file.\n\nBut this had a bug if the amount written was more than the amount read by\nthat code. The first iteration would set the tracer correctly, but since\nit did not consume the rest of what was written (usually whitespace), the\nuserspace utility would continue to write what was not consumed. This\nsecond iteration would fail to find a tracer and return -EINVAL. Funny\nthing is that the tracer would have already been set.\n\nThis patch just consumes all the data that is written to the file.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6afe40b4dace385d7ba2faf24b352f066f3b71bf",
      "tree": "017e672e83a1257b084036c2e79adef95a81b9c3",
      "parents": [
        "46fec7ac40e452a2ea5e63648d98b6bb2b5898f9"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Oct 28 11:14:58 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 28 11:19:07 2008 +0100"
      },
      "message": "lockdep: fix irqs on/off ip tracing\n\nImpact: fix lockdep lock-api-caller output when irqsoff tracing is enabled\n\n81d68a96 \"ftrace: trace irq disabled critical timings\" added wrappers around\ntrace_hardirqs_on/off_caller. However these functions use\n__builtin_return_address(0) to figure out which function actually disabled\nor enabled irqs. The result is that we save the ips of trace_hardirqs_on/off\ninstead of the real caller. Not very helpful.\n\nHowever since the patch from Steven the ip already gets passed. So use that\nand get rid of __builtin_return_address(0) in these two functions.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "46fec7ac40e452a2ea5e63648d98b6bb2b5898f9",
      "tree": "acde64c08983ff2421c33144c0ce1215218fde9f",
      "parents": [
        "03967c5267b0e7312d1d55dc814d94cf190ca573"
      ],
      "author": {
        "name": "qinghuang feng",
        "email": "qhfeng.kernel@gmail.com",
        "time": "Tue Oct 28 17:24:28 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 28 10:30:04 2008 +0100"
      },
      "message": "lockdep: minor fix for debug_show_all_locks()\n\nWhen we failed to get tasklist_lock eventually (count equals 0),\nwe should only print \" ignoring it.\\n\", and not print\n\" locked it.\\n\" needlessly.\n\nSigned-off-by: Qinghuang Feng \u003cqhfeng.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "21798a84ab383cdac0e7ee3368e0792b718b867d",
      "tree": "3b13df7175f795b5d8020ad0c00c432bde4d606a",
      "parents": [
        "8115f3f0c939c5db0fe3c6c6c58911fd3a205b1e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Oct 28 09:43:26 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 28 09:53:28 2008 +0100"
      },
      "message": "tracing: fix a build error on alpha\n\nImpact: build fix on Alpha\n\nWhen tracing is enabled, some arch have included \u003clinux/irqflags.h\u003e\non their \u003casm/system.h\u003e but others like alpha or m68k don\u0027t.\n\nBuild error on alpha:\n\nkernel/trace/trace.c: In function \u0027tracing_cpumask_write\u0027:\nkernel/trace/trace.c:2145: error: implicit declaration of function \u0027raw_local_irq_disable\u0027\nkernel/trace/trace.c:2162: error: implicit declaration of function \u0027raw_local_irq_enable\u0027\n\nTested on Alpha through a cross-compiler (should correct a similar issue on m68k).\n\nReported-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ea31e72d753e5817a97de552f152d0cb55c7defc",
      "tree": "a709254a0cd46c764f69649153de26b1d1233082",
      "parents": [
        "f66af459a931f25807e1df7915b2b66bb5978d82"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Oct 22 19:26:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 27 16:47:13 2008 +0100"
      },
      "message": "tracing/ftrace: make boot tracer select the sched_switch tracer\n\nImpact: build fix\n\nIf the boot tracer is selected but not the sched_switch,\nthere will be a build failure:\n\n kernel/built-in.o: In function `boot_trace_init\u0027:\n trace_boot.c:(.text+0x5ee38): undefined reference to `sched_switch_trace\u0027\n kernel/built-in.o: In function `disable_boot_trace\u0027:\n (.text+0x5eee1): undefined reference to `tracing_stop_cmdline_record\u0027\n kernel/built-in.o: In function `enable_boot_trace\u0027:\n (.text+0x5ef11): undefined reference to `tracing_start_cmdline_record\u0027\n\nThis patch fixes it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f66af459a931f25807e1df7915b2b66bb5978d82",
      "tree": "bb88917429fe1ea4f6d6e088ead040b25d205a86",
      "parents": [
        "5209f08dc8e5f520ca81b87fa9a7142f58a109f4"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Oct 22 19:14:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 27 16:45:46 2008 +0100"
      },
      "message": "tracepoint: check if the probe has been registered\n\nImpact: fix kernel crash that can trigger during tracing\n\nIf we try to remove a probe that has not been already registered,\nthe tracepoint_entry_remove_probe() function will dereference a NULL\npointer.\n\nCheck the probe before removing it to avoid crashes.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e2862c9470beb842d3f1c1965b03a2112114c160",
      "tree": "9e906a19340ba4f4d4145977c82a2b1a46d4edd7",
      "parents": [
        "4944dd62de21230af039eda7cd218e9a09021d11"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Oct 27 17:43:28 2008 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 27 11:31:58 2008 +0100"
      },
      "message": "trace: fix printk warning for u64\n\nA powerpc ppc64_defconfig build produces these warnings:\n\nkernel/trace/ring_buffer.c: In function \u0027rb_add_time_stamp\u0027:\nkernel/trace/ring_buffer.c:969: warning: format \u0027%llu\u0027 expects type \u0027long long unsigned int\u0027, but argument 2 has type \u0027u64\u0027\nkernel/trace/ring_buffer.c:969: warning: format \u0027%llu\u0027 expects type \u0027long long unsigned int\u0027, but argument 3 has type \u0027u64\u0027\nkernel/trace/ring_buffer.c:969: warning: format \u0027%llu\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027u64\u0027\n\nJust cast the u64s to unsigned long long like we do everywhere else.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4944dd62de21230af039eda7cd218e9a09021d11",
      "tree": "bac70f7bab8506c7e1b0408bacbdb0b1d77262e9",
      "parents": [
        "f17845e5d97ead8fbdadfd40039e058ec7cf4a42",
        "0173a3265b228da319ceb9c1ec6a5682fd1b2d92"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 27 10:50:54 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 27 10:50:54 2008 +0100"
      },
      "message": "Merge commit \u0027v2.6.28-rc2\u0027 into tracing/urgent\n"
    },
    {
      "commit": "2077776641b6ffb0049f13018d2e162340ec51c7",
      "tree": "7fa3a58a4a8645f7a756e1f05c3f1d48ed6b639b",
      "parents": [
        "b1cd2ee3b95f1c3108c68c82342c614e58ce1f13"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Oct 21 16:11:20 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 26 09:38:17 2008 -0700"
      },
      "message": "cgroup: remove unused variable\n\n/scratch/sfr/next/kernel/cgroup.c: In function \u0027cgroup_tasks_start\u0027:\n/scratch/sfr/next/kernel/cgroup.c:2107: warning: unused variable \u0027i\u0027\n\nIntroduced in commit cc31edceee04a7b87f2be48f9489ebb72d264844 \"cgroups:\nconvert tasks file to use a seq_file with shared pid array\".\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4403b406d4369a275d483ece6ddee0088cc0d592",
      "tree": "caefd6b7aabc1c517942be1abf25d841b181f323",
      "parents": [
        "e013e13bf605b9e6b702adffbe2853cfc60e7806"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "message": "Revert \"Call init_workqueues before pre smp initcalls.\"\n\nThis reverts commit a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635 by moving\nthe call to init_workqueues() back where it belongs - after SMP has been\ninitialized.\n\nIt also moves stop_machine_init() - which needs workqueues - to a later\nphase using a core_initcall() instead of early_initcall().  That should\nsatisfy all ordering requirements, and was apparently the reason why\ninit_workqueues() was moved to be too early.\n\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f17845e5d97ead8fbdadfd40039e058ec7cf4a42",
      "tree": "14c053143dad362fce72cc77f2beb41ab6c43dec",
      "parents": [
        "66b0de3569b00f61978782b9f97aa4803dbec0fb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:47:10 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:52:44 2008 +0200"
      },
      "message": "ftrace: warning in kernel/trace/ftrace.c\n\nthis warning:\n\n  kernel/trace/ftrace.c:189: warning: ‘frozen_record_count’ defined but not used\n\ntriggers because frozen_record_count is only used in the KCONFIG_MARKERS\ncase. Move the variable it there.\n\nAlas, this frozen-record facility seems to have little use. The\nfrozen_record_count variable is not used by anything, nor the flags.\n\nSo this section might need a bit of dead-code-removal care as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3f3a490480d8ab96e0fe30a41f80f14e6a0c579d",
      "tree": "addbfb1207d816b1e1f5e4ab75f95a08c7b15202",
      "parents": [
        "464b75273f64be7c81fee975bd6ca9593df3427b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Oct 24 11:06:16 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:51:03 2008 +0200"
      },
      "message": "sched: virtual time buddy preemption\n\nSince we moved wakeup preemption back to virtual time, it makes sense to move\nthe buddy stuff back as well. The purpose of the buddy scheduling is to allow\na quickly scheduling pair of tasks to run away from the group as far as a\nregular busy task would be allowed under wakeup preemption.\n\nThis has the advantage that the pair can ping-pong for a while, enjoying\ncache-hotness. Without buddy scheduling other tasks would interleave destroying\nthe cache.\n\nAlso, it saves a word in cfs_rq.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "464b75273f64be7c81fee975bd6ca9593df3427b",
      "tree": "c7efd037f65129ba9bff5b8a4a61d506e904715f",
      "parents": [
        "0d13033bc9257fe65c1aa25e84568b1608da0901"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Oct 24 11:06:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:51:02 2008 +0200"
      },
      "message": "sched: re-instate vruntime based wakeup preemption\n\nThe advantage is that vruntime based wakeup preemption has a better\nconceptual model. Here wakeup_gran \u003d 0 means: preempt when \u0027fair\u0027.\nTherefore wakeup_gran is the granularity of unfairness we allow in order\nto make progress.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0d13033bc9257fe65c1aa25e84568b1608da0901",
      "tree": "312a3bbad942d2c27ee7e394bd5328dd9fe58fe1",
      "parents": [
        "1af5f730fc1bf7c62ec9fb2d307206e18bf40a69"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Fri Oct 24 11:06:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:51:01 2008 +0200"
      },
      "message": "sched: weaken sync hint\n\nMysql+oltp and pgsql+oltp peaks are still shifted right. The below puts\nthe peaks back to 1 client/server pair per core.\n\nUse the avg_overlap information to weaken the sync hint.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1af5f730fc1bf7c62ec9fb2d307206e18bf40a69",
      "tree": "6b9a1e5aa380abaaca68d3ba427ecec1a3b51a88",
      "parents": [
        "01c8c57d668d94f1036d9ab11a22aa24ca16a35d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Oct 24 11:06:13 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:51:00 2008 +0200"
      },
      "message": "sched: more accurate min_vruntime accounting\n\nMike noticed the current min_vruntime tracking can go wrong and skip the\ncurrent task. If the only remaining task in the tree is a nice 19 task\nwith huge vruntime, new tasks will be inserted too far to the right too,\ncausing some interactibity issues.\n\nmin_vruntime can only change due to the leftmost entry disappearing\n(dequeue_entity()), or by the leftmost entry being incremented past the\nnext entry, which elects a new leftmost (__update_curr())\n\nDue to the current entry not being part of the actual tree, we have to\ncompare the leftmost tree entry with the current entry, and take the\nleftmost of these two.\n\nSo create a update_min_vruntime() function that takes computes the\nleftmost vruntime in the system (either tree of current) and increases\nthe cfs_rq-\u003emin_vruntime if the computed value is larger than the\npreviously found min_vruntime. And call this from the two sites we\u0027ve\nidentified that can change min_vruntime.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "01c8c57d668d94f1036d9ab11a22aa24ca16a35d",
      "tree": "a5bad4df146982e55bdd9dba73912f6bace036df",
      "parents": [
        "8c82a17e9c924c0e9f13e75e4c2f6bca19a4b516"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Oct 24 11:06:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:50:59 2008 +0200"
      },
      "message": "sched: fix a find_busiest_group buglet\n\nIn one of the group load balancer patches:\n\n\tcommit 408ed066b11cf9ee4536573b4269ee3613bd735e\n\tAuthor: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n\tDate:   Fri Jun 27 13:41:28 2008 +0200\n\tSubject: sched: hierarchical load vs find_busiest_group\n\nThe following change:\n\n-               if (max_load - this_load + SCHED_LOAD_SCALE_FUZZ \u003e\u003d\n+               if (max_load - this_load + 2*busiest_load_per_task \u003e\u003d\n                                        busiest_load_per_task * imbn) {\n\nmade the condition always true, because imbn is [1,2].\nTherefore, remove the 2*, and give the it a fair chance.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8c82a17e9c924c0e9f13e75e4c2f6bca19a4b516",
      "tree": "d535f46a917e14e90deccb29ad00aac016ad18dd",
      "parents": [
        "4ce72a2c063a7fa8e42a9435440ae3364115a58d",
        "57f8f7b60db6f1ed2c6918ab9230c4623a9dbe37"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:48:46 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 24 12:48:46 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.28-rc1\u0027 into sched/urgent\n"
    },
    {
      "commit": "bea92112415635ecb7e681355834413c7c048f67",
      "tree": "b725a07dfe256d9bb2c28d3cb8b810a2a1be17d7",
      "parents": [
        "acff181d3574244e651913df77332e897b88bff4"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Oct 22 19:31:11 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 21:54:34 2008 +0200"
      },
      "message": "kernel/resource: fix reserve_region_with_split() section mismatch\n\nImpact: cleanup, small kernel text size reduction, no functionality changed\n\nreserve_region_with_split() calls in to __reserve_region_with_split(),\nwhich is an __init function. The only caller of reserve_region_with_split()\nis an __init function, so make it __init too.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "acff181d3574244e651913df77332e897b88bff4",
      "tree": "ff3ccaeb76856d7b6e14a6bf35f3d356be34adb9",
      "parents": [
        "d2441183dc222d12961ff2201f5086c846505d93"
      ],
      "author": {
        "name": "roel kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Oct 21 19:49:09 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 21:54:29 2008 +0200"
      },
      "message": "printk: remove unused code from kernel/printk.c\n\nboth log_buf_copy() and log_buf_len are unused.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d2441183dc222d12961ff2201f5086c846505d93",
      "tree": "dcede8bab98871d7fd4739a063c533d6fd79921d",
      "parents": [
        "88ed86fee6651033de9b7038dac7869a9f19775a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:07:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:09:00 2008 -0700"
      },
      "message": "Fix compile warning in kernel/params.c\n\nMove free_module_param_attrs() into the CONFIG_MODULES section, since\nit\u0027s only used inside there. Thus avoiding the warning\n\n  kernel/params.c:514: warning: \u0027free_module_param_attrs\u0027 defined but not used\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88ed86fee6651033de9b7038dac7869a9f19775a",
      "tree": "38b638d2e7cba110ec271275738f221feb7e0a37",
      "parents": [
        "3856d30ded1fe43c6657927ebad402d25cd128f4",
        "59c7572e82d69483a66eaa67b46548baeb69ecf4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:04:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:04:37 2008 -0700"
      },
      "message": "Merge branch \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc\n\n* \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc: (35 commits)\n  proc: remove fs/proc/proc_misc.c\n  proc: move /proc/vmcore creation to fs/proc/vmcore.c\n  proc: move pagecount stuff to fs/proc/page.c\n  proc: move all /proc/kcore stuff to fs/proc/kcore.c\n  proc: move /proc/schedstat boilerplate to kernel/sched_stats.h\n  proc: move /proc/modules boilerplate to kernel/module.c\n  proc: move /proc/diskstats boilerplate to block/genhd.c\n  proc: move /proc/zoneinfo boilerplate to mm/vmstat.c\n  proc: move /proc/vmstat boilerplate to mm/vmstat.c\n  proc: move /proc/pagetypeinfo boilerplate to mm/vmstat.c\n  proc: move /proc/buddyinfo boilerplate to mm/vmstat.c\n  proc: move /proc/vmallocinfo to mm/vmalloc.c\n  proc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c\n  proc: move /proc/slab_allocators boilerplate to mm/slab.c\n  proc: move /proc/interrupts boilerplate code to fs/proc/interrupts.c\n  proc: move /proc/stat to fs/proc/stat.c\n  proc: move rest of /proc/partitions code to block/genhd.c\n  proc: move /proc/cpuinfo code to fs/proc/cpuinfo.c\n  proc: move /proc/devices code to fs/proc/devices.c\n  proc: move rest of /proc/locks to fs/locks.c\n  ...\n"
    },
    {
      "commit": "1f6d6e8ebe73ba9d9d4c693f7f6f50f661dbd6e4",
      "tree": "be7a2d20b1728da5a0d844a6f4cd382b2c2569fb",
      "parents": [
        "db563fc2e80534f98c7f9121a6f7dfe41f177a79",
        "268a3dcfea2077fca60d3715caa5c96f9b5e6ea7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "message": "Merge branch \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)\n  hrtimers: add missing docbook comments to struct hrtimer\n  hrtimers: simplify hrtimer_peek_ahead_timers()\n  hrtimers: fix docbook comments\n  DECLARE_PER_CPU needs linux/percpu.h\n  hrtimers: fix typo\n  rangetimers: fix the bug reported by Ingo for real\n  rangetimer: fix BUG_ON reported by Ingo\n  rangetimer: fix x86 build failure for the !HRTIMERS case\n  select: fix alpha OSF wrapper\n  select: fix alpha OSF wrapper\n  hrtimer: peek at the timer queue just before going idle\n  hrtimer: make the futex() system call use the per process slack value\n  hrtimer: make the nanosleep() syscall use the per process slack\n  hrtimer: fix signed/unsigned bug in slack estimator\n  hrtimer: show the timer ranges in /proc/timer_list\n  hrtimer: incorporate feedback from Peter Zijlstra\n  hrtimer: add a hrtimer_start_range() function\n  hrtimer: another build fix\n  hrtimer: fix build bug found by Ingo\n  hrtimer: make select() and poll() use the hrtimer range feature\n  ...\n"
    },
    {
      "commit": "22484856402bfa1ff3defe47f6029ab0418240d9",
      "tree": "140c67bf59674da350a7b51765d6ff7eb101b597",
      "parents": [
        "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
        "56b26add02b4bdea81d5e0ebda60db1fe3311ad4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev: (66 commits)\n  [PATCH] kill the rest of struct file propagation in block ioctls\n  [PATCH] get rid of struct file use in blkdev_ioctl() BLKBSZSET\n  [PATCH] get rid of blkdev_locked_ioctl()\n  [PATCH] get rid of blkdev_driver_ioctl()\n  [PATCH] sanitize blkdev_get() and friends\n  [PATCH] remember mode of reiserfs journal\n  [PATCH] propagate mode through swsusp_close()\n  [PATCH] propagate mode through open_bdev_excl/close_bdev_excl\n  [PATCH] pass fmode_t to blkdev_put()\n  [PATCH] kill the unused bsize on the send side of /dev/loop\n  [PATCH] trim file propagation in block/compat_ioctl.c\n  [PATCH] end of methods switch: remove the old ones\n  [PATCH] switch sr\n  [PATCH] switch sd\n  [PATCH] switch ide-scsi\n  [PATCH] switch tape_block\n  [PATCH] switch dcssblk\n  [PATCH] switch dasd\n  [PATCH] switch mtd_blkdevs\n  [PATCH] switch mmc\n  ...\n"
    },
    {
      "commit": "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
      "tree": "af19ed28db83e8f52690872ac99336da1cf2fd3b",
      "parents": [
        "5b34653963de7a6d0d8c783527457d68fddc60fb",
        "fd217f4d70172c526478f2bc76859e909fdfa674"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (46 commits)\n  [PATCH] fs: add a sanity check in d_free\n  [PATCH] i_version: remount support\n  [patch] vfs: make security_inode_setattr() calling consistent\n  [patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n  [PATCH] move executable checking into -\u003epermission()\n  [PATCH] fs/dcache.c: update comment of d_validate()\n  [RFC PATCH] touch_mnt_namespace when the mount flags change\n  [PATCH] reiserfs: add missing llseek method\n  [PATCH] fix -\u003ellseek for more directories\n  [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n  [PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n  [PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n  [PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n  [PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n  [PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n  [PATCH] get rid of on-stack dentry in udf\n  [PATCH 2/2] anondev: switch to IDA\n  [PATCH 1/2] anondev: init IDR statically\n  [JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n  [PATCH] Optimise NFS readdir hack slightly.\n  ...\n"
    },
    {
      "commit": "a5344876065e047d507800d0801a637d68d3b129",
      "tree": "240173ed2f588a1c61aff9bb513255f99b0cd6a2",
      "parents": [
        "296e1ce0dc36bb106c139e25482d02da43c70e71",
        "8163bcac779f62c6bf847caed9bce905db0693fb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  stop_machine: fix error code handling on multiple cpus\n  stop_machine: use workqueues instead of kernel threads\n  workqueue: introduce create_rt_workqueue\n  Call init_workqueues before pre smp initcalls.\n  Make panic\u003d and panic_on_oops into core_params\n  Make initcall_debug a core_param\n  core_param() for genuinely core kernel parameters\n  param: Fix duplicate module prefixes\n  module: check kernel param length at compile time, not runtime\n  Remove stop_machine during module load v2\n  module: simplify load_module.\n"
    },
    {
      "commit": "b14ea38e13686799b9d2545d467a0ec84732981c",
      "tree": "0decf621cf4a56eb9c1a2426edb7399bebb4a2e4",
      "parents": [
        "6770ab5cf506f0f00c17a5f063c5506bdc1eb170",
        "c4bd822e7b12a9008241d76db45b665f2fef180c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:57:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:57:16 2008 -0700"
      },
      "message": "Merge branch \u0027v28-timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027v28-timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  NOHZ: fix thinko in the timer restart code path\n"
    },
    {
      "commit": "f2e4bd2b37bf072babc6a1f6c2a7ef53b7b046ad",
      "tree": "65d0ab5002c5f748a3fbca803e99b2f271072021",
      "parents": [
        "133e887f90208d339088dd60cb1d08a72ba27288",
        "5f86515158ca86182c1dbecd546f1848121ba135"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:38:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:38:55 2008 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcupdate: fix bug of rcu_barrier*()\n  profiling: fix !procfs build\n\nFixed trivial conflicts in \u0027include/linux/profile.h\u0027\n"
    },
    {
      "commit": "133e887f90208d339088dd60cb1d08a72ba27288",
      "tree": "4f6bab9d13df7fac50bc7d699d8486f441deb428",
      "parents": [
        "e82cff752f57810a2259415ad2e9087c2d69484c",
        "0c4b83da58ec2e96ce9c44c211d6eac5f9dae478"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:37:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:37:16 2008 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: disable the hrtick for now\n  sched: revert back to per-rq vruntime\n  sched: fair scheduler should not resched rt tasks\n  sched: optimize group load balancer\n  sched: minor fast-path overhead reduction\n  sched: fix the wrong mask_len, cleanup\n  sched: kill unused scheduler decl.\n  sched: fix the wrong mask_len\n  sched: only update rq-\u003eclock while holding rq-\u003elock\n"
    },
    {
      "commit": "e82cff752f57810a2259415ad2e9087c2d69484c",
      "tree": "9c93e9b2e42c9a95fd6d75010ac958ed9cf1dd40",
      "parents": [
        "b80de369aa5c7c8ce7ff7a691e86e1dcc89accc6",
        "b6f3b7803a9231eddc36d0a2a6d2d8105ef89344"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:36:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 09:36:55 2008 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: NULL struct irq_desc\u0027s member \u0027name\u0027 in dynamic_irq_cleanup()\n  genirq: fix off by one and coding style\n  genirq: fix set_irq_type() when recording trigger type\n"
    },
    {
      "commit": "66b0de3569b00f61978782b9f97aa4803dbec0fb",
      "tree": "9ffcb1a8481e7337dbe2d2ec321a3b4a427f84d7",
      "parents": [
        "15adc048986f6b54b6044f2b6fc4b48f49413e2f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:11:03 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:11:03 2008 +0200"
      },
      "message": "ftrace: fix build failure\n\nfix:\n\n kernel/trace/ftrace.c: In function \u0027ftrace_release\u0027:\n kernel/trace/ftrace.c:271: error: implicit declaration of function \u0027ftrace_release_hash\u0027\n\nrelease_hash is not needed without dftraced.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5aadf7f14c1acc94956aa257e018e9de3881f41",
      "tree": "5add08715374d105dc16f4135e2445e4a3b65a17",
      "parents": [
        "3b5d5c6b0ccba733a313f8752ebc3f8015628ba3"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 13:23:43 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:06:12 2008 +0400"
      },
      "message": "proc: move /proc/schedstat boilerplate to kernel/sched_stats.h\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "3b5d5c6b0ccba733a313f8752ebc3f8015628ba3",
      "tree": "7277d87d64b8be615013457ab0cdb178d41a9efe",
      "parents": [
        "31d85ab28e71b0c938e0ef48af45747e80d99b53"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 13:19:27 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:03:13 2008 +0400"
      },
      "message": "proc: move /proc/modules boilerplate to kernel/module.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "08f5ac906d2c0faf96d608c54a0b03177376da8d",
      "tree": "ee43d94b168b9c3b757db83aea78b45eb3a556c1",
      "parents": [
        "4d296c24326783bff1282ac72f310d8bac8df413"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:33:07 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:24 2008 +0200"
      },
      "message": "ftrace: remove ftrace hash\n\nThe ftrace hash was used by the ftrace_daemon code. The record ip function\nwould place the calling address (ip) into the hash. The daemon would later\nread the hash and modify that code.\n\nThe hash complicates the code. This patch removes it.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4d296c24326783bff1282ac72f310d8bac8df413",
      "tree": "75751fdafc0fa5818a926478e78dd9e54f1cf872",
      "parents": [
        "cb7be3b2fc2cf089ee52b16f0fd9ebb29e9944e1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:33:06 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:23 2008 +0200"
      },
      "message": "ftrace: remove mcount set\n\nThe arch dependent function ftrace_mcount_set was only used by the daemon\nstart up code. This patch removes it.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb7be3b2fc2cf089ee52b16f0fd9ebb29e9944e1",
      "tree": "4d5e4c1d1211ee7be1a583a9f9c4b33b7d4ce2ee",
      "parents": [
        "07c4cc1cdaa08fcb6c0275dd7be49eae37260169"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:33:05 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:22 2008 +0200"
      },
      "message": "ftrace: remove daemon\n\nThe ftrace daemon is complex and error prone.  This patch strips it out\nof the code.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6912896e994ddaf06cc0f6d3f2098bc4b59bdd84",
      "tree": "5f60e432eb5ec6cf0268ddc4d96f901578886c29",
      "parents": [
        "81adbdc029ecc416d56563e7f159100181dd711d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:33:03 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:20 2008 +0200"
      },
      "message": "ftrace: add ftrace warn on to disable ftrace\n\nAdd ftrace warn on to disable ftrace as well as report a warning.\n\n[ Thanks to Andrew Morton for suggesting using the WARN_ON return value ]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "81adbdc029ecc416d56563e7f159100181dd711d",
      "tree": "ff7ed7b0fb284c22eb30e690a85e2e9e083c4162",
      "parents": [
        "ab9a0918cbf0fa8883301838df8dbc8fc085ff50"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:33:02 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:19 2008 +0200"
      },
      "message": "ftrace: only have ftrace_kill atomic\n\nWhen an anomaly is detected, we need a way to completely disable\nftrace. Right now we have two functions: ftrace_kill and ftrace_kill_atomic.\nThe ftrace_kill tries to do it in a \"nice\" way by converting everything\nback to a nop.\n\nThe \"nice\" way is dangerous itself, so this patch removes it and only\nhas the \"atomic\" version, which is all that is needed.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "593eb8a2d63e95772a5f22d746f18a997c5ee463",
      "tree": "2a99c61ccffc2c0fd280bb2e5f81ac2f22e2f471",
      "parents": [
        "34698bcbdf7b0629d6c873b5da7c63073fb45361"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:32:59 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 16:00:13 2008 +0200"
      },
      "message": "ftrace: return error on failed modified text.\n\nHave the ftrace_modify_code return error values:\n\n  -EFAULT on error of reading the address\n\n  -EINVAL if what is read does not match what it expected\n\n  -EPERM  if the write fails to update after a successful match.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6e62775ece1c83a84d86df44cfd8ea3e6c96ce23",
      "tree": "2eac2401fd8ca9372e6b15cc656a87d0b75856fc",
      "parents": [
        "cf9887f102541b8a0adb73f7da9c28d090622010"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:28:09 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:30:41 2008 +0400"
      },
      "message": "proc: move /proc/execdomains to kernel/exec_domain.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "98bc993f99e51467057ef699e47fec020f24d233",
      "tree": "9d1d1dd5b1116b1cff0b32884ca6165ae29d236c",
      "parents": [
        "421748ecde8e69a6364e5ae66eb3bf87e1f995c0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 01:06:21 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:53 2008 -0400"
      },
      "message": "[PATCH] get rid of nameidata in audit_tree\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6ae2a0765ab764da11cc305058ee5333810228f4",
      "tree": "c2c3b285eb55c2b1850ecb04e0348323b70acee5",
      "parents": [
        "06d1cd267ca0a2a76beb9a762465572dd3d0cce6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 13 10:22:06 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 17:02:09 2008 +0200"
      },
      "message": "ring-buffer: fix free page\n\nThe pages of a buffer was originally pointing to the page struct, it\nnow points to the page address. The freeing of the page still uses\nthe page frame free \"__free_page\" instead of the correct free_page to\nthe address.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ce72a2c063a7fa8e42a9435440ae3364115a58d",
      "tree": "427b25960945524a205c7d8ed20ed5f02325175e",
      "parents": [
        "0c4b83da58ec2e96ce9c44c211d6eac5f9dae478"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Oct 22 15:25:26 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 10:01:52 2008 +0200"
      },
      "message": "sched: add CONFIG_SMP consistency\n\na patch from Henrik Austad did this:\n\n\u003e\u003e Do not declare select_task_rq as part of sched_class when CONFIG_SMP is\n\u003e\u003e not set.\n\nPeter observed:\n\n\u003e While a proper cleanup, could you do it by re-arranging the methods so\n\u003e as to not create an additional ifdef?\n\nDo not declare select_task_rq and some other methods as part of sched_class\nwhen CONFIG_SMP is not set.\n\nAlso gather those methods to avoid CONFIG_SMP mess.\n\nIdea-by: Henrik Austad \u003chenrik.austad@gmail.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Henrik Austad \u003chenrik@austad.us\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "268a3dcfea2077fca60d3715caa5c96f9b5e6ea7",
      "tree": "c2232774508424e677e27f296090a68c775e4669",
      "parents": [
        "c4bd822e7b12a9008241d76db45b665f2fef180c",
        "592aa999d6a272856c9bfbdaac0cfba1bb37c24c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 22 09:48:06 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 22 09:48:06 2008 +0200"
      },
      "message": "Merge branch \u0027timers/range-hrtimers\u0027 into v28-range-hrtimers-for-linus-v2\n\nConflicts:\n\n\tkernel/time/tick-sched.c\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "17d80fd07d35ae1d231b3378ee4f00ace54f9d31",
      "tree": "db09cfdb86d3bbced3a32588decabcb87ca02d19",
      "parents": [
        "debfcaf93ed500a051489db6646d71f29fe86a68"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Oct 21 16:31:18 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 09:08:56 2008 +0200"
      },
      "message": "tracing: create tracers menu\n\nWe seem to have plenty tracers, lets create a menu and not clutter\nthe already cluttered debug menu more.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "debfcaf93ed500a051489db6646d71f29fe86a68",
      "tree": "7ba189b6dd654022ecc655b68e3c0a4573627706",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4",
        "81520a1b0649d0701205b818714a8c1e1cfbbb5b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 09:08:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 09:08:14 2008 +0200"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 into tracing/urgent\n"
    },
    {
      "commit": "3786fc710c32b61464c322e5cd0c3d1d34ae72d0",
      "tree": "1525973d100e88edab390634508b4c0d9715d5b8",
      "parents": [
        "b6f3b7803a9231eddc36d0a2a6d2d8105ef89344"
      ],
      "author": {
        "name": "roel kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Oct 21 19:49:09 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 22 07:37:17 2008 +0200"
      },
      "message": "irq: make variable static\n\nThis variable is only used in the source file, so make it static.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8163bcac779f62c6bf847caed9bce905db0693fb",
      "tree": "8fcf397c504fadbebecde09901aacef06b4551d8",
      "parents": [
        "c9583e55fa2b08a230c549bd1e3c0bde6c50d9cc"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Oct 22 10:00:26 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:26 2008 +1100"
      },
      "message": "stop_machine: fix error code handling on multiple cpus\n\nUsing |\u003d for updating a value which might be updated on several cpus\nconcurrently will not always work since we need to make sure that the\nupdate happens atomically.\nTo fix this just use a write if the called function returns an error\ncode on a cpu. We end up writing the error code of an arbitrary cpu\nif multiple ones fail but that should be sufficient.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "c9583e55fa2b08a230c549bd1e3c0bde6c50d9cc",
      "tree": "ec535aced7cdf7390290a4bf61402346b166c07b",
      "parents": [
        "0d557dc97f4bb501f086a03d0f00b99a7855d794"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Oct 13 23:50:10 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:26 2008 +1100"
      },
      "message": "stop_machine: use workqueues instead of kernel threads\n\nConvert stop_machine to a workqueue based approach. Instead of using kernel\nthreads for stop_machine we now use a an rt workqueue to synchronize all\ncpus.\nThis has the advantage that all needed per cpu threads are already created\nwhen stop_machine gets called. And therefore a call to stop_machine won\u0027t\nfail anymore. This is needed for s390 which needs a mechanism to synchronize\nall cpus without allocating any memory.\nAs Rusty pointed out free_module() needs a non-failing stop_machine interface\nas well.\n\nAs a side effect the stop_machine code gets simplified.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "0d557dc97f4bb501f086a03d0f00b99a7855d794",
      "tree": "be717fc70de4fc76f48cf4f4f3cebc3b8569d798",
      "parents": [
        "a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Oct 13 23:50:09 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:25 2008 +1100"
      },
      "message": "workqueue: introduce create_rt_workqueue\n\ncreate_rt_workqueue will create a real time prioritized workqueue.\nThis is needed for the conversion of stop_machine to a workqueue based\nimplementation.\nThis patch adds yet another parameter to __create_workqueue_key to tell\nit that we want an rt workqueue.\nHowever it looks like we rather should have something like \"int type\"\ninstead of singlethread, freezable and rt.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f44dd164f37336f7e17fabf5740698fd10635172",
      "tree": "13af05d200a37e5936beaaf0edfd4c58d405fb1e",
      "parents": [
        "d0ea3d7d286aeda2a9216d76424abc285b87b7b4"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:24 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:25 2008 +1100"
      },
      "message": "Make panic\u003d and panic_on_oops into core_params\n\nThis allows them to be examined and set after boot, plus means they\nactually give errors if they are misused (eg. panic\u003dyes).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "67e67ceaac5bf55dbdceb704ff2d763d438b5373",
      "tree": "59523536661c93dce7a02557ca6ac5827a7bf75f",
      "parents": [
        "9b473de87209fa86eb421b23386693b461612f30"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:23 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:23 2008 +1100"
      },
      "message": "core_param() for genuinely core kernel parameters\n\nThere are a lot of one-liner uses of __setup() in the kernel: they\u0027re\ncumbersome and not queryable (definitely not settable) via /sys.  Yet\nit\u0027s ugly to simplify them to module_param(), because by default that\ninserts a prefix of the module name (usually filename).\n\nSo, introduce a \"core_param\".  The parameter gets no prefix, but\nappears in /sys/module/kernel/parameters/ (if non-zero perms arg).  I\nthought about using the name \"core\", but that\u0027s more common than\n\"kernel\".  And if you create a module called \"kernel\", you will die\na horrible death.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "9b473de87209fa86eb421b23386693b461612f30",
      "tree": "7fe30a3f37347d5bb6f2ade2cc09133ae158ea3d",
      "parents": [
        "730b69d225259565c705f5f5a11cb1aba69568f1"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:22 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:23 2008 +1100"
      },
      "message": "param: Fix duplicate module prefixes\n\nInstead of insisting each new module_param sysfs entry is unique,\nhandle the case where it already exists (for builtin modules).\n\nThe current code assumes that all identical prefixes are together in\nthe section: true for normal uses, but not necessarily so if someone\noverrides MODULE_PARAM_PREFIX.  More importantly, it\u0027s not true with\nthe new \"core_param()\" code which uses \"kernel\" as a prefix.\n\nThis simplifies the caller for the builtin case, at a slight loss of\nefficiency (we do the lookup every time to see if the directory\nexists).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "730b69d225259565c705f5f5a11cb1aba69568f1",
      "tree": "9ae3f20102d06d83b23dbbed1ae8acb86e01e7ea",
      "parents": [
        "d72b37513cdfbd3f53f3d485a8c403cc96d2c95f"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:22 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:22 2008 +1100"
      },
      "message": "module: check kernel param length at compile time, not runtime\n\nThe kparam code tries to handle over-length parameter prefixes at\nruntime.  Not only would I bet this has never been tested, it\u0027s not\nclear that truncating names is a good idea either.\n\nSo let\u0027s check at compile time.  We need to move the #define to\nmoduleparam.h to do this, though.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d72b37513cdfbd3f53f3d485a8c403cc96d2c95f",
      "tree": "bdc0ad7aa94bc52290b42e325ac59c9140faf090",
      "parents": [
        "5e458cc0f4770eea45d3c07110f01b3a94c72aa5"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Sat Aug 30 10:09:00 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:22 2008 +1100"
      },
      "message": "Remove stop_machine during module load v2\n\nRemove stop_machine during module load v2\n\nmodule loading currently does a stop_machine on each module load to insert\nthe module into the global module lists.  Especially on larger systems this\ncan be quite expensive.\n\nIt does that to handle concurrent lock lessmodule list readers\nlike kallsyms.\n\nI don\u0027t think stop_machine() is actually needed to insert something\ninto a list though. There are no concurrent writers because the\nmodule mutex is taken. And the RCU list functions know how to insert\na node into a list with the right memory ordering so that concurrent\nreaders don\u0027t go off into the wood.\n\nSo remove the stop_machine for the module list insert and just\ndo a list_add_rcu() instead.\n\nModule removal will still do a stop_machine of course, it needs\nthat for other reasons.\n\nv2: Revised readers based on Paul\u0027s comments. All readers that only\n    rely on disabled preemption need to be changed to list_for_each_rcu().\n    Done that. The others are ok because they have the modules mutex.\n    Also added a possible missing preempt disable for print_modules().\n\n[cc Paul McKenney for review. It\u0027s not RCU, but quite similar.]\n\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "5e458cc0f4770eea45d3c07110f01b3a94c72aa5",
      "tree": "97966d9ac8f9621073fad39a88ed37765c959a9d",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:13 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:15 2008 +1100"
      },
      "message": "module: simplify load_module.\n\nLinus\u0027 recent catch of stack overflow in load_module lead me to look\nat the code.  A couple of helpers to get a section address and get\nobjects from a section can help clean things up a little.\n\n(And in case you\u0027re wondering, the stack size also dropped from 328 to\n284 bytes).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "c4bd822e7b12a9008241d76db45b665f2fef180c",
      "tree": "bd4b7b4e2e7db065c971eb264196f02e0b01ecff",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 21 20:17:35 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 21 20:53:24 2008 +0200"
      },
      "message": "NOHZ: fix thinko in the timer restart code path\n\ncommit fb02fbc14d17837b4b7b02dbb36142c16a7bf208 (NOHZ: restart tick\ndevice from irq_enter())\n\nsolves the problem of stale jiffies when long running softirqs happen\nin a long idle sleep period, but it has a major thinko in it:\n\nWhen the interrupt which came in _is_ the timer interrupt which should\nexpire ts-\u003esched_timer then we cancel and rearm the timer _before_ it\ngets expired in hrtimer_interrupt() to the next period. That means the\ncall back function is not called. This game can go on for ever :(\n\nPrevent this by making sure to only rearm the timer when the expiry\ntime is more than one tick_period away. Otherwise keep it running as\nit is either already expired or will expiry at the right point to\nupdate jiffies.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Venkatesch Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n"
    },
    {
      "commit": "5f86515158ca86182c1dbecd546f1848121ba135",
      "tree": "056f064fd80d3393f2d94dbdc790a798dbbab9cc",
      "parents": [
        "8cf7d362c0dc2cfda2146d184eedc32a530c8020"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Oct 17 14:40:30 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 21 15:59:53 2008 +0200"
      },
      "message": "rcupdate: fix bug of rcu_barrier*()\n\ncurrent rcu_barrier_bh() is like this:\n\nvoid rcu_barrier_bh(void)\n{\n\tBUG_ON(in_interrupt());\n\t/* Take cpucontrol mutex to protect against CPU hotplug */\n\tmutex_lock(\u0026rcu_barrier_mutex);\n\tinit_completion(\u0026rcu_barrier_completion);\n\tatomic_set(\u0026rcu_barrier_cpu_count, 0);\n\t/*\n\t * The queueing of callbacks in all CPUs must be atomic with\n\t * respect to RCU, otherwise one CPU may queue a callback,\n\t * wait for a grace period, decrement barrier count and call\n\t * complete(), while other CPUs have not yet queued anything.\n\t * So, we need to make sure that grace periods cannot complete\n\t * until all the callbacks are queued.\n\t */\n\trcu_read_lock();\n\ton_each_cpu(rcu_barrier_func, (void *)RCU_BARRIER_BH, 1);\n\trcu_read_unlock();\n\twait_for_completion(\u0026rcu_barrier_completion);\n\tmutex_unlock(\u0026rcu_barrier_mutex);\n}\n\nThe inconsistency of the code and the comments show a bug here.\nrcu_read_lock() cannot make sure that \"grace periods for RCU_BH\ncannot complete until all the callbacks are queued\".\nit only make sure that race periods for RCU cannot complete\nuntil all the callbacks are queued.\n\nso we must use rcu_read_lock_bh() for rcu_barrier_bh().\nlike this:\n\nvoid rcu_barrier_bh(void)\n{\n\t......\n\trcu_read_lock_bh();\n\ton_each_cpu(rcu_barrier_func, (void *)RCU_BARRIER_BH, 1);\n\trcu_read_unlock_bh();\n\t......\n}\n\nand also rcu_barrier() rcu_barrier_sched() are implemented like this.\nit will bring a lot of duplicate code. My patch uses another way to\nfix this bug, please see the comment of my patch.\nThank Paul E. McKenney for he rewrote the comment.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b6f3b7803a9231eddc36d0a2a6d2d8105ef89344",
      "tree": "ac5149f718d8c6c0692daa973632f3538253c31c",
      "parents": [
        "e9f95e637320efe1936b647308ddf4ec5b8e0311"
      ],
      "author": {
        "name": "Dean Nelson",
        "email": "dcn@sgi.com",
        "time": "Sat Oct 18 16:06:56 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 21 15:59:21 2008 +0200"
      },
      "message": "genirq: NULL struct irq_desc\u0027s member \u0027name\u0027 in dynamic_irq_cleanup()\n\nIf the member \u0027name\u0027 of the irq_desc structure happens to point to a\ncharacter string that is resident within a kernel module, problems ensue\nif that module is rmmod\u0027d (at which time dynamic_irq_cleanup() is called)\nand then later show_interrupts() is called by someone.\n\nIt is also not a good thing if the character string resided in kmalloc\u0027d\nspace that has been kfree\u0027d (after having called dynamic_irq_cleanup()).\ndynamic_irq_cleanup() fails to NULL the \u0027name\u0027 member and\nshow_interrupts() references it on a few architectures (like h8300, sh and\nx86).\n\nSigned-off-by: Dean Nelson \u003cdcn@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "572c48921574dbe6dceb958cf965aa962baefde4",
      "tree": "c1d889288d567cb6b596d10041526d2a8031bae3",
      "parents": [
        "e5eb8caa83a76191feb9705c1a0a689ca260b91e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Oct 08 13:24:05 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:49:06 2008 -0400"
      },
      "message": "[PATCH] sanitize blkdev_get() and friends\n\n* get rid of fake struct file/struct dentry in __blkdev_get()\n* merge __blkdev_get() and do_open()\n* get rid of flags argument of blkdev_get()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c2dd0dae185423fb243b13d490c3fcfaa18ff333",
      "tree": "e2d721533713fc2b09b6d06d64a306bbcf6c4c76",
      "parents": [
        "30c40d2c01f68c7eb1a41ab3552bdaf5dbf300d4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Oct 08 13:21:10 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:49:02 2008 -0400"
      },
      "message": "[PATCH] propagate mode through swsusp_close()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9a1c3542768b5a58e45a9216921cd10a3bae1205",
      "tree": "c20ffda950db868ec7e1e35aed532962de2ecfd9",
      "parents": [
        "511de73ff09034fb89c8d54bed201a10d057328c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 22 20:40:24 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:48:58 2008 -0400"
      },
      "message": "[PATCH] pass fmode_t to blkdev_put()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0b3682ba33c59a362901b478bdab965da888b350",
      "tree": "652dd572a96881874c63db246b86ed6e4fbdec48",
      "parents": [
        "a9b6148d25f15ddfe9d7a7f3e526fdb64e7cf7da"
      ],
      "author": {
        "name": "Chris Friesen",
        "email": "cfriesen@nortel.com",
        "time": "Mon Oct 20 12:41:58 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 21 10:10:08 2008 +0200"
      },
      "message": "genirq: fix set_irq_type() when recording trigger type\n\nImpact: fix boot hang on a G5\n\nIn set_irq_type() we want to pass the type rather than the current\ninterrupt state.\n\nSigned-off-by: Chris Friesen \u003ccfriesen@nortel.com\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f41b8cdc6ef33b3432cee36264d628a80398362",
      "tree": "12cecc77a6123aa456c0c22c90b7e589c93e83c6",
      "parents": [
        "e3d2f927f788adcdabc42f8a1616f6cc56c53bbe"
      ],
      "author": {
        "name": "Luck, Tony",
        "email": "tony.luck@intel.com",
        "time": "Mon Oct 20 15:23:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 15:28:50 2008 -0700"
      },
      "message": "kexec: fix crash_save_vmcoreinfo_init build problem\n\nThis fixes\n\n  kernel/kexec.c: In function \u0027crash_save_vmcoreinfo_init\u0027:\n  kernel/kexec.c:1374: error: \u0027vmlist\u0027 undeclared (first use in this function)\n  kernel/kexec.c:1374: error: (Each undeclared identifier is reported only once\n  kernel/kexec.c:1374: error: for each function it appears in.)\n  kernel/kexec.c:1410: error: invalid use of undefined type \u0027struct vm_struct\u0027\n  make[1]: *** [kernel/kexec.o] Error 1\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92b29b86fe2e183d44eb467e5e74a5f718ef2e43",
      "tree": "1bac8a1aa11d47322b66d10ec3a370016d843d06",
      "parents": [
        "b9d7ccf56be1ac77b71a284a1c0e6337f9a7aff0",
        "98d9c66ab07471006fd7910cb16453581c41a3e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "message": "Merge branch \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (131 commits)\n  tracing/fastboot: improve help text\n  tracing/stacktrace: improve help text\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix bootgraph.pl initcall name regexp\n  tracing/fastboot: fix issues and improve output of bootgraph.pl\n  tracepoints: synchronize unregister static inline\n  tracepoints: tracepoint_synchronize_unregister()\n  ftrace: make ftrace_test_p6nop disassembler-friendly\n  markers: fix synchronize marker unregister static inline\n  tracing/fastboot: add better resolution to initcall debug/tracing\n  trace: add build-time check to avoid overrunning hex buffer\n  ftrace: fix hex output mode of ftrace\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix printk format typo in boot tracer\n  ftrace: return an error when setting a nonexistent tracer\n  ftrace: make some tracers reentrant\n  ring-buffer: make reentrant\n  ring-buffer: move page indexes into page headers\n  tracing/fastboot: only trace non-module initcalls\n  ftrace: move pc counter in irqtrace\n  ...\n\nManually fix conflicts:\n - init/main.c: initcall tracing\n - kernel/module.c: verbose level vs tracepoints\n - scripts/bootgraph.pl: fallout from cherry-picking commits.\n"
    },
    {
      "commit": "9301975ec251bab1ad7cfcb84a688b26187e4e4a",
      "tree": "91e48be0bdc67cbcb75bc8a299a3dcf168e0a814",
      "parents": [
        "7110879cf2afbfb7af79675f5ff109e63d631c25",
        "dd3a1db900f2a215a7d7dd71b836e149a6cf5fed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:22:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:23:01 2008 -0700"
      },
      "message": "Merge branch \u0027genirq-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\nThis merges branches irq/genirq, irq/sparseirq-v4, timers/hpet-percpu\nand x86/uv.\n\nThe sparseirq branch is just preliminary groundwork: no sparse IRQs are\nactually implemented by this tree anymore - just the new APIs are added\nwhile keeping the old way intact as well (the new APIs map 1:1 to\nirq_desc[]).  The \u0027real\u0027 sparse IRQ support will then be a relatively\nsmall patch ontop of this - with a v2.6.29 merge target.\n\n* \u0027genirq-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (178 commits)\n  genirq: improve include files\n  intr_remapping: fix typo\n  io_apic: make irq_mis_count available on 64-bit too\n  genirq: fix name space collisions of nr_irqs in arch/*\n  genirq: fix name space collision of nr_irqs in autoprobe.c\n  genirq: use iterators for irq_desc loops\n  proc: fixup irq iterator\n  genirq: add reverse iterator for irq_desc\n  x86: move ack_bad_irq() to irq.c\n  x86: unify show_interrupts() and proc helpers\n  x86: cleanup show_interrupts\n  genirq: cleanup the sparseirq modifications\n  genirq: remove artifacts from sparseirq removal\n  genirq: revert dynarray\n  genirq: remove irq_to_desc_alloc\n  genirq: remove sparse irq code\n  genirq: use inline function for irq_to_desc\n  genirq: consolidate nr_irqs and for_each_irq_desc()\n  x86: remove sparse irq from Kconfig\n  genirq: define nr_irqs for architectures with GENERIC_HARDIRQS\u003dn\n  ...\n"
    },
    {
      "commit": "99ebcf8285df28f32fd2d1c19a7166e70f00309c",
      "tree": "caf45f39a77026b2fae2413c145067a1e5164701",
      "parents": [
        "72558dde738b06cc01e16b3247a9659ca739e22d",
        "c465a76af658b443075d6efee1c3131257643020"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:19:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:19:56 2008 -0700"
      },
      "message": "Merge branch \u0027v28-timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027v28-timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (36 commits)\n  fix documentation of sysrq-q really\n  Fix documentation of sysrq-q\n  timer_list: add base address to clock base\n  timer_list: print cpu number of clockevents device\n  timer_list: print real timer address\n  NOHZ: restart tick device from irq_enter()\n  NOHZ: split tick_nohz_restart_sched_tick()\n  NOHZ: unify the nohz function calls in irq_enter()\n  timers: fix itimer/many thread hang, fix\n  timers: fix itimer/many thread hang, v3\n  ntp: improve adjtimex frequency rounding\n  timekeeping: fix rounding problem during clock update\n  ntp: let update_persistent_clock() sleep\n  hrtimer: reorder struct hrtimer to save 8 bytes on 64bit builds\n  posix-timers: lock_timer: make it readable\n  posix-timers: lock_timer: kill the bogus -\u003eit_id check\n  posix-timers: kill -\u003eit_sigev_signo and -\u003eit_sigev_value\n  posix-timers: sys_timer_create: cleanup the error handling\n  posix-timers: move the initialization of timer-\u003esigq from send to create path\n  posix-timers: sys_timer_create: simplify and s/tasklist/rcu/\n  ...\n\nFix trivial conflicts due to sysrq-q description clahes in\nDocumentation/sysrq.txt and drivers/char/sysrq.c\n"
    },
    {
      "commit": "f07767fd0f95c385108fa4c456a9cb216a424fec",
      "tree": "6623b861e5df69dafbec6018b8f00dc0070e1515",
      "parents": [
        "f4432c5caec5fa95ea7eefd00f8e6cee17e2e023"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Mon Oct 20 10:23:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 12:51:53 2008 -0700"
      },
      "message": "byteorder: remove direct includes of linux/byteorder/swab[b].h\n\nA consolidated implementation will provide this generically through\nasm/byteorder, remove direct includes to avoid breakage when the\nchangeover to the new implementation occurs.\n\nThis hunk was lost from commit 1d8cca44b6a244b7e378546d719041819049a0f9\n(\"byteorder: provide swabb.h generically in asm/byteorder.h\")\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81520a1b0649d0701205b818714a8c1e1cfbbb5b",
      "tree": "a455ec060f28371b17374db2f934fc66dc7067ef",
      "parents": [
        "3ce83aea86bf46fd1bff59d2e6d16f48fdce22fc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 21:24:18 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:31:37 2008 +0200"
      },
      "message": "ftrace: stack tracer only record when on stack\n\nThe stack trace API does not record if the stack is not on the current\ntask\u0027s stack. That is, if the stack is the interrupt stack or NMI stack,\nthe output does not show. Also, the size of those stacks are not\nconsistent with the size of the thread stack, this makes the calculation\nof the stack size usually bogus.\n\nThis all confuses the stack tracer. I unfortunately do not have time to\nfix all these problems, but this patch does record the worst stack when\nthe stack pointer is on the tasks stack (instead of bogus numbers).\n\nThe patch simply returns if the stack pointer is not on the task\u0027s stack.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ce83aea86bf46fd1bff59d2e6d16f48fdce22fc",
      "tree": "c4fc8ba118adbadb463564cbc94db8aa540b011d",
      "parents": [
        "606576ce816603d9fe1fb453a88bc6eea16ca709"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 19:06:13 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:04 2008 +0200"
      },
      "message": "ftrace: rename the ftrace tracer to function\n\nTo avoid further confusion between the ftrace infrastructure and the\nfunction tracer. This patch renames the \"ftrace\" function tracer\nto \"function\".\n\nNow in available_tracers, instead of \"ftrace\" there will be \"function\".\n\nThis makes more sense, since people will not know exactly what the\n\"ftrace\" tracer does.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "606576ce816603d9fe1fb453a88bc6eea16ca709",
      "tree": "7c6844ff4d75f249df49e9e5fe97062d301c3a1f",
      "parents": [
        "c2db8054c1eaf99983d8deee347876b01c26c2cf"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 19:06:12 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:03 2008 +0200"
      },
      "message": "ftrace: rename FTRACE to FUNCTION_TRACER\n\nDue to confusion between the ftrace infrastructure and the gcc profiling\ntracer \"ftrace\", this patch renames the config options from FTRACE to\nFUNCTION_TRACER.  The other two names that are offspring from FTRACE\nDYNAMIC_FTRACE and FTRACE_MCOUNT_RECORD will stay the same.\n\nThis patch was generated mostly by script, and partially by hand.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2db8054c1eaf99983d8deee347876b01c26c2cf",
      "tree": "43bbc93ce51ddf3110513ff711b7f21afd8954f5",
      "parents": [
        "bd95b88d9e51fcbf392a7e90338a8fcc3499cbd6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 19:06:11 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:02 2008 +0200"
      },
      "message": "ftrace: fix depends\n\nA lot of tracers have HAVE_FTRACE as a dependent config where it\nreally should not. The HAVE_FTRACE is a misnomer (soon to be fixed)\nand describes if the architecture has the function tracer (mcount)\nimplemented. The ftrace infrastructure is implemented in all archs.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bd95b88d9e51fcbf392a7e90338a8fcc3499cbd6",
      "tree": "a88df2bd756a4dd0715a92c3cec193366d86b861",
      "parents": [
        "c513867561eeb07d24a0bdda1a18a8f91921a301"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 16 09:31:27 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:01 2008 +0200"
      },
      "message": "ftrace: release functions from hash\n\nThe x86 architecture uses a static recording of mcount caller locations\nand is not affected by this patch.\n\nFor architectures still using the dynamic ftrace daemon, this patch is\ncritical. It removes the race between the recording of a function that\ncalls mcount, the unloading of a module, and the ftrace daemon updating\nthe call sites.\n\nThis patch adds the releasing of the hash functions that the daemon uses\nto update the mcount call sites. When a module is unloaded, not only\nare the replaced call site table update, but now so is the hash recorded\nfunctions that the ftrace daemon will use.\n\nAgain, architectures that implement MCOUNT_RECORD are not affected by\nthis (which currently only x86 has).\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a651a00e20fd4997f0b91258f6f95b7d96edcd9",
      "tree": "08cab79e2de11e33bee7a041de8fc1cfb5e86660",
      "parents": [
        "1d8cca44b6a244b7e378546d719041819049a0f9"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Sat Oct 18 20:28:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:40 2008 -0700"
      },
      "message": "byteorder: remove direct includes of linux/byteorder/swab[b].h\n\nA consolidated implementation will provide this generically through\nasm/byteorder, remove direct includes to avoid breakage when the\nchangeover to the new implementation occurs.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@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": "acd99dbf54020f5c80b9aa2f2ea86f43cb285b02",
      "tree": "72af6a9e55be18f4fcbe4f17f8b0fe2d3c4af5ab",
      "parents": [
        "d9a9855d0b06ca6d6cc92596fedcc03f8512e062"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Sat Oct 18 20:28:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:40 2008 -0700"
      },
      "message": "kdump: add vmlist.addr to vmcoreinfo for x86 vmalloc translation.\n\nAdd the symbols \u0027vmlist\u0027 and offset \u0027vm_struct.addr\u0027 to the vmcoreinfo[1]\ndata for i386 vmalloc translation.\n\nmakedumpfile[2] needs VMALLOC_START value for distinguishing a vmalloc\naddress or not, because it should choose suitable translation method.  If\napplying this patch, makedumpfile will be able to take VMALLOC_START value\nfrom \u0027vmlist.addr\u0027.\n\nvmcoreinfo[1]:\nThe vmcoreinfo data has the minimum debugging information only for dump\nfiltering. makedumpfile[2] uses it to distinguish unnecessary pages and\ncreates a small dumpfile.\n\nmakedumpfile[2]:\ndump filtering command\nhttps://sourceforge.net/projects/makedumpfile/\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.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": "293adee601bcd4cdb5076a9bda187137de17e96e",
      "tree": "d7a67f8064f4db0f3b86855f3356c4037eff5e67",
      "parents": [
        "656eb2cd5da153762f2e8419ca117ce12ef522c3"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sat Oct 18 20:28:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:39 2008 -0700"
      },
      "message": "kthread_bind: use wait_task_inactive(TASK_UNINTERRUPTIBLE)\n\nNow that wait_task_inactive(task, state) checks task-\u003estate \u003d\u003d state,\nwe can simplify the code and make this debugging check more robust.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\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": "b747c8c102cc0677a7a8056a093f58d7c9b500e7",
      "tree": "5b0a67f24117dee1c6169e6a5e2a912c1ea5c28f",
      "parents": [
        "c4596435404976b0ded9cdf18b456ca2e1408ddd"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 18 20:28:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:39 2008 -0700"
      },
      "message": "make ptrace_untrace() static\n\nptrace_untrace() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30e8e13603c247c301fdacabef2a765c84840994",
      "tree": "753425750bb70f84ae621fa8f0624781557887cb",
      "parents": [
        "3eda20118000941e7e8994fc5fac8706d8c10f00"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Sat Oct 18 20:28:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:39 2008 -0700"
      },
      "message": "cpuset: use seq_*mask_* to print masks\n\n1) seq_file excepts that m-\u003ecount \u003d\u003d m-\u003esize when it\u0027s buf is full,\n   so current code will causes bugs when buf is overflow.\n\n2) There is not too good that cpuset accesses struct seq_file\u0027s\n   fields directly.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "40b6a76237563c70466ec7315f644ba87d57dbe5",
      "tree": "ffadb2b18c77e872acdedd00403655b356121e1d",
      "parents": [
        "52d4b9ac0b985168009c2a57098324e67bae171f"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Sat Oct 18 20:28:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:39 2008 -0700"
      },
      "message": "cpuset.c: remove extra variable\n\nRemove the use of int cpus_nonempty variable from \u0027update_flag\u0027 function.\n\nSigned-off-by: Md.Rakib H. Mullick \u003crakib.mullick@gmail.com\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc31edceee04a7b87f2be48f9489ebb72d264844",
      "tree": "5d37791218c420281e509899645d89aee7902f2b",
      "parents": [
        "146aa1bd0511f88ddb4e92fafa2b8aad4f2f65f3"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Sat Oct 18 20:28:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:38 2008 -0700"
      },
      "message": "cgroups: convert tasks file to use a seq_file with shared pid array\n\nRather than pre-generating the entire text for the \"tasks\" file each\ntime the file is opened, we instead just generate/update the array of\nprocess ids and use a seq_file to report these to userspace.  All open\nfile handles on the same \"tasks\" file can share a pid array, which may\nbe updated any time that no thread is actively reading the array.  By\nsharing the array, the potential for userspace to DoS the system by\nopening many handles on the same \"tasks\" file is removed.\n\n[Based on a patch by Lai Jiangshan, extended to use seq_file]\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nReviewed-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "146aa1bd0511f88ddb4e92fafa2b8aad4f2f65f3",
      "tree": "d7deb46b9a38f82f109b2126317899efbbce41c2",
      "parents": [
        "248736c2a57206388c86f8cdd3392ee986e84f9f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Sat Oct 18 20:28:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:38 2008 -0700"
      },
      "message": "cgroups: fix probable race with put_css_set[_taskexit] and find_css_set\n\nput_css_set_taskexit may be called when find_css_set is called on other\ncpu.  And the race will occur:\n\nput_css_set_taskexit side                    find_css_set side\n\n                                        |\natomic_dec_and_test(\u0026kref-\u003erefcount)    |\n    /* kref-\u003erefcount \u003d 0 */            |\n....................................................................\n                                        |  read_lock(\u0026css_set_lock)\n                                        |  find_existing_css_set\n                                        |  get_css_set\n                                        |  read_unlock(\u0026css_set_lock);\n....................................................................\n__release_css_set                       |\n....................................................................\n                                        | /* use a released css_set */\n                                        |\n\n[put_css_set is the same. But in the current code, all put_css_set are\nput into cgroup mutex critical region as the same as find_css_set.]\n\n[akpm@linux-foundation.org: repair comments]\n[menage@google.com: eliminate race in css_set refcounting]\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3b9f5afc7f4c8abc0452f132edb13ac8c1fafbf",
      "tree": "f89f2264469c32f03c7ef642e05e1cc638fc7133",
      "parents": [
        "5c6248411639e2b4e7f167632f30f5f3a7aa105f"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "wangcong@zeuux.org",
        "time": "Sat Oct 18 20:27:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "kernel/configs.c: remove useless comments\n\nThese comments are useless, remove them.\n\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1aece34833721d64eb33fc15cd923c727296d3d3",
      "tree": "7d50bac9229430528ff28aa362c87f745ebd1c78",
      "parents": [
        "81dcf33c2ae314899f754aa7aaa1cb1fe2f84da6"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: rename check_if_frozen()\n\ncheck_if_frozen() sounds like it should return something when in fact it\u0027s\njust updating the freezer state.\n\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81dcf33c2ae314899f754aa7aaa1cb1fe2f84da6",
      "tree": "8a4ef6206a3f70bf245c9f89baf5294e7ffd2d2f",
      "parents": [
        "957a4eeaf4af614ab0fc4c09a22593d6ab233f5b"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: make freezer state names less generic\n\nRename cgroup freezer states to be less generic to avoid any name\ncollisions while also better describing what each state is.\n\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "957a4eeaf4af614ab0fc4c09a22593d6ab233f5b",
      "tree": "944d338890a2346ca1bd9cd78e01c659635bf085",
      "parents": [
        "5a06915c6df9b89cda5ddb3f8cce5f9a6be534d2"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: prevent frozen tasks or cgroups from changing\n\nDon\u0027t let frozen tasks or cgroups change.  This means frozen tasks can\u0027t\nleave their current cgroup for another cgroup.  It also means that tasks\ncannot be added to or removed from a cgroup in the FROZEN state.  We\nenforce these rules by checking for frozen tasks and cgroups in the\ncan_attach() function.\n\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a06915c6df9b89cda5ddb3f8cce5f9a6be534d2",
      "tree": "9c2cd3c928e1e29e34dcc90ea45deab12653c111",
      "parents": [
        "dc52ddc0e6f45b04780b26fc0813509f8e798c42"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: skip frozen cgroups during power management resume\n\nWhen a system is resumed after a suspend, it will also unfreeze frozen\ncgroups.\n\nThis patchs modifies the resume sequence to skip the tasks which are part\nof a frozen control group.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc52ddc0e6f45b04780b26fc0813509f8e798c42",
      "tree": "384826e9fab4e434bc5c85ce744470ae472e52c3",
      "parents": [
        "8174f1503f4bf7e9a14b3fbbfdb30c6be6e29f77"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: implement freezer cgroup subsystem\n\nThis patch implements a new freezer subsystem in the control groups\nframework.  It provides a way to stop and resume execution of all tasks in\na cgroup by writing in the cgroup filesystem.\n\nThe freezer subsystem in the container filesystem defines a file named\nfreezer.state.  Writing \"FROZEN\" to the state file will freeze all tasks\nin the cgroup.  Subsequently writing \"RUNNING\" will unfreeze the tasks in\nthe cgroup.  Reading will return the current state.\n\n* Examples of usage :\n\n   # mkdir /containers/freezer\n   # mount -t cgroup -ofreezer freezer  /containers\n   # mkdir /containers/0\n   # echo $some_pid \u003e /containers/0/tasks\n\nto get status of the freezer subsystem :\n\n   # cat /containers/0/freezer.state\n   RUNNING\n\nto freeze all tasks in the container :\n\n   # echo FROZEN \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   FREEZING\n   # cat /containers/0/freezer.state\n   FROZEN\n\nto unfreeze all tasks in the container :\n\n   # echo RUNNING \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   RUNNING\n\nThis is the basic mechanism which should do the right thing for user space\ntask in a simple scenario.\n\nIt\u0027s important to note that freezing can be incomplete.  In that case we\nreturn EBUSY.  This means that some tasks in the cgroup are busy doing\nsomething that prevents us from completely freezing the cgroup at this\ntime.  After EBUSY, the cgroup will remain partially frozen -- reflected\nby freezer.state reporting \"FREEZING\" when read.  The state will remain\n\"FREEZING\" until one of these things happens:\n\n\t1) Userspace cancels the freezing operation by writing \"RUNNING\" to\n\t\tthe freezer.state file\n\t2) Userspace retries the freezing operation by writing \"FROZEN\" to\n\t\tthe freezer.state file (writing \"FREEZING\" is not legal\n\t\tand returns EIO)\n\t3) The tasks that blocked the cgroup from entering the \"FROZEN\"\n\t\tstate disappear from the cgroup\u0027s set of tasks.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: export thaw_process]\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8174f1503f4bf7e9a14b3fbbfdb30c6be6e29f77",
      "tree": "a8df1ebd62255dd231452b3f72782604e8919991",
      "parents": [
        "83224b08372be48d5fcefedc4886457da29130c8"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:33 2008 -0700"
      },
      "message": "container freezer: make refrigerator always available\n\nNow that the TIF_FREEZE flag is available in all architectures, extract\nthe refrigerator() and freeze_task() from kernel/power/process.c and make\nit available to all.\n\nThe refrigerator() can now be used in a control group subsystem\nimplementing a control group freezer.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "af936a1606246a10c145feac3770f6287f483f02"
}
