)]}'
{
  "log": [
    {
      "commit": "bcf35afb528109a31264b45d4851fa6ae72dbe18",
      "tree": "37607aae9efdbd1005d82e0a9a679899eb5a3afe",
      "parents": [
        "9fc3ace937a675bf42cbe6e6ef8950a6731ca16f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu May 01 18:43:12 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 10:21:54 2008 -0700"
      },
      "message": "make generic sys_ptrace unconditional\n\nWith s390 the last arch switched to the generic sys_ptrace yesterday so\nwe can now kill the ifdef around it to enforce every new port it using\nit instead of introducing new weirdo versions.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00cd5c37afd5f431ac186dd131705048c0a11fdb",
      "tree": "d5412f6c720e2cee11ac66783bb45e6bd78f4a1d",
      "parents": [
        "33e9fc7d01269737cd5a3b6de1db9d0e796ab708"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Apr 30 00:53:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:38 2008 -0700"
      },
      "message": "ptrace: permit ptracing of /sbin/init\n\nAfaics, currently there are no kernel problems with ptracing init, it can\u0027t\nlose SIGNAL_UNKILLABLE flag and be killed/stopped by accident.\n\nThe ability to strace/debug init can be very useful if you try to figure out\nwhy it does not work as expected.\n\nHowever, admin should know what he does, \"gdb /sbin/init 1\" stops init, it\ncan\u0027t reap orphaned zombies or take care of /etc/inittab until continued.  It\nis even possible to crash init (and thus the whole system) if you wish,\nptracer has full control.\n\nSee also the long discussion: http://marc.info/?t\u003d120628018600001\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33e9fc7d01269737cd5a3b6de1db9d0e796ab708",
      "tree": "36084d425e4d39ea06acff6f12164f257d0a102c",
      "parents": [
        "68cb94786630b34196713794a2880ade17fca887"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Apr 30 00:53:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:38 2008 -0700"
      },
      "message": "ptrace: ptrace_attach: use send_sig_info() instead force_sig_specific()\n\nNobody can block/ignore SIGSTOP, no need to use force_sig_specific() in\nptrace_attach.  Use the \"regular\" send_sig_info().\n\nWith this patch stracing of /sbin/init doesn\u0027t clear its SIGNAL_UNKILLABLE,\nbut not that this makes ptracing of init safe.\n\nSigned-off-by: 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": "68cb94786630b34196713794a2880ade17fca887",
      "tree": "78bd2d66aaaa2c9acdd6060a9a9964420c511ebc",
      "parents": [
        "53b6f9fbd3b63af14b4f6268e8b5b80d178d05bc"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Apr 30 00:53:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:38 2008 -0700"
      },
      "message": "ptrace: __ptrace_unlink: use the ptrace_reparented() helper\n\nCurrently __ptrace_unlink() checks list_empty(-\u003eptrace_list) to figure out\nwhether the child was reparented.  Change the code to use ptrace_reparented()\nto make this check more explicit and consistent.\n\nNo functional changes.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: 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": "9d04d9280c4bbf6950b70b705bc4ace41de65615",
      "tree": "594f4d9faf9d830fc7b1a7589e4a61f16b1fdf58",
      "parents": [
        "e97e386b126c2d60b8da61ce1e4964b41b3d1514"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Apr 28 13:57:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 14:14:36 2008 -0700"
      },
      "message": "ptrace: conditionalize compat_ptrace_request\n\nMy recent additions to compat_ptrace_request made it mandatory\nfor CONFIG_COMPAT arch\u0027s to define copy_siginfo_from_user32.\nThis broke some builds, though they all really should get cleaned\nup in that way.\n\nSince all the arch\u0027s that actually call compat_ptrace_request have\nnow been cleaned up to use the generic compat_sys_ptrace, we can\navoid the build problems on the crufty arch\u0027s by changing the\nconditionals on the definition.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e16b27816462de700f9508d86954410c41105dc2",
      "tree": "f3827a23a43dcaad06362d511ac20d576b9128d5",
      "parents": [
        "553a56726be86c09cfa53c84da1ea0e2043e364e"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Sun Apr 20 13:10:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:53:41 2008 -0700"
      },
      "message": "ptrace: compat_ptrace_request siginfo\n\nThis adds support for PTRACE_GETSIGINFO and PTRACE_SETSIGINFO in\ncompat_ptrace_request.  It relies on existing arch definitions for\ncopy_siginfo_to_user32 and copy_siginfo_from_user32.\n\nOn powerpc, this fixes a longstanding regression of 32-bit ptrace\ncalls on 64-bit kernels vs native calls (64-bit calls or 32-bit\nkernels).  This can be seen in a 32-bit call using PTRACE_GETSIGINFO\nto examine e.g. siginfo_t.si_addr from a signal that sets it.\n(This was broken as of 2.6.24 and, I presume, many or all prior versions.)\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0c0b649d67aa775aa9851de61aade17504be70c",
      "tree": "5902fb53a364155352fcc04e87860d724d8b31fd",
      "parents": [
        "34a1738f7da0b3d28d4b066d03a78f46b8cab68f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:00 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "ptrace_check_attach: remove unneeded -\u003esignal !\u003d NULL check\n\nIt is not possible to see the PT_PTRACED task without -\u003esignal/sighand under\ntasklist_lock, release_task() does ptrace_unlink() first.  If the task was\nalready released before, ptrace_attach() can\u0027t succeed and set PT_PTRACED.\nRemove this check.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b39c7bfbd1436836c0fb34c5b437fda1a7a3dd4",
      "tree": "60d3d9719eef3076527fcbf9c3cb362fe0f52d61",
      "parents": [
        "01b8b07a5d77d22e609267dcae74d15e3e9c5f13"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:18:58 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "kill PT_ATTACHED\n\nSince the patch\n\n\t\"Fix ptrace_attach()/ptrace_traceme()/de_thread() race\"\n\tcommit f5b40e363ad6041a96e3da32281d8faa191597b9\n\nwe set PT_ATTACHED and change child-\u003eparent \"atomically\" wrt task_list lock.\n\nThis means we can remove the checks like \"PT_ATTACHED \u0026\u0026 -\u003eparent !\u003d ptracer\"\nwhich were needed to catch the \"ptrace attach is in progress\" case.  We can\nalso remove the flag itself since nobody else uses it.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f17d30a803e8434c4ef381bb5cfa1956ff0201f0",
      "tree": "42f71e13e01c0d142a30489031797d3d0ecf1ef9",
      "parents": [
        "a1c9eea9e56a7196c6891f6426b799c4598b38e2"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:44 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "kernel/ptrace.c should #include \u003clinux/syscalls.h\u003e\n\nEvery file should include the headers containing the prototypes for its global\nfunctions (in this case sys_ptrace()).\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9ae90ac4bdce769ddb27c2e24c3351a30c3daf8",
      "tree": "220f88576b5c83369892ce13cb180bab6cccba7a",
      "parents": [
        "06b8e878a9bc9301201cffe186eba99c4185f20a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Feb 06 01:36:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:00 2008 -0800"
      },
      "message": "use __set_task_state() for TRACED/STOPPED tasks\n\n1. It is much easier to grep for -\u003estate change if __set_task_state() is used\n   instead of the direct assignment.\n\n2. ptrace_stop() and handle_group_stop() use set_task_state() which adds the\n   unneeded mb() (btw even if we use mb() it is still possible that do_wait()\n   sees the new -\u003estate but not -\u003eexit_code, but this is ok).\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: 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": "75659ca0c10992dcb39258518368a0f6f56e935d",
      "tree": "5d014ceb2f10158061a23d0d976f9a613d85e659",
      "parents": [
        "fbdde7bd274d74729954190f99afcb1e3d9bbfba",
        "2dfe485a2c8afa54cb069fcf48476f6c90ea3fdf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "message": "Merge branch \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc: (22 commits)\n  Remove commented-out code copied from NFS\n  NFS: Switch from intr mount option to TASK_KILLABLE\n  Add wait_for_completion_killable\n  Add wait_event_killable\n  Add schedule_timeout_killable\n  Use mutex_lock_killable in vfs_readdir\n  Add mutex_lock_killable\n  Use lock_page_killable\n  Add lock_page_killable\n  Add fatal_signal_pending\n  Add TASK_WAKEKILL\n  exit: Use task_is_*\n  signal: Use task_is_*\n  sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMAL\n  ptrace: Use task_is_*\n  power: Use task_is_*\n  wait: Use TASK_NORMAL\n  proc/base.c: Use task_is_*\n  proc/array.c: Use TASK_REPORT\n  perfmon: Use task_is_*\n  ...\n\nFixed up conflicts in NFS/sunrpc manually..\n"
    },
    {
      "commit": "c269f19617f508cc5c29c0b064c1a437d7011a46",
      "tree": "da49abc09dcf573df0580b305dba647a70306ac8",
      "parents": [
        "032d82d9065dec0e26718eca376c2029e4bd0595"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:48 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:48 2008 +0100"
      },
      "message": "x86: compat_sys_ptrace\n\nThis adds a generic definition of compat_sys_ptrace that calls\ncompat_arch_ptrace, parallel to sys_ptrace/arch_ptrace.  Some\nmachines needing this already define a function by that name.\nThe new generic function is defined only on machines that\nput #define __ARCH_WANT_COMPAT_SYS_PTRACE into asm/ptrace.h.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "032d82d9065dec0e26718eca376c2029e4bd0595",
      "tree": "44cdb3296f25a9b2d5044fe1c12fbb03b085ac37",
      "parents": [
        "16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "message": "x86: compat_ptrace_request\n\nThis adds a compat_ptrace_request that is the analogue of ptrace_request\nfor the things that 32-on-64 ptrace implementations can share in common.\nSo far there are just a couple of requests handled generically.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf",
      "tree": "e87239acac664b4f940118b9920e457cb8a1461c",
      "parents": [
        "5bde4d181793be84351bc21c256d8c71cfcd313a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "message": "x86: ptrace_request peekdata/pokedata\n\nThis makes ptrace_request handle {PEEK,POKE}{TEXT,DATA} directly.\nEvery arch_ptrace that could call generic_ptrace_peekdata already\nhas a default case calling ptrace_request, so this keeps things\nsimpler for the arch code.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5b88abbf770a0e1975c668743100f42934f385e8",
      "tree": "ae6af4df76e71682efb4d90620182bfaf541e9c8",
      "parents": [
        "dc802c2d2e66e2d1544e023bfd4be6cdee48d57b"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:30:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:53 2008 +0100"
      },
      "message": "ptrace: generic PTRACE_SINGLEBLOCK\n\nThis makes ptrace_request handle PTRACE_SINGLEBLOCK along with\nPTRACE_CONT et al.  The new generic code makes use of the\narch_has_block_step macro and generic entry points on machines\nthat define them.\n\n[ mingo@elte.hu: bugfix ]\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "36df29d7994180cf7f0ccc5d46495855d56d2721",
      "tree": "3291b504ef268714ea40de90b297dba62f11206b",
      "parents": [
        "e1f287735c1e58c653b516931b5d3dd899edcb77"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:30:51 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:51 2008 +0100"
      },
      "message": "ptrace: generic resume\n\nThis makes ptrace_request handle all the ptrace requests that wake\nup the traced task.  These do low-level ptrace implementation magic\nthat is not arch-specific and should be kept out of arch code.  The\nimplementations on each arch usually do the same thing.  The new\ngeneric code makes use of the arch_has_single_step macro and generic\nentry points to handle PTRACE_SINGLESTEP.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6ea6dd93c9454cc9521134f907bc970d09f460e4",
      "tree": "05f8d9f293d7127e19774d5fa10ebf685a6fa76d",
      "parents": [
        "7f0f616bb093823b70855685cf085d39a8784818"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Tue Nov 27 13:02:40 2007 +0100"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Fri Jan 25 08:31:39 2008 +0100"
      },
      "message": "ptrace: Call arch_ptrace_attach() when request\u003dPTRACE_TRACEME\n\narch_ptrace_attach() is a hook that allows the architecture to do\nbook-keeping after a ptrace attach. This patch adds a call to this\nhook when handling a PTRACE_TRACEME request as well.\n\nCurrently only one architecture, m32r, implements this hook. When\ncalled, it initializes a number of debug trap slots in the ptraced\ntask\u0027s thread struct, and it looks to me like this is the right thing\nto do after a PTRACE_TRACEME request as well, not only after\nPTRACE_ATTACH. Please correct me if I\u0027m wrong.\n\nI want to use this hook on AVR32 to turn the debugging hardware on\nwhen a process is actually being debugged and keep it off otherwise.\nTo be able to do this, I need to intercept PTRACE_TRACEME and\nPTRACE_ATTACH, as well as PTRACE_DETACH and thread exit. The latter\ntwo can be handled by existing hooks.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\n"
    },
    {
      "commit": "b8c9a18712f7b617fda66d878ce3759c9e575ba0",
      "tree": "95d4798a657b5267cf8e21e78a23aa7800a3bfcd",
      "parents": [
        "831830b5a2b5d413407adf380ef62fe17d6fcbf2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jan 02 13:48:27 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jan 02 13:48:27 2008 -0800"
      },
      "message": "Fix kernel/ptrace.c compile problem (missing \"may_attach()\")\n\nThe previous commit missed one use of \"may_attach()\" that had been\nrenamed to __ptrace_may_attach().  Tssk, tssk, Al.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "831830b5a2b5d413407adf380ef62fe17d6fcbf2",
      "tree": "b08f54f15374b5b98b0b3bea20a1d2ea8d1f50e0",
      "parents": [
        "ac40532ef0b8649e6f7f83859ea0de1c4ed08a19"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Wed Jan 02 14:09:57 2008 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jan 02 13:13:27 2008 -0800"
      },
      "message": "restrict reading from /proc/\u003cpid\u003e/maps to those who share -\u003emm or can ptrace pid\n\nContents of /proc/*/maps is sensitive and may become sensitive after\nopen() (e.g.  if target originally shares our -\u003emm and later does exec\non suid-root binary).\n\nCheck at read() (actually, -\u003estart() of iterator) time that mm_struct\nwe\u0027d grabbed and locked is\n - still the -\u003emm of target\n - equal to reader\u0027s -\u003emm or the target is ptracable by reader.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6618a3e275519e10001a2ac4669f46141d4c108b",
      "tree": "aee9f4dfc741c434e39fd9da057598dccebe1959",
      "parents": [
        "d2f60e5faa9aef9a08d0abaee2007e5a0800d2c5"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Dec 06 11:06:16 2007 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Dec 06 17:34:52 2007 -0500"
      },
      "message": "ptrace: Use task_is_*\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "bac0abd6174e427404dd197cdbefece31e97329b",
      "tree": "68ed6bd8619552c921c9fb99e83cb04fcb235a39",
      "parents": [
        "19b9b9b54e5f115907efd56be2c3799775a46561"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:40 2007 -0700"
      },
      "message": "Isolate some explicit usage of task-\u003etgid\n\nWith pid namespaces this field is now dangerous to use explicitly, so hide\nit behind the helpers.\n\nAlso the pid and pgrp fields o task_struct and signal_struct are to be\ndeprecated.  Unfortunately this patch cannot be sent right now as this\nleads to tons of warnings, so start isolating them, and deprecate later.\n\nActually the p-\u003etgid \u003d\u003d pid has to be changed to has_group_leader_pid(),\nbut Oleg pointed out that in case of posix cpu timers this is the same, and\nthread_group_leader() is more preferable.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "228ebcbe634a30aec35132ea4375721bcc41bec0",
      "tree": "a875976fd5bde6e2f931aa235c34c88a2738493f",
      "parents": [
        "b488893a390edfe027bae7a46e9af8083e740668"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:40 2007 -0700"
      },
      "message": "Uninline find_task_by_xxx set of functions\n\nThe find_task_by_something is a set of macros are used to find task by pid\ndepending on what kind of pid is proposed - global or virtual one.  All of\nthem are wrappers above the most generic one - find_task_by_pid_type_ns() -\nand just substitute some args for it.\n\nIt turned out, that dereferencing the current-\u003ensproxy-\u003epid_ns construction\nand pushing one more argument on the stack inline cause kernel text size to\ngrow.\n\nThis patch moves all this stuff out-of-line into kernel/pid.c.  Together\nwith the next patch it saves a bit less than 400 bytes from the .text\nsection.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: 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": "b488893a390edfe027bae7a46e9af8083e740668",
      "tree": "c469a7f99ad01005a73011c029eb5e5d15454559",
      "parents": [
        "3eb07c8c8adb6f0572baba844ba2d9e501654316"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:40 2007 -0700"
      },
      "message": "pid namespaces: changes to show virtual ids to user\n\nThis is the largest patch in the set. Make all (I hope) the places where\nthe pid is shown to or get from user operate on the virtual pids.\n\nThe idea is:\n - all in-kernel data structures must store either struct pid itself\n   or the pid\u0027s global nr, obtained with pid_nr() call;\n - when seeking the task from kernel code with the stored id one\n   should use find_task_by_pid() call that works with global pids;\n - when showing pid\u0027s numerical value to the user the virtual one\n   should be used, but however when one shows task\u0027s pid outside this\n   task\u0027s namespace the global one is to be used;\n - when getting the pid from userspace one need to consider this as\n   the virtual one and use appropriate task/pid-searching functions.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: nuther build fix]\n[akpm@linux-foundation.org: yet nuther build fix]\n[akpm@linux-foundation.org: remove unneeded casts]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@openvz.org\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ac15559150a20d39d381a6be44cdea373584222",
      "tree": "10be83ffe3197f029beffd242b7ddf21dcc25a35",
      "parents": [
        "dab8f4963ae0a79b945b8ed297e30d390a9d9f50"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Oct 16 01:26:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:04 2007 -0700"
      },
      "message": "m32r: convert to generic sys_ptrace\n\nConvert m32r to the generic sys_ptrace.  The conversion requires an\narchitecture hook after ptrace_attach which this patch adds.  The hook\nwill also be needed for a conersion of ia64 to the generic ptrace code.\n\nThanks to Hirokazu Takata for fixing a bug in the first version of this\ncode.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1bcf548293aef19b0797348332cf1dfbf2116cef",
      "tree": "80b2535e3dd2a6d23c15b91e10cae227310a44ee",
      "parents": [
        "e6716b87d5c9edf19c711212785cd30c6ec21868"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Oct 16 01:23:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:49 2007 -0700"
      },
      "message": "Consolidate PTRACE_DETACH\n\nIdentical handlers of PTRACE_DETACH go into ptrace_request().\nNot touching compat code.\nNot touching archs that don\u0027t call ptrace_request.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d94143291e4e625e2bc3b1ebdc7143ee7a9a2f1",
      "tree": "c4f8a974a33dd6ac1feacf18f217ee326c8af5eb",
      "parents": [
        "897ee77bfba12b83752027427a41009961458ee6"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Sep 05 03:05:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Sep 10 18:57:47 2007 -0700"
      },
      "message": "Fix spurious syscall tracing after PTRACE_DETACH + PTRACE_ATTACH\n\nWhen PTRACE_SYSCALL was used and then PTRACE_DETACH is used, the\nTIF_SYSCALL_TRACE flag is left set on the formerly-traced task.  This\nmeans that when a new tracer comes along and does PTRACE_ATTACH, it\u0027s\npossible he gets a syscall tracing stop even though he\u0027s never used\nPTRACE_SYSCALL.  This happens if the task was in the middle of a system\ncall when the second PTRACE_ATTACH was done.  The symptom is an\nunexpected SIGTRAP when the tracer thinks that only SIGSTOP should have\nbeen provoked by his ptrace calls so far.\n\nA few machines already fixed this in ptrace_disable (i386, ia64, m68k).\nBut all other machines do not, and still have this bug.  On x86_64, this\nconstitutes a regression in IA32 compatibility support.\n\nSince all machines now use TIF_SYSCALL_TRACE for this, I put the\nclearing of TIF_SYSCALL_TRACE in the generic ptrace_detach code rather\nthan adding it to every other machine\u0027s ptrace_disable.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c5d523826dc639df709ed0f88c5d2ce25379652",
      "tree": "ef2fa8cb30266b3a9b047902794e78c583b099da",
      "parents": [
        "76fdbb25f963de5dc1e308325f0578a2f92b1c2d"
      ],
      "author": {
        "name": "Kawai, Hidehiro",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Thu Jul 19 01:48:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:46 2007 -0700"
      },
      "message": "coredump masking: reimplementation of dumpable using two flags\n\nThis patch changes mm_struct.dumpable to a pair of bit flags.\n\nset_dumpable() converts three-value dumpable to two flags and stores it into\nlower two bits of mm_struct.flags instead of mm_struct.dumpable.\nget_dumpable() behaves in the opposite way.\n\n[akpm@linux-foundation.org: export set_dumpable]\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f284ce7269031947326bac6bb19a977705276222",
      "tree": "8b145d42d4da182fb185dacc53b24ca7a2546114",
      "parents": [
        "7664732315c97f48dba9d1e7339ad16fc5a320ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Jul 17 04:03:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:03 2007 -0700"
      },
      "message": "PTRACE_POKEDATA consolidation\n\nIdentical implementations of PTRACE_POKEDATA go into generic_ptrace_pokedata()\nfunction.\n\nAFAICS, fix bug on xtensa where successful PTRACE_POKEDATA will nevertheless\nreturn EPERM.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7664732315c97f48dba9d1e7339ad16fc5a320ac",
      "tree": "1eb9639b0fbe3f24341cecf1dafcae192cb7bde7",
      "parents": [
        "bcdcd8e725b923ad7c0de809680d5d5658a7bf8c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Jul 17 04:03:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:03 2007 -0700"
      },
      "message": "PTRACE_PEEKDATA consolidation\n\nIdentical implementations of PTRACE_PEEKDATA go into generic_ptrace_peekdata()\nfunction.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6175ecfed3c81d388735c75f7a0ad08dc4de02d3",
      "tree": "83ac354507db40109bd114c233de2e7c36c92231",
      "parents": [
        "e1f4a88c5a15a86124a95ea712213bb7dab2ad99"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Sun Jul 15 23:39:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:40 2007 -0700"
      },
      "message": "Use write_trylock_irqsave in ptrace_attach\n\nThis patch makes ptrace_attach use write_trylock_irqsave().\n\n[akpm@linux-foundation.org: remove unneeded initialisation]\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5cb013da773a67ee48d1c19e96436c22a73a7eb",
      "tree": "8832d105c4742674423bd50352b8a4805c44fecc",
      "parents": [
        "129a84de2347002f09721cda3155ccfd19fade40"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 13:58:35 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 11 05:38:25 2007 -0400"
      },
      "message": "[PATCH] auditing ptrace\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f400e198b2ed26ce55b22a1412ded0896e7516ac",
      "tree": "a3d78bfc1c20635e199fe0fe85aaa1d8792acc58",
      "parents": [
        "959ed340f4867fda7684340625f60e211c2296d6"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Fri Sep 29 02:00:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:12 2006 -0700"
      },
      "message": "[PATCH] pidspace: is_init()\n\nThis is an updated version of Eric Biederman\u0027s is_init() patch.\n(http://lkml.org/lkml/2006/2/6/280).  It applies cleanly to 2.6.18-rc3 and\nreplaces a few more instances of -\u003epid \u003d\u003d 1 with is_init().\n\nFurther, is_init() checks pid and thus removes dependency on Eric\u0027s other\npatches for now.\n\nEric\u0027s original description:\n\n\tThere are a lot of places in the kernel where we test for init\n\tbecause we give it special properties.  Most  significantly init\n\tmust not die.  This results in code all over the kernel test\n\t-\u003epid \u003d\u003d 1.\n\n\tIntroduce is_init to capture this case.\n\n\tWith multiple pid spaces for all of the cases affected we are\n\tlooking for only the first process on the system, not some other\n\tprocess that has pid \u003d\u003d 1.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \u003clxc-devel@lists.sourceforge.net\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ec76a110f432e98277e464b82ace8dd66571689",
      "tree": "3ed8de0ea6869fe17bec7689c493a2db02f73f4a",
      "parents": [
        "361f6ed1d00f666a1a7c33f3e9aaccb713f9b9e4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Check that access_process_vm() has a valid target\n\nCheck that access_process_vm() is accessing a valid mapping in the target\nprocess.\n\nThis limits ptrace() accesses and accesses through /proc/\u003cpid\u003e/maps to only\nthose regions actually mapped by a program.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36c8b586896f60cb91a4fd526233190b34316baf",
      "tree": "003246e1e676de33703daa979b3e3109ca202a89",
      "parents": [
        "48f24c4da1ee7f3f22289cb85e8b8a73e4df4db5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:11 2006 -0700"
      },
      "message": "[PATCH] sched: cleanup, remove task_t, convert to struct task_struct\n\ncleanup: remove task_t and convert all the uses to struct task_struct. I\nintroduced it for the scheduler anno and it was a mistake.\n\nConversion was mostly scripted, the result was reviewed and all\nsecondary whitespace and style impact (if any) was fixed up by hand.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d5f70c00ad24cd1158d3678b44ff969b4c971d49",
      "tree": "b4b71a71b413250fb24cb2d83cbbfd7507da9efc",
      "parents": [
        "281de339ceb822ca6c04d4373ecb9a45c1890ce4"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Jun 26 00:26:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:27 2006 -0700"
      },
      "message": "[PATCH] coredump: kill ptrace related stuff\n\nWith this patch zap_process() sets SIGNAL_GROUP_EXIT while sending SIGKILL to\nthe thread group.  This means that a TASK_TRACED task\n\n\t1. Will be awakened by signal_wake_up(1)\n\n\t2. Can\u0027t sleep again via ptrace_notify()\n\n\t3. Can\u0027t go to do_signal_stop() after return\n\t   from ptrace_stop() in get_signal_to_deliver()\n\nSo we can remove all ptrace related stuff from coredump path.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df26c40e567356caeefe2861311e19c54444d917",
      "tree": "415527677e85e8b612b916f6fda1645a6207d8e2",
      "parents": [
        "778c1144771f0064b6f51bee865cceb0d996f2f9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Jun 26 00:25:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:26 2006 -0700"
      },
      "message": "[PATCH] proc: Cleanup proc_fd_access_allowed\n\nIn process of getting proc_fd_access_allowed to work it has developed a few\nwarts.  In particular the special case that always allows introspection and\nthe special case to allow inspection of kernel threads.\n\nThe special case for introspection is needed for /proc/self/mem.\n\nThe special case for kernel threads really should be overridable\nby security modules.\n\nSo consolidate these checks into ptrace.c:may_attach().\n\nThe check to always allow introspection is trivial.\n\nThe check to allow access to kernel threads, and zombies is a little\ntrickier.  mem_read and mem_write already verify an mm exists so it isn\u0027t\nneeded twice.  proc_fd_access_allowed only doesn\u0027t want a check to verify\ntask-\u003emm exits, s it prevents all access to kernel threads.  So just move\nthe task-\u003emm check into ptrace_attach where it is needed for practical\nreasons.\n\nI did a quick audit and none of the security modules in the kernel seem to\ncare if they are passed a task without an mm into security_ptrace.  So the\nabove move should be safe and it allows security modules to come up with\nmore restrictive policy.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f358166a9405e4f1d8e50d8f415c26d95505b6de",
      "tree": "7f5349d9e8b59633b9f8a7bd9bcd45ace1d21a41",
      "parents": [
        "0e44dc383787b472a7f13564c6bd8a44cc07d408"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu May 11 11:08:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu May 11 11:08:49 2006 -0700"
      },
      "message": "ptrace_attach: fix possible deadlock schenario with irqs\n\nEric Biederman points out that we can\u0027t take the task_lock while holding\ntasklist_lock for writing, because another CPU that holds the task lock\nmight take an interrupt that then tries to take tasklist_lock for writing.\n\nWhich would be a nasty deadlock, with one CPU spinning forever in an\ninterrupt handler (although admittedly you need to really work at\ntriggering it ;)\n\nSince the ptrace_attach() code is special and very unusual, just make it\nbe extra careful, and use trylock+repeat to avoid the possible deadlock.\n\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5b40e363ad6041a96e3da32281d8faa191597b9",
      "tree": "5f35453cff7acd5df5622a108381bbd011a383c5",
      "parents": [
        "5528e568a760442e0ec8fd2dea1f0791875a066b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 07 10:49:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 07 10:49:33 2006 -0700"
      },
      "message": "Fix ptrace_attach()/ptrace_traceme()/de_thread() race\n\nThis holds the task lock (and, for ptrace_attach, the tasklist_lock)\nover the actual attach event, which closes a race between attacking to a\nthread that is either doing a PTRACE_TRACEME or getting de-threaded.\n\nThanks to Oleg Nesterov for reminding me about this, and Chris Wright\nfor noticing a lost return value in my first version.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e57a5059846e55d82b86d96dde40e988598601b3",
      "tree": "85b0f48406b37b46261735cbdd66e379977a0327",
      "parents": [
        "c06511d12d720b23c8dffff23004f0a888698f20"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Apr 12 16:30:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 14 08:59:13 2006 -0700"
      },
      "message": "[PATCH] fix non-leader exec under ptrace\n\nThis reverts most of commit 30e0fca6c1d7d26f3f2daa4dd2b12c51dadc778a.\nIt broke the case of non-leader MT exec when ptraced.\nI think the bug it was intended to fix was already addressed by commit\n788e05a67c343fa22f2ae1d3ca264e7f15c25eaf.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "524223ca8142d593124bde66f3ffa1deb6f56c06",
      "tree": "881d27c034459b931d8ba3adc0f1d2c8777fbf76",
      "parents": [
        "9ba025f10885758975fbbc2292a5b9e7cb8026a8"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Sun Apr 02 13:43:40 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Apr 02 13:43:40 2006 +0200"
      },
      "message": "BUG_ON() Conversion in kernel/ptrace.c\n\nthis changes if() BUG(); constructs to BUG_ON() which is\ncleaner, contains unlikely() and can better optimized away.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "9b678ece42893b53aae5ed7cb8d7cb261cacb72c",
      "tree": "2fc3cdcdc2940127885219b8d4142f8317b46bbd",
      "parents": [
        "8fafabd86f1b75ed3cc6a6ffbe6c3e53e3d8457d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:41 2006 -0800"
      },
      "message": "[PATCH] don\u0027t use REMOVE_LINKS/SET_LINKS for reparenting\n\nThere are places where kernel uses REMOVE_LINKS/SET_LINKS while changing\nprocess\u0027s -\u003eparent.  Use add_parent/remove_parent instead, they don\u0027t abuse\nof global process list.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ecfbae093f0c37311e89b29bfc0c9d586eace87",
      "tree": "eabd0a145af64e26c900578c95175ab313828661",
      "parents": [
        "dadac81b1b86196fcc48fb87620403c4a7174f06"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Feb 15 22:50:10 2006 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 15 11:05:43 2006 -0800"
      },
      "message": "[PATCH] fix zap_thread\u0027s ptrace related problems\n\n1. The tracee can go from ptrace_stop() to do_signal_stop()\n   after __ptrace_unlink(p).\n\n2. It is unsafe to __ptrace_unlink(p) while p-\u003eparent may wait\n   for tasklist_lock in ptrace_detach().\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\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "16bf134840da3920ded1290973c56ec214636f12",
      "tree": "1aacddb873bd383030a65e13e78c2ced38edfa23",
      "parents": [
        "d98c7a09843621f1b145ca5ae8ed03ff04085edb"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Feb 14 13:52:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 14 16:09:33 2006 -0800"
      },
      "message": "[PATCH] compound page: no access_process_vm check\n\nThe PageCompound check before access_process_vm\u0027s set_page_dirty_lock is no\nlonger necessary, so remove it.  But leave the PageCompound checks in\nbio_set_pages_dirty, dio_bio_complete and nfs_free_user_pages: at least some\nof those were introduced as a little optimization on hugetlb pages.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c59ede7b78db329949d9cdcd7064e22d357560ef",
      "tree": "f9dc9d464fdad5bfd464d983e77c1af031389dda",
      "parents": [
        "e16885c5ad624a6efe1b1bf764e075d75f65a788"
      ],
      "author": {
        "name": "Randy.Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jan 11 12:17:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 18:42:13 2006 -0800"
      },
      "message": "[PATCH] move capable() to capability.h\n\n- Move capable() from sched.h to capability.h;\n\n- Use \u003clinux/capability.h\u003e where capable() is used\n\t(in include/, block/, ipc/, kernel/, a few drivers/,\n\tmm/, security/, \u0026 sound/;\n\tmany more drivers/ to go)\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b9c7ed84837753a436415097063232422e29a35",
      "tree": "6ad59a7bebcec359e08b3a211701781db819450d",
      "parents": [
        "6b34350f490b2c8508717541ec1fd2bbaadded94"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Jan 08 01:02:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:51 2006 -0800"
      },
      "message": "[PATCH] use ptrace_get_task_struct in various places\n\nThe ptrace_get_task_struct() helper that I added as part of the ptrace\nconsolidation is useful in variety of places that currently opencode it.\nSwitch them to the common helpers.\n\nAdd a ptrace_traceme() helper that needs to be explicitly called, and simplify\nthe ptrace_get_task_struct() interface.  We don\u0027t need the request argument\nnow, and we return the task_struct directly, using ERR_PTR() for error\nreturns.  It\u0027s a bit more code in the callers, but we have two sane routines\nthat do one thing well now.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5bd0190bf3d7e53043a048e809ffa29d41b9d6ac",
      "tree": "c6fba8d5a532ecfa53dc97a3841d13d972964854",
      "parents": [
        "df69a60dc6afc2936d79054d30b481c1fd9720e5"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Tue Nov 29 19:34:32 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 29 19:47:03 2005 -0800"
      },
      "message": "[PATCH] Fix crash when ptrace poking hugepage areas\n\nset_page_dirty() will not cope with being handed a page * which is part of\na compound page, but not the master page in that compound page.  This case\ncan occur via access_process_vm() if you attemp to write to another\nprocess\u0027s hugepage memory area using ptrace() (causing an oops or hang).\n\nThis patch fixes the bug by only calling set_page_dirty() from\naccess_process_vm() if the page is not a compound page.  We already use a\nsimilar fix in bio_set_pages_dirty() for the case of direct io to\nhugepages.\n\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nAcked-by: William Irwin \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "005f18dfd0ed86c39716277b61dfb4bd2af91059",
      "tree": "8425228dc52bb38a5fe85d52afaecacca2f3a6fd",
      "parents": [
        "ab767201881fec073157986c314485ab26caa4a0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Nov 13 16:06:33 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:11 2005 -0800"
      },
      "message": "[PATCH] fix task_struct leak in ptrace\n\nWhen ptrace_attach fails we need to drop the task_struct reference.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "28d838cc4dfea980cb6eda0a7409cbf91889ca74",
      "tree": "4bbf42063718ac7744ca67ef9f67adce17bfbb5c",
      "parents": [
        "ac111bfaa6b0b3c0edc63c27bd9617d6b08851ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 11:33:07 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 11:33:07 2005 -0800"
      },
      "message": "Fix ptrace self-attach rule\n\nBefore we did CLONE_THREAD, the way to check whether we were attaching\nto ourselves was to just check \"current \u003d\u003d task\", but with CLONE_THREAD\nwe should check that the thread group ID matches instead.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "481bed454247538e9f57d4ea37b153ccba24ba7b",
      "tree": "bb4198296962c08dbf52e8f377dc27206f621640",
      "parents": [
        "db73e9aa99bf093427b79877f9475392724fd5e5"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Nov 07 00:59:47 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:53:42 2005 -0800"
      },
      "message": "[PATCH] consolidate sys_ptrace()\n\nThe sys_ptrace boilerplate code (everything outside the big switch\nstatement for the arch-specific requests) is shared by most architectures.\nThis patch moves it to kernel/ptrace.c and leaves the arch-specific code as\narch_ptrace.\n\nSome architectures have a too different ptrace so we have to exclude them.\nThey continue to keep their implementations.  For sh64 I had to add a\nsh64_ptrace wrapper because it does some initialization on the first call.\nFor um I removed an ifdefed SUBARCH_PTRACE_SPECIAL block, but\nSUBARCH_PTRACE_SPECIAL isn\u0027t defined anywhere in the tree.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-By: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "30e0fca6c1d7d26f3f2daa4dd2b12c51dadc778a",
      "tree": "945004584995e3af816125245bbb2436cc8ebc9e",
      "parents": [
        "68860ec10bcc07ab4f89f9d940e3b77ae5ca13b3"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@suse.de",
        "time": "Sun Oct 30 15:02:38 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:22 2005 -0800"
      },
      "message": "[PATCH] ptrace/coredump/exit_group deadlock\n\nI could seldom reproduce a deadlock with a task not killable in T state\n(TASK_STOPPED, not TASK_TRACED) by attaching a NPTL threaded program to\ngdb, by segfaulting the task and triggering a core dump while some other\ntask is executing exit_group and while one task is in ptrace_attached\nTASK_STOPPED state (not TASK_TRACED yet).  This originated from a gdb\nbugreport (the fact gdb was segfaulting the task wasn\u0027t a kernel bug), but\nI just incidentally noticed the gdb bug triggered a real kernel bug as\nwell.\n\nMost threads hangs in exit_mm because the core_dumping is still going, the\ncore dumping hangs because the stopped task doesn\u0027t exit, the stopped task\ncan\u0027t wakeup because it has SIGNAL_GROUP_EXIT set, hence the deadlock.\n\nTo me it seems that the problem is that the force_sig_specific(SIGKILL) in\nzap_threads is a noop if the task has PF_PTRACED set (like in this case\nbecause gdb is attached).  The __ptrace_unlink does nothing because the\nsignal-\u003eflags is set to SIGNAL_GROUP_EXIT|SIGNAL_STOP_DEQUEUED (verified).\n\nThe above info also shows that the stopped task hit a race and got the stop\nsignal (presumably by the ptrace_attach, only the attach, state is still\nTASK_STOPPED and gdb hangs waiting the core before it can set it to\nTASK_TRACED) after one of the thread invoked the core dump (it\u0027s the core\ndump that sets signal-\u003eflags to SIGNAL_GROUP_EXIT).\n\nSo beside the fact nobody would wakeup the task in __ptrace_unlink (the\nstate is _not_ TASK_TRACED), there\u0027s a secondary problem in the signal\nhandling code, where a task should ignore the ptrace-sigstops as long as\nSIGNAL_GROUP_EXIT is set (or the wakeup in __ptrace_unlink path wouldn\u0027t be\nenough).\n\nSo I attempted to make this patch that seems to fix the problem.  There\nwere various ways to fix it, perhaps you prefer a different one, I just\nopted to the one that looked safer to me.\n\nI also removed the clearing of the stopped bits from the zap_other_threads\n(zap_other_threads was safe unlike zap_threads).  I don\u0027t like useless\ncode, this whole NPTL signal/ptrace thing is already unreadable enough and\nfull of corner cases without confusing useless code into it to make it even\nless readable.  And if this code is really needed, then you may want to\nexplain why it\u0027s not being done in the other paths that sets\nSIGNAL_GROUP_EXIT at least.\n\nEven after this patch I still wonder who serializes the read of\np-\u003eptrace in zap_threads.\n\nPatch is called ptrace-core_dump-exit_group-deadlock-1.\n\nThis was the trace I\u0027ve got:\n\ntest          T ffff81003e8118c0     0 14305      1         14311 14309 (NOTLB)\nffff810058ccdde8 0000000000000082 000001f4000037e1 ffff810000000013\n       00000000000000f8 ffff81003e811b00 ffff81003e8118c0 ffff810011362100\n       0000000000000012 ffff810017ca4180\nCall Trace:\u003cffffffff801317ed\u003e{try_to_wake_up+893} \u003cffffffff80141677\u003e{finish_stop+87}\n       \u003cffffffff8014367f\u003e{get_signal_to_deliver+1359} \u003cffffffff8010d3ad\u003e{do_signal+157}\n       \u003cffffffff8013deee\u003e{ptrace_check_attach+222} \u003cffffffff80111575\u003e{sys_ptrace+2293}\n       \u003cffffffff80131810\u003e{default_wake_function+0} \u003cffffffff80196399\u003e{sys_ioctl+73}\n       \u003cffffffff8010dd27\u003e{sysret_signal+28} \u003cffffffff8010e00f\u003e{ptregscall_common+103}\n\ntest          D ffff810011362100     0 14309      1         14305 14312 (NOTLB)\nffff810053c81cf8 0000000000000082 0000000000000286 0000000000000001\n       0000000000000195 ffff810011362340 ffff810011362100 ffff81002e338040\n       ffff810001e0ca80 0000000000000001\nCall Trace:\u003cffffffff801317ed\u003e{try_to_wake_up+893} \u003cffffffff8044677d\u003e{wait_for_completion+173}\n       \u003cffffffff80131810\u003e{default_wake_function+0} \u003cffffffff80137435\u003e{exit_mm+149}\n       \u003cffffffff801381af\u003e{do_exit+479} \u003cffffffff80138d0c\u003e{do_group_exit+252}\n       \u003cffffffff801436db\u003e{get_signal_to_deliver+1451} \u003cffffffff8010d3ad\u003e{do_signal+157}\n       \u003cffffffff8013deee\u003e{ptrace_check_attach+222} \u003cffffffff80140850\u003e{specific_send_sig_info+2\n\n       \u003cffffffff8014208a\u003e{force_sig_info+186} \u003cffffffff804479a0\u003e{do_int3+112}\n       \u003cffffffff8010e308\u003e{retint_signal+61}\ntest          D ffff81002e338040     0 14311      1         14716 14305 (NOTLB)\nffff81005ca8dcf8 0000000000000082 0000000000000286 0000000000000001\n       0000000000000120 ffff81002e338280 ffff81002e338040 ffff8100481cb740\n       ffff810001e0ca80 0000000000000001\nCall Trace:\u003cffffffff801317ed\u003e{try_to_wake_up+893} \u003cffffffff8044677d\u003e{wait_for_completion+173}\n       \u003cffffffff80131810\u003e{default_wake_function+0} \u003cffffffff80137435\u003e{exit_mm+149}\n       \u003cffffffff801381af\u003e{do_exit+479} \u003cffffffff80142d0e\u003e{__dequeue_signal+558}\n       \u003cffffffff80138d0c\u003e{do_group_exit+252} \u003cffffffff801436db\u003e{get_signal_to_deliver+1451}\n       \u003cffffffff8010d3ad\u003e{do_signal+157} \u003cffffffff8013deee\u003e{ptrace_check_attach+222}\n       \u003cffffffff80140850\u003e{specific_send_sig_info+208} \u003cffffffff8014208a\u003e{force_sig_info+186}\n       \u003cffffffff804479a0\u003e{do_int3+112} \u003cffffffff8010e308\u003e{retint_signal+61}\n\ntest          D ffff810017ca4180     0 14312      1         14309 13882 (NOTLB)\nffff81005d15fcb8 0000000000000082 ffff81005d15fc58 ffffffff80130816\n       0000000000000897 ffff810017ca43c0 ffff810017ca4180 ffff81003e8118c0\n       0000000000000082 ffffffff801317ed\nCall Trace:\u003cffffffff80130816\u003e{activate_task+150} \u003cffffffff801317ed\u003e{try_to_wake_up+893}\n       \u003cffffffff8044677d\u003e{wait_for_completion+173} \u003cffffffff80131810\u003e{default_wake_function+0}\n       \u003cffffffff8018cdc3\u003e{do_coredump+819} \u003cffffffff80445f52\u003e{thread_return+82}\n       \u003cffffffff801436d4\u003e{get_signal_to_deliver+1444} \u003cffffffff8010d3ad\u003e{do_signal+157}\n       \u003cffffffff8013deee\u003e{ptrace_check_attach+222} \u003cffffffff80140850\u003e{specific_send_sig_info+2\n\n       \u003cffffffff804472e5\u003e{_spin_unlock_irqrestore+5} \u003cffffffff8014208a\u003e{force_sig_info+186}\n       \u003cffffffff804476ff\u003e{do_general_protection+159} \u003cffffffff8010e308\u003e{retint_signal+61}\n\nSigned-off-by: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Linus Torvalds \u003ctorvalds@osdl.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab8d11beb46f0bd0617e04205c01f5c1fe845b61",
      "tree": "33b5aa5b63268b8f4d1428d74547fd351bb37113",
      "parents": [
        "5e21ccb136047e556acf0fdf227cab5db05c1c25"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Tue Sep 06 15:18:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:43 2005 -0700"
      },
      "message": "[PATCH] remove duplicated code from proc and ptrace\n\nExtract common code used by ptrace_attach() and may_ptrace_attach()\ninto a separate function.\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7ed20e1ad521b5f5df61bf6559ae60738e393741",
      "tree": "90931724e45eaedb3445314e8b94e78253642395",
      "parents": [
        "e5bdd883a189243541e7a132385580703b049102"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Sun May 01 08:59:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:59:14 2005 -0700"
      },
      "message": "[PATCH] convert that currently tests _NSIG directly to use valid_signal()\n\nConvert most of the current code that uses _NSIG directly to instead use\nvalid_signal().  This avoids gcc -W warnings and off-by-one errors.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d59dd4620fb8d6422555a9e2b82a707718e68327",
      "tree": "78205657d24efcaa3f8314064951ac3814ed95a7",
      "parents": [
        "0d8d4d42f2d00eb65262b49f4edd4cf7ef4eb6fc"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "message": "[PATCH] use smp_mb/wmb/rmb where possible\n\nReplace a number of memory barriers with smp_ variants.  This means we won\u0027t\ntake the unnecessary hit on UP machines.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
