)]}'
{
  "log": [
    {
      "commit": "13b1c3d4b49bd83d861c775ca2db54e1692a1b07",
      "tree": "6cefdfef300d3431f2b2b32ec86000b0132bd762",
      "parents": [
        "976dde010e513a9c7c3117a32b7b015f84b37430"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Mar 03 20:22:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 07:59:54 2008 -0800"
      },
      "message": "freezer vs stopped or traced\n\nThis changes the \"freezer\" code used by suspend/hibernate in its treatment\nof tasks in TASK_STOPPED (job control stop) and TASK_TRACED (ptrace) states.\n\nAs I understand it, the intent of the \"freezer\" is to hold all tasks\nfrom doing anything significant.  For this purpose, TASK_STOPPED and\nTASK_TRACED are \"frozen enough\".  It\u0027s possible the tasks might resume\nfrom ptrace calls (if the tracer were unfrozen) or from signals\n(including ones that could come via timer interrupts, etc).  But this\ndoesn\u0027t matter as long as they quickly block again while \"freezing\" is\nin effect.  Some minor adjustments to the signal.c code make sure that\ntry_to_freeze() very shortly follows all wakeups from both kinds of\nstop.  This lets the freezer code safely leave stopped tasks unmolested.\n\nChanging this fixes the longstanding bug of seeing after resuming from\nsuspend/hibernate your shell report \"[1] Stopped\" and the like for all\nyour jobs stopped by ^Z et al, as if you had freshly fg\u0027d and ^Z\u0027d them.\nIt also removes from the freezer the arcane special case treatment for\nptrace\u0027d tasks, which relied on intimate knowledge of ptrace internals.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5606c2d4447e80b1d72406af4e78af1eda611d4",
      "tree": "ebdaa1a0aae4279b84af82651c16a8777f76bfe4",
      "parents": [
        "fbf6bfca76d50abef478ba902b8597ecbadfd390"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Feb 13 15:03:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:18 2008 -0800"
      },
      "message": "remove final fastcall users\n\nfastcall always expands to empty, remove it.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "146a505d498c36de98ec161d791dd50beca7f9a3",
      "tree": "f126c55b34488866ff179717f1b2a0c7cdd5df6b",
      "parents": [
        "d5df763b81946a405837b80874516dfc2a8f7ebf"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:19:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:29 2008 -0800"
      },
      "message": "Get rid of the kill_pgrp_info() function\n\nThere\u0027s only one caller left - the kill_pgrp one - so merge these two\nfunctions and forget the kill_pgrp_info one.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nReviewed-by: 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": "d5df763b81946a405837b80874516dfc2a8f7ebf",
      "tree": "6fdf06b2cda81d91e8aef03af4d880fc4a6cad72",
      "parents": [
        "56496c1d83dfae0c74e2f43adb45d2d95e16c0d5"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:19:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:29 2008 -0800"
      },
      "message": "Clean up the kill_something_info\n\nThis is the first step (of two) in removing the kill_pgrp_info.\n\nAll the users of this function are in kernel/signal.c, but all they need is to\ncall __kill_pgrp_info() with the tasklist_lock read-locked.\n\nFortunately, one of its users is the kill_something_info(), which already\nneeds this lock in one of its branches, so clean these branches up and call\nthe __kill_pgrp_info() directly.\n\nBased on Oleg\u0027s view of how this function should look.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-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": "fea9d175545b38cb3e84569400419eb81bc90fa3",
      "tree": "0d43fe9ed2ea6104ee8b15a3eb8da081dd08fd35",
      "parents": [
        "46f382d2b69d2221086b823f0dbc8f32c027cac2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:29 2008 -0800"
      },
      "message": "ITIMER_REAL: convert to use struct pid\n\nsignal_struct-\u003etsk points to the -\u003egroup_leader and thus we have the nasty\ncode in de_thread() which has to change it and restart -\u003ereal_timer if the\nleader is changed.\n\nUse \"struct pid *leader_pid\" instead.  This also allows us to kill now\nunneeded send_group_sig_info().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d36174bc2bce0372693a9cfbdef8b2689c9982cb",
      "tree": "cdb327c68844f105a8ac8b732e862f24edc35f24",
      "parents": [
        "f374ada53bd1ca7c16d7607369fccc6769704956"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:18 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:28 2008 -0800"
      },
      "message": "uglify kill_pid_info() to fix kill() vs exec() race\n\nkill_pid_info()-\u003epid_task() could be the old leader of the execing process.\nIn that case it is possible that the leader will be released before we take\nsiglock. This means that kill_pid_info() (and thus sys_kill()) can return a\nfalse -ESRCH.\n\nChange the code to retry when lock_task_sighand() fails. The endless loop is\nnot possible, __exit_signal() both clears -\u003esighand and does detach_pid().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\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": "5dee1707dfbfc55eb7569b9ae5abaf932bd4c377",
      "tree": "6e162f61f9645f790aa14cb4146882b918bb0286",
      "parents": [
        "6806aac6d282d58b97763f5e17e2787e62c3b440"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:27 2008 -0800"
      },
      "message": "move the related code from exit_notify() to exit_signals()\n\nThe previous bugfix was not optimal, we shouldn\u0027t care about group stop\nwhen we are the only thread or the group stop is in progress.  In that case\nnothing special is needed, just set PF_EXITING and return.\n\nAlso, take the related \"TIF_SIGPENDING re-targeting\" code from exit_notify().\n\nSo, from the performance POV the only difference is that we don\u0027t trust\n!signal_pending() until we take -\u003esiglock.  But this in fact fixes another\n___pure___ theoretical minor race.  __group_complete_signal() finds the\ntask without PF_EXITING and chooses it as the target for signal_wake_up().\nBut nothing prevents this task from exiting in between without noticing the\npending signal and thus unpredictably delaying the actual delivery.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\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": "d12619b5ff5664623524aef796514d1946ea3b4a",
      "tree": "23140ca0148f9154440d3056e2040d8df468a24b",
      "parents": [
        "430c623121ea88ca80595c99fdc63b7f8a803ae5"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:27 2008 -0800"
      },
      "message": "fix group stop with exit race\n\ndo_signal_stop() counts all sub-thread and sets -\u003egroup_stop_count\naccordingly.  Every thread should decrement -\u003egroup_stop_count and stop,\nthe last one should notify the parent.\n\nHowever a sub-thread can exit before it notices the signal_pending(), or it\nmay be somewhere in do_exit() already.  In that case the group stop never\nfinishes properly.\n\nNote: this is a minimal fix, we can add some optimizations later.  Say we\ncan return quickly if thread_group_empty().  Also, we can move some signal\nrelated code from exit_notify() to exit_signals().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\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": "20686a309aa98c518adbbd9b57cdbb1804143deb",
      "tree": "4aac811e67d777d3c0015ca51312aa93b4832d35",
      "parents": [
        "9cbab8100538efdd93aeae6fc37787d986f2f558"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "ptrace_stop: fix racy nonstop_code setting\n\nIf the tracer is gone and we are not going to stop, ptrace_stop() sets\n-\u003eexit_code \u003d nostop_code.  However, the tracer could actually clear the\nexit code before detaching.  In that case get_signal_to_deliver() \"resends\"\nthe signal which was cancelled by the debugger.  For example, it is\npossible that a quick PTRACE_ATTACH + PTRACE_DETACH can leave the tracee in\nSTOPPED state.\n\nChange the behaviour of ptrace_stop().  If the caller is ptrace notify(),\nwe should always clear -\u003eexit_code.  If the caller is\nget_signal_to_deliver(), we should not touch it at all.  To do so, change\nthe nonstop_code parameter to \"bool clear_code\" and change the callers\naccordingly.\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": "6405f7f4675884b671bee66678e1c2859bdb0e56",
      "tree": "31f0e42b011de36976f5a50b86aee7132f6b82b4",
      "parents": [
        "c0c0b649d67aa775aa9851de61aade17504be70c"
      ],
      "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_stop: fix the race with ptrace detach+attach\n\nIf the tracer went away (may_ptrace_stop() failed), ptrace_stop() drops\ntasklist and then changes the -\u003estate from TASK_TRACED to TASK_RUNNING.\n\nThis can fool another tracer which attaches to us in between.  Change the\n-\u003estate under tasklist_lock to ensure that ptrace_check_attach() can\u0027t wrongly\nsucceed.  Also, remove the unnecessary mb().\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": "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": "1a669c2f16d478cb7f4452e5fb8d09320831f4a1",
      "tree": "b13f0aa0aebc51d1795203658053484b7c97b8cb",
      "parents": [
        "941d2380e979dfefb6c824452e9f42be3ef948ee"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Feb 06 01:37:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:07 2008 -0800"
      },
      "message": "Add arch_ptrace_stop\n\nThis adds support to allow asm/ptrace.h to define two new macros,\narch_ptrace_stop_needed and arch_ptrace_stop.  These control special\nmachine-specific actions to be done before a ptrace stop.  The new code\ncompiles away to nothing when the new macros are not defined.  This is the\ncase on all machines to begin with.\n\nOn ia64, these macros will be defined to solve the long-standing issue of\nptrace vs register backing store.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Petr Tesarik \u003cptesarik@suse.cz\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Matthew Wilcox \u003cwilly@debian.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": "ed5d2cac114202fe2978a9cbcab8f5032796d538",
      "tree": "aa9aaea1aa0945bd9159685d1b04897d105a90c9",
      "parents": [
        "f558b7e408026eb3c6afcd0e8fc1f7fe31195a6a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "exec: rework the group exit and fix the race with kill\n\nAs Roland pointed out, we have the very old problem with exec.  de_thread()\nsets SIGNAL_GROUP_EXIT, kills other threads, changes -\u003egroup_leader and then\nclears signal-\u003eflags.  All signals (even fatal ones) sent in this window\n(which is not too small) will be lost.\n\nWith this patch exec doesn\u0027t abuse SIGNAL_GROUP_EXIT.  signal_group_exit(),\nthe new helper, should be used to detect exit_group() or exec() in progress.\nIt can have more users, but this patch does only strictly necessary changes.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\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": "f558b7e408026eb3c6afcd0e8fc1f7fe31195a6a",
      "tree": "3473617a87d54b4388c2336303075b1a54e30552",
      "parents": [
        "198466b41d11dd062fb26ee0376080458d7bfcaf"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "remove handle_group_stop() in favor of do_signal_stop()\n\nEvery time we set SIGNAL_GROUP_EXIT or clear SIGNAL_STOP_DEQUEUED we also\nreset -\u003egroup_stop_count.\n\nThis means that the SIGNAL_GROUP_EXIT check in handle_group_stop() is not\nneeded, and do_signal_stop() should check SIGNAL_STOP_DEQUEUED only when\n-\u003egroup_stop_count \u003d\u003d 0. With these changes handle_group_stop() becomes the\nsubset of do_signal_stop(), we can kill it and use do_signal_stop() instead.\n\nAlso, a preparation for the next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\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": "198466b41d11dd062fb26ee0376080458d7bfcaf",
      "tree": "ccf725c9a05e13b983e4480fd218280d5e58b47e",
      "parents": [
        "bdff746a3915f109bd13730b6847e33e17e91ed3"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:23 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "__group_complete_signal(): fix coredump with group stop race\n\nWhen __group_complete_signal() sees sig_kernel_coredump() signal, it starts\nthe group stop, but sets -\u003egroup_exit_task \u003d t in a hope that \"t\" will\nactually dequeue this signal and invoke do_coredump().  However, by the\ntime \"t\" enters get_signal_to_deliver() it is possible that the signal was\nblocked/ignored or we have another pending !SIG_KERNEL_COREDUMP_MASK signal\nwhich will be dequeued first.  This means the task could be stopped but not\nkilled.\n\nRemove this code from __group_complete_signal().  Note also this patch\nremoves the bogus signal_wake_up(t, 1).  This thread can\u0027t be\nSTOPPED/TRACED, note the corresponding check in wants_signal().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\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": "13f09b95a82c46ed608d057b22e0dd18ebfff22a",
      "tree": "99d8b9ed6f725bbd4ad58a1193929f1064c4b1d0",
      "parents": [
        "75659ca0c10992dcb39258518368a0f6f56e935d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 31 20:40:29 2008 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 12:58:14 2008 +1100"
      },
      "message": "Ensure that we export __fatal_signal_pending()\n\nIt may be used by the modules nfs.ko and sunrpc.ko\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n[ Made it a regular export rather than GPL-only  - Linus ]\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": "65ea5b0349903585bfed9720fa06f5edb4f1cd25",
      "tree": "6c252228c34416b7e2077f23475de34500c2ab8a",
      "parents": [
        "53756d3722172815f52272b28c6d5d5e9639adde"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jan 30 13:30:56 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:56 2008 +0100"
      },
      "message": "x86: rename the struct pt_regs members for 32/64-bit consistency\n\nWe have a lot of code which differs only by the naming of specific\nmembers of structures that contain registers.  In order to enable\nadditional unifications, this patch drops the e- or r- size prefix\nfrom the register names in struct pt_regs, and drops the x- prefixes\nfor segment registers on the 32-bit side.\n\nThis patch also performs the equivalent renames in some additional\nplaces that might be candidates for unification in the future.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f776d12dd16da1b0cd55a1240002c1b31f315d5d",
      "tree": "b57a69c2143361edf6b2c2d4fd1b6e8616c8f347",
      "parents": [
        "f021a3c2b14d0dd082c2cee890c204d9e1dee52b"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Dec 06 11:15:50 2007 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Dec 06 17:35:35 2007 -0500"
      },
      "message": "Add fatal_signal_pending\n\nLike signal_pending, but it\u0027s only true for signals which are fatal to\nthis process\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "f021a3c2b14d0dd082c2cee890c204d9e1dee52b",
      "tree": "aa37eb6845605de6c69a70ac8cc3b22e2b0170a6",
      "parents": [
        "338077e54e17e656da470a84724b773816207316"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Dec 06 11:13:16 2007 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Dec 06 17:35:28 2007 -0500"
      },
      "message": "Add TASK_WAKEKILL\n\nSet TASK_WAKEKILL for TASK_STOPPED and TASK_TRACED, add TASK_KILLABLE and\nuse TASK_WAKEKILL in signal_wake_up()\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "e1abb39c60971590b6580c0d3a12119dcbad9c50",
      "tree": "eed33345fb9a46029c54eea84aa03d7587038294",
      "parents": [
        "d9514f6c6b95b5a747ba902858eff577281e8659"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Dec 06 11:07:35 2007 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Dec 06 17:35:04 2007 -0500"
      },
      "message": "signal: Use task_is_*\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "325d22df7b19e0116aff3391d3a03f73d0634ded",
      "tree": "25a46ecf33feb35f243bfaeb36510892789ff8a8",
      "parents": [
        "6fa02839bf9412e18e773d04e96182b4cd0b5d57"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Nov 12 15:41:55 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Nov 12 16:05:23 2007 -0800"
      },
      "message": "sigwait eats blocked default-ignore signals\n\nWhile a signal is blocked, it must be posted even if its action is\nSIG_IGN or is SIG_DFL with the default action to ignore.  This works\nright most of the time, but is broken when a sigwait (rt_sigtimedwait)\nis in progress.  This changes the early-discard check to respect\nreal_blocked.  ~blocked is the set to check for \"should wake up now\",\nbut ~(blocked|real_blocked) is the set for \"blocked\" semantics as\ndefined by POSIX.\n\nThis fixes bugzilla entry 9347, see\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9347\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc5f916e90a811dd8f809b4d17409f98e74b237c",
      "tree": "14a6c21e0f2de43553e94460aca897076d0f1952",
      "parents": [
        "c8593884f2768fa3ff6f7e199d75b6ca91f9e891"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Oct 29 14:37:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 30 08:06:55 2007 -0700"
      },
      "message": "Freezer: do not allow freezing processes to clear TIF_SIGPENDING\n\nDo not allow processes to clear their TIF_SIGPENDING if TIF_FREEZE is set,\nso that they will not race with the freezer (like mysqld does, for example).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\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": "ca5cd877ae699e758e6f26efc11b01bf6631d427",
      "tree": "f2337ce76ab006d9705b10e8e0ed2f62487c837f",
      "parents": [
        "2a397e82c7db18019e408f953dd58dc1963a328c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Oct 29 04:31:16 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 29 07:41:32 2007 -0700"
      },
      "message": "x86 merge fallout: uml\n\nDon\u0027t undef __i386__/__x86_64__ in uml anymore, make sure that (few) places\nthat required adjusting the ifdefs got those.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba25f9dcc4ea6e30839fcab5a5516f2176d5bfed",
      "tree": "3123c03b25dd5c0cd24b6ab4fc16731217838157",
      "parents": [
        "9a2e70572e94e21e7ec4186702d045415422bda0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:43 2007 -0700"
      },
      "message": "Use helpers to obtain task pid in printks\n\nThe task_struct-\u003epid member is going to be deprecated, so start\nusing the helpers (task_pid_nr/task_pid_vnr/task_pid_nr_ns) in\nthe kernel.\n\nThe first thing to start with is the pid, printed to dmesg - in\nthis case we may safely use task_pid_nr(). Besides, printks produce\nmore (much more) than a half of all the explicit pid usage.\n\n[akpm@linux-foundation.org: git-drm went and changed lots of stuff]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\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": "0fbc26a6cfab9f377e82e28225f2c0c6b4661e5c",
      "tree": "e91632584a3e10a2a4b0ba34843d9363eca66302",
      "parents": [
        "c9c5d92211883e9ae22394d1f157ab0d3a7ec895"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu Oct 18 23:40:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:40 2007 -0700"
      },
      "message": "pid namespaces: allow signalling cgroup-init\n\nOnly the global-init process must be special - any other cgroup-init\nprocess must be killable to prevent run-away processes in the system.\n\nTODO: \tIdeally we should allow killing the cgroup-init only from parent\n\tcgroup and prevent it being killed from within the cgroup.\n\tBut that is a more complex change and will be addressed by a follow-on\n\tpatch. For now allow the cgroup-init to be terminated by any process\n\twith sufficient privileges.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\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": "b460cbc581a53cc088ceba80608021dd49c63c43",
      "tree": "83c28d0adbc15f4157c77b40fa60c40a71cb8673",
      "parents": [
        "3743ca05ff464b8a9e345c08a6c9ce30485f9805"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: define is_global_init() and is_container_init()\n\nis_init() is an ambiguous name for the pid\u003d\u003d1 check.  Split it into\nis_global_init() and is_container_init().\n\nA cgroup init has it\u0027s tsk-\u003epid \u003d\u003d 1.\n\nA global init also has it\u0027s tsk-\u003epid \u003d\u003d 1 and it\u0027s active pid namespace\nis the init_pid_ns.  But rather than check the active pid namespace,\ncompare the task structure with \u0027init_pid_ns.child_reaper\u0027, which is\ninitialized during boot to the /sbin/init process and never changes.\n\nChangelog:\n\n\t2.6.22-rc4-mm2-pidns1:\n\t- Use \u0027init_pid_ns.child_reaper\u0027 to determine if a given task is the\n\t  global init (/sbin/init) process. This would improve performance\n\t  and remove dependence on the task_pid().\n\n\t2.6.21-mm2-pidns2:\n\n\t- [Sukadev Bhattiprolu] Changed is_container_init() calls in {powerpc,\n\t  ppc,avr32}/traps.c for the _exception() call to is_global_init().\n\t  This way, we kill only the cgroup if the cgroup\u0027s init has a\n\t  bug rather than force a kernel panic.\n\n[akpm@linux-foundation.org: fix comment]\n[sukadev@us.ibm.com: Use is_global_init() in arch/m32r/mm/fault.c]\n[bunk@stusta.de: kernel/pid.c: remove unused exports]\n[sukadev@us.ibm.com: Fix capability.c to work with threaded init]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88f21d818255bc61c002478d21caf52f8a9b8def",
      "tree": "de16e38862622b3d295f7850cdb006922307fb8d",
      "parents": [
        "2894d650cd9715d00ca196c711265819ef6ebd2d"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu Oct 18 23:39:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: rename child_reaper() function\n\nRename the child_reaper() function to task_child_reaper() to be similar to\nother task_* functions and to distinguish the function from \u0027struct\npid_namspace.child_reaper\u0027.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a47afb0f9d794d525a372c8d69902147cc88222a",
      "tree": "7bd67280e2edc1c3b1803d4a93bee794088e9342",
      "parents": [
        "858d72ead4864da0fb0b89b919524125ce998e27"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:39:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: round up the API\n\nThe set of functions process_session, task_session, process_group and\ntask_pgrp is confusing, as the names can be mixed with each other when looking\nat the code for a long time.\n\nThe proposals are to\n* equip the functions that return the integer with _nr suffix to\n  represent that fact,\n* and to make all functions work with task (not process) by making\n  the common prefix of the same name.\n\nFor monotony the routines signal_session() and set_signal_session() are\nreplaced with task_session_nr() and set_task_session(), especially since they\nare only used with the explicit task-\u003esignal dereference.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5d8c5976d6adeddb8208c240460411e2198b393",
      "tree": "bc7ee9762366c3790f0c0c84e8de73487b5ef261",
      "parents": [
        "e42837bcd35b75bb59ae5d3e62f87be1aeeb05c3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:19 2007 -0700"
      },
      "message": "freezer: do not send signals to kernel threads\n\nThe freezer should not send signals to kernel threads, since that may lead to\nsubtle problems.  In particular, commit\nb74d0deb968e1f85942f17080eace015ce3c332c has changed recalc_sigpending_tsk()\nso that it doesn\u0027t clear TIF_SIGPENDING.  For this reason, if the freezer\ncontinues to send fake signals to kernel threads and the freezing of kernel\nthreads fails, some of them may be running with TIF_SIGPENDING set forever.\n\nAccordingly, recalc_sigpending_tsk() shouldn\u0027t set the task\u0027s TIF_SIGPENDING\nflag if TIF_FREEZE is set.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "13fbcb731220341537131b32cf01b1e70df7206d",
      "tree": "be6bd965e921b0918eb7b55626a0196915302f07",
      "parents": [
        "6db840fa7887980ef68a649640d506fe069eef0c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:27:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:54 2007 -0700"
      },
      "message": "do_sigaction: don\u0027t worry about signal_pending()\n\ndo_sigaction() returns -ERESTARTNOINTR if signal_pending(). The comment says:\n\n\t* If there might be a fatal signal pending on multiple\n\t* threads, make sure we take it before changing the action.\n\nI think this is not needed. We should only worry about SIGNAL_GROUP_EXIT case,\nbit it implies a pending SIGKILL which can\u0027t be cleared by do_sigaction.\n\nKill this special case.\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": "18442cf28af81378cf8996d264b368bba47cf846",
      "tree": "eb260ade275e939f6a3314bd5cbc538fc0cbad56",
      "parents": [
        "442a10cf9e1c350b4de4dd6f22c72618a0b13d7f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:27:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "__group_complete_signal: eliminate unneeded wakeup of -\u003egroup_exit_task\n\nCleanup.  __group_complete_signal() wakes up -\u003egroup_exit_task twice.  The\nsecond wakeup\u0027s state includes TASK_UNINTERRUPTIBLE, which is not very\nappropriate.\n\nChange the code to pass the \"correct\" argument to signal_wake_up() and kill\nnow unneeded wake_up_process().\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": "ebca4cda1133775111e8b09f7124a7e5e391926d",
      "tree": "074d2791b1e7b784aa6126012eeac38d505b2c06",
      "parents": [
        "3ae4cbadf4bf97ee137b921a1b928d2a5dcd26ca"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "zap_other_threads: don\u0027t optimize thread_group_empty() case\n\nNowadays thread_group_empty() and next_thread() are simple list operations,\nthis optimization doesn\u0027t make sense: we are doing exactly same check one\nline below.\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": "045f902de5a6eb5927c0f092c38be7a381f634f0",
      "tree": "ab85cec6415197016032f97146c8004e846cdd5c",
      "parents": [
        "d2ee7198cc2414aade234a3cebc69e6cbff35d9b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "do_sigaction: remove now unneeded recalc_sigpending()\n\nWith the recent changes, do_sigaction()-\u003erecalc_sigpending_and_wake() can\nnever clear TIF_SIGPENDING. Instead, it can set this flag and wake up the\nthread without any reason. Harmless, but unneeded and wastes CPU.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: 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": "291041e935e6d0513f2b7e4a300aa9f02ec1d925",
      "tree": "626b06b52d5ce0a41c7bf21ce4314e2a9fbe79ff",
      "parents": [
        "7a5c5d5735e785a700a377a5fce913b8ad45a58f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 07 00:24:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "fix bogus reporting of signals by audit\n\nAsync signals should not be reported as sent by current in audit log.  As\nit is, we call audit_signal_info() too early in check_kill_permission().\nNote that check_kill_permission() has that test already - it needs to know\nif it should apply current-based permission checks.  So the solution is to\nmove the call of audit_signal_info() between those.\n\nBogosity in question is easily reproduced - add a rule watching for e.g.\nkill(2) from specific process (so that audit_signal_info() would not\nshort-circuit to nothing), say load_policy, watch the bogus OBJ_PID entry\nin audit logs claiming that write(2) on selinuxfs file issued by\nload_policy(8) had somehow managed to send a signal to syslogd...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nAcked-by: Eric Paris \u003ceparis@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": "b8fceee17a310f189188599a8fa5e9beaff57eb0",
      "tree": "21308319be2579059a4d4d7db680a73334659f82",
      "parents": [
        "9db619e66503494e41159de3c76fafabe80d016b"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Thu Sep 20 12:40:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Sep 20 13:19:59 2007 -0700"
      },
      "message": "signalfd simplification\n\nThis simplifies signalfd code, by avoiding it to remain attached to the\nsighand during its lifetime.\n\nIn this way, the signalfd remain attached to the sighand only during\npoll(2) (and select and epoll) and read(2).  This also allows to remove\nall the custom \"tsk \u003d\u003d current\" checks in kernel/signal.c, since\ndequeue_signal() will only be called by \"current\".\n\nI think this is also what Ben was suggesting time ago.\n\nThe external effect of this, is that a thread can extract only its own\nprivate signals and the group ones.  I think this is an acceptable\nbehaviour, in that those are the signals the thread would be able to\nfetch w/out signalfd.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60187d2708caa870f0825d753df1612ea688eb9e",
      "tree": "35bbae1a2cdc1887ea1d85aa9c03ec0415dc5912",
      "parents": [
        "99db67bc04af0f2e8cb710ac92aaeb9af135a7c6"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Thu Aug 30 23:56:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Aug 31 01:42:23 2007 -0700"
      },
      "message": "sigqueue_free: fix the race with collect_signal()\n\nSpotted by taoyue \u003cyue.tao@windriver.com\u003e and Jeremy Katz \u003cjeremy.katz@windriver.com\u003e.\n\ncollect_signal:\t\t\t\tsigqueue_free:\n\n\tlist_del_init(\u0026first-\u003elist);\n\t\t\t\t\t\tif (!list_empty(\u0026q-\u003elist)) {\n\t\t\t\t\t\t\t// not taken\n\t\t\t\t\t\t}\n\t\t\t\t\t\tq-\u003eflags \u0026\u003d ~SIGQUEUE_PREALLOC;\n\n\t__sigqueue_free(first);\t\t\t__sigqueue_free(q);\n\nNow, __sigqueue_free() is called twice on the same \"struct sigqueue\" with the\nobviously bad implications.\n\nIn particular, this double free breaks the array_cache-\u003eavail logic, so the\nsame sigqueue could be \"allocated\" twice, and the bug can manifest itself via\nthe \"impossible\" BUG_ON(!SIGQUEUE_PREALLOC) in sigqueue_free/send_sigqueue.\n\nHopefully this can explain these mysterious bug-reports, see\n\n\thttp://marc.info/?t\u003d118766926500003\n\thttp://marc.info/?t\u003d118466273000005\n\nAlexey Dobriyan reports this patch makes the difference for the testcase, but\nnobody has an access to the application which opened the problems originally.\n\nAlso, this patch removes tasklist lock/unlock, -\u003esiglock is enough.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: taoyue \u003cyue.tao@windriver.com\u003e\nCc: Jeremy Katz \u003cjeremy.katz@windriver.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "834d216e1f804560bd1421c511ad168d7c24b01d",
      "tree": "c245ab7814bc54c6f3b8aa877d2dd77c92450a76",
      "parents": [
        "d02479bdeb1c9b037892061cdcf4e730183391fa"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Aug 22 14:01:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Aug 22 19:52:46 2007 -0700"
      },
      "message": "signalfd: fix interaction with posix-timers\n\ndequeue_signal:\n\n\tif (__SI_TIMER) {\n\t\tspin_unlock(\u0026tsk-\u003esighand-\u003esiglock);\n\t\tdo_schedule_next_timer(info);\n\t\tspin_lock(\u0026tsk-\u003esighand-\u003esiglock);\n\t}\n\nUnless tsk \u003d\u003d curent, this is absolutely unsafe: nothing prevents tsk from\nexiting. If signalfd was passed to another process, do_schedule_next_timer()\nis just wrong.\n\nAdd yet another \"tsk \u003d\u003d current\" check into dequeue_signal().\n\nThis patch fixes an oopsable bug, but breaks the scheduling of posix timers\nif the shared __SI_TIMER signal was fetched via signalfd attached to another\nsub-thread. Mostly fixed by the next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "247284481ca40288bd120cf0707681c3bdbee78f",
      "tree": "d0de3020d9961561b66b44af8ddc9e4d1442a7fe",
      "parents": [
        "b6b1d87785712474d0ed80689c17107d616a1171"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sat Aug 04 01:04:41 2007 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Aug 03 15:06:33 2007 -0700"
      },
      "message": "Kill some obsolete sub-thread-ptrace stuff\n\nThere is a couple of subtle checks which were needed to handle ptracing from\nthe same thread group. This was deprecated a long ago, imho this code just\ncomplicates the understanding.\n\nAnd, the \"-\u003eparent-\u003esignal-\u003eflags \u0026 SIGNAL_GROUP_EXIT\" check in exit_notify()\nis not right. SIGNAL_GROUP_EXIT can mean exec(), not exit_group(). This means\nptracer can lose a ptraced zombie on exec(). Minor problem, but still the bug.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abd4f7505bafdd6c5319fe3cb5caf9af6104e17a",
      "tree": "a543fce720331dbf6194a2c0471f36b7727b9736",
      "parents": [
        "5fa63fccc579ac609fc7f86d29ccb3a2edf910d7"
      ],
      "author": {
        "name": "Masoud Asgharifard Sharbiani",
        "email": "masouds@google.com",
        "time": "Sun Jul 22 11:12:28 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 22 11:03:37 2007 -0700"
      },
      "message": "x86: i386-show-unhandled-signals-v3\n\nThis patch makes the i386 behave the same way that x86_64 does when a\nsegfault happens.  A line gets printed to the kernel log so that tools\nthat need to check for failures can behave more uniformly between\ndebug.show_unhandled_signals sysctl variable to 0 (or by doing echo 0 \u003e\n/proc/sys/debug/exception-trace)\n\nAlso, all of the lines being printed are now using printk_ratelimit() to\ndeny the ability of DoS from a local user with a program like the\nfollowing:\n\nmain()\n{\n       while (1)\n               if (!fork()) *(int *)0 \u003d 0;\n}\n\nThis new revision also includes the fix that Andrew did which got rid of\nnew sysctl that was added to the system in earlier versions of this.\nAlso, \u0027show-unhandled-signals\u0027 sysctl has been renamed back to the old\n\u0027exception-trace\u0027 to avoid breakage of people\u0027s scripts.\n\nAK: Enabling by default for i386 will be likely controversal, but let\u0027s see what happens\nAK: Really folks, before complaining just fix your segfaults\nAK: I bet this will find a lot of silent issues\n\nSigned-off-by: Masoud Sharbiani \u003cmasouds@google.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n[ Personally, I\u0027ve found the complaints useful on x86-64, so I\u0027m all for\n  this. That said, I wonder if we could do it more prettily..   -Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45807a1df9f51d28d0ff0c6bcf900c210411d7c9",
      "tree": "df70e9162ce50ada2393987ca2a5b5794dcbb644",
      "parents": [
        "99fc06df72fe1c9ad3ec274720dcb5658c40bfd2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 15 23:40:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:43 2007 -0700"
      },
      "message": "vdso: print fatal signals\n\nAdd the print-fatal-signals\u003d1 boot option and the\n/proc/sys/kernel/print-fatal-signals runtime switch.\n\nThis feature prints some minimal information about userspace segfaults to\nthe kernel console.  This is useful to find early bootup bugs where\nuserspace debugging is very hard.\n\nDefaults to off.\n\n[akpm@linux-foundation.org: Don\u0027t add new sysctl numbers]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "caec4e8dc85e0644ec24aeb36285e1ba02da58cc",
      "tree": "c40510afdc1676f268d14ecb8bfe2ab887cf0b0f",
      "parents": [
        "bd197234b0a616c8f04f6b682326a5a24b33ca92"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Jun 12 08:16:18 2007 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jun 18 10:18:32 2007 -0700"
      },
      "message": "Fix signalfd interaction with thread-private signals\n\nDon\u0027t let signalfd dequeue private signals off other threads (in the\ncase of things like SIGILL or SIGSEGV, trying to do so would result\nin undefined behaviour on who actually gets the signal, since they\nare force unblocked).\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b74d0deb968e1f85942f17080eace015ce3c332c",
      "tree": "7db612ba2931ef22ff7166f51dcb0fd1fe1d7ee1",
      "parents": [
        "8381e04b90ce9e7669a2d20aa7aaff3be910e447"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jun 06 03:59:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jun 07 08:52:15 2007 -0700"
      },
      "message": "Restrict clearing TIF_SIGPENDING\n\nThis patch should get a few birds.  It prevents sigaction calls from\nclearing TIF_SIGPENDING in other threads, which could leak -ERESTART*.\nAnd It fixes ptrace_stop not to clear it, which done at the syscall exit\nstop could leak -ERESTART*.  It probably removes the harm from signalfd,\nat least assuming it never calls dequeue_signal on kernel threads that\nmight have used block_all_signals.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Satoru Takeuchi \u003ctakeuchi_satoru@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7bb44adef39ad3bda2be40bb34686bc56bd563a5",
      "tree": "1e9eecbd03877c7ac8b00a8cb1d4ae54ebec3bb1",
      "parents": [
        "3c6df2a9177c010bf811c361149069e4bfd9bb11"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed May 23 13:57:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 23 20:14:12 2007 -0700"
      },
      "message": "recalc_sigpending_tsk fixes\n\nSteve Hawkes discovered a problem where recalc_sigpending_tsk was called in\ndo_sigaction but no signal_wake_up call was made, preventing later signals\nfrom waking up blocked threads with TIF_SIGPENDING already set.\n\nIn fact, the few other calls to recalc_sigpending_tsk outside the signals\ncode are also subject to this problem in other race conditions.\n\nThis change makes recalc_sigpending_tsk private to the signals code.  It\nchanges the outside calls, as well as do_sigaction, to use the new\nrecalc_sigpending_and_wake instead.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003cSteve.Hawkes@motorola.com\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": "853da0022023c046e0a5ccc51d427745f0c94de7",
      "tree": "bc36f80f00aa11c3c239a80ecf04ba8238219ce8",
      "parents": [
        "5884c40668a928bba017eaf54e2eb3c01c8a98e6",
        "0a4ff8c2598b72f2fa9d50aae9e1809e684dbf41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 09:57:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 09:57:16 2007 -0700"
      },
      "message": "Merge branch \u0027audit.b38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  [PATCH] Abnormal End of Processes\n  [PATCH] match audit name data\n  [PATCH] complete message queue auditing\n  [PATCH] audit inode for all xattr syscalls\n  [PATCH] initialize name osid\n  [PATCH] audit signal recipients\n  [PATCH] add SIGNAL syscall class (v3)\n  [PATCH] auditing ptrace\n"
    },
    {
      "commit": "fba2afaaec790dc5ab4ae8827972f342211bbb86",
      "tree": "2694d4cd8c6b7d69a5569b92151d61a3d4af39b7",
      "parents": [
        "5dc8bf8132d59c03fe2562bce165c2f03f021687"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Thu May 10 22:23:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 08:29:36 2007 -0700"
      },
      "message": "signal/timer/event: signalfd core\n\nThis patch series implements the new signalfd() system call.\n\nI took part of the original Linus code (and you know how badly it can be\nbroken :), and I added even more breakage ;) Signals are fetched from the same\nsignal queue used by the process, so signalfd will compete with standard\nkernel delivery in dequeue_signal().  If you want to reliably fetch signals on\nthe signalfd file, you need to block them with sigprocmask(SIG_BLOCK).  This\nseems to be working fine on my Dual Opteron machine.  I made a quick test\nprogram for it:\n\nhttp://www.xmailserver.org/signafd-test.c\n\nThe signalfd() system call implements signal delivery into a file descriptor\nreceiver.  The signalfd file descriptor if created with the following API:\n\nint signalfd(int ufd, const sigset_t *mask, size_t masksize);\n\nThe \"ufd\" parameter allows to change an existing signalfd sigmask, w/out going\nto close/create cycle (Linus idea).  Use \"ufd\" \u003d\u003d -1 if you want a brand new\nsignalfd file.\n\nThe \"mask\" allows to specify the signal mask of signals that we are interested\nin.  The \"masksize\" parameter is the size of \"mask\".\n\nThe signalfd fd supports the poll(2) and read(2) system calls.  The poll(2)\nwill return POLLIN when signals are available to be dequeued.  As a direct\nconsequence of supporting the Linux poll subsystem, the signalfd fd can use\nused together with epoll(2) too.\n\nThe read(2) system call will return a \"struct signalfd_siginfo\" structure in\nthe userspace supplied buffer.  The return value is the number of bytes copied\nin the supplied buffer, or -1 in case of error.  The read(2) call can also\nreturn 0, in case the sighand structure to which the signalfd was attached,\nhas been orphaned.  The O_NONBLOCK flag is also supported, and read(2) will\nreturn -EAGAIN in case no signal is available.\n\nIf the size of the buffer passed to read(2) is lower than sizeof(struct\nsignalfd_siginfo), -EINVAL is returned.  A read from the signalfd can also\nreturn -ERESTARTSYS in case a signal hits the process.  The format of the\nstruct signalfd_siginfo is, and the valid fields depends of the (-\u003ecode \u0026\n__SI_MASK) value, in the same way a struct siginfo would:\n\nstruct signalfd_siginfo {\n\t__u32 signo;\t/* si_signo */\n\t__s32 err;\t/* si_errno */\n\t__s32 code;\t/* si_code */\n\t__u32 pid;\t/* si_pid */\n\t__u32 uid;\t/* si_uid */\n\t__s32 fd;\t/* si_fd */\n\t__u32 tid;\t/* si_fd */\n\t__u32 band;\t/* si_band */\n\t__u32 overrun;\t/* si_overrun */\n\t__u32 trapno;\t/* si_trapno */\n\t__s32 status;\t/* si_status */\n\t__s32 svint;\t/* si_int */\n\t__u64 svptr;\t/* si_ptr */\n\t__u64 utime;\t/* si_utime */\n\t__u64 stime;\t/* si_stime */\n\t__u64 addr;\t/* si_addr */\n};\n\n[akpm@linux-foundation.org: fix signalfd_copyinfo() on i386]\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e54dc2431d740a79a6bd013babade99d71b1714f",
      "tree": "16b0990d5c16946239a17b332f54b5918fb03305",
      "parents": [
        "7f13da40e36c84d0d046b7adbd060af7d3717250"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Thu Mar 29 18:01:04 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 11 05:38:25 2007 -0400"
      },
      "message": "[PATCH] audit signal recipients\n\nWhen auditing syscalls that send signals, log the pid and security\ncontext for each target process. Optimize the data collection by\nadding a counter for signal-related rules, and avoiding allocating an\naux struct unless we have more than one target process. For process\ngroups, collect pid/context data in blocks of 16. Move the\naudit_signal_info() hook up in check_kill_permission() so we audit\nattempts where permission is denied.\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "10ab825bdef8df510f99c703a5a2d9b13a4e31a5",
      "tree": "e4db81f26c03ba5a5bff43ed44646a4ed4509d67",
      "parents": [
        "5de18d169739293e27e0cf9acfc75a2d2f4aa572"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed May 09 02:34:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:53 2007 -0700"
      },
      "message": "change kernel threads to ignore signals instead of blocking them\n\nCurrently kernel threads use sigprocmask(SIG_BLOCK) to protect against\nsignals.  This doesn\u0027t prevent the signal delivery, this only blocks\nsignal_wake_up().  Every \"killall -33 kthreadd\" means a \"struct siginfo\"\nleak.\n\nChange kthreadd_setup() to set all handlers to SIG_IGN instead of blocking\nthem (make a new helper ignore_signals() for that).  If the kernel thread\nneeds some signal, it should use allow_signal() anyway, and in that case it\nshould not use CLONE_SIGHAND.\n\nNote that we can\u0027t change daemonize() (should die!) in the same way,\nbecause it can be used along with CLONE_SIGHAND.  This means that\nallow_signal() still should unblock the signal to work correctly with\ndaemonize()ed threads.\n\nHowever, disallow_signal() doesn\u0027t block the signal any longer but ignores\nit.\n\nNOTE: with or without this patch the kernel threads are not protected from\nhandle_stop_signal(), this seems harmless, but not good.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: \"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": "a4798833d26b293fd18b7bf102991426aa0b56fd",
      "tree": "a564a45ee791e8418692c4171ed018dc90734238",
      "parents": [
        "85f4186af944c1240c84934a9ab578743df2d69b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed May 09 02:34:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:53 2007 -0700"
      },
      "message": "zap_other_threads: remove unneeded -\u003eexit_signal change\n\nWe already depend on fact that all sub-threads have -\u003eexit_signal \u003d\u003d -1, no\nneed to set it in zap_other_threads().\n\nSigned-off-by: 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": "55c0d1f83e481dd6c77f52f7dcfeb043b8b740fa",
      "tree": "5d3240d565c158712345094362d40c3973483a7f",
      "parents": [
        "84963048ca8093e0aa71ac90c2a5fe7af5f617c3"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed May 09 02:33:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:49 2007 -0700"
      },
      "message": "Move sig_kernel_* et al macros to linux/signal.h\n\nThis patch moves the sig_kernel_* and related macros from kernel/signal.c\nto linux/signal.h, and cleans them up slightly.  I need the sig_kernel_*\nmacros for default signal behavior in the utrace code, and want to avoid\nduplication or overhead to share the knowledge.\n\nSigned-off-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": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a31bd5f2bbb6473ef9d24f0063ca91cfa678b64",
      "tree": "a945e829bf6bf7a93bf844b2ee9f2a3a2fa17c5d",
      "parents": [
        "5af60839909b8e3b28ca7cd7912fa0b23475617f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:49:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:55 2007 -0700"
      },
      "message": "KMEM_CACHE(): simplify slab cache creation\n\nThis patch provides a new macro\n\nKMEM_CACHE(\u003cstruct\u003e, \u003cflags\u003e)\n\nto simplify slab creation. KMEM_CACHE creates a slab with the name of the\nstruct, with the size of the struct and with the alignment of the struct.\nAdditional slab flags may be specified if necessary.\n\nExample\n\nstruct test_slab {\n\tint a,b,c;\n\tstruct list_head;\n} __cacheline_aligned_in_smp;\n\ntest_slab_cache \u003d KMEM_CACHE(test_slab, SLAB_PANIC)\n\nwill create a new slab named \"test_slab\" of the size sizeof(struct\ntest_slab) and aligned to the alignment of test slab.  If it fails then we\npanic.\n\nSigned-off-by: Christoph Lameter \u003cclameter@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": "b0138a6cb7923a997d278b47c176778534d1095b",
      "tree": "4fcb8822a69631baba568e4e1942847747123887",
      "parents": [
        "6572d6d7d0f965dda19d02af804ed3ae4b3bf1fc",
        "1055a8af093fea7490445bd15cd671020e542035"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 12:48:06 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 12:48:06 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6: (78 commits)\n  [PARISC] Use symbolic last syscall in __NR_Linux_syscalls\n  [PARISC] Add missing statfs64 and fstatfs64 syscalls\n  Revert \"[PARISC] Optimize TLB flush on SMP systems\"\n  [PARISC] Compat signal fixes for 64-bit parisc\n  [PARISC] Reorder syscalls to match unistd.h\n  Revert \"[PATCH] make kernel/signal.c:kill_proc_info() static\"\n  [PARISC] fix sys_rt_sigqueueinfo\n  [PARISC] fix section mismatch warnings in harmony sound driver\n  [PARISC] do not export get_register/set_register\n  [PARISC] add ENTRY()/ENDPROC() and simplify assembly of HP/UX emulation code\n  [PARISC] convert to use CONFIG_64BIT instead of __LP64__\n  [PARISC] use CONFIG_64BIT instead of __LP64__\n  [PARISC] add ASM_EXCEPTIONTABLE_ENTRY() macro\n  [PARISC] more ENTRY(), ENDPROC(), END() conversions\n  [PARISC] fix ENTRY() and ENDPROC() for 64bit-parisc\n  [PARISC] Fixes /proc/cpuinfo cache output on B160L\n  [PARISC] implement standard ENTRY(), END() and ENDPROC()\n  [PARISC] kill ENTRY_SYS_CPUS\n  [PARISC] clean up debugging printks in smp.c\n  [PARISC] factor syscall_restart code out of do_signal\n  ...\n\nFix conflict in include/linux/sched.h due to kill_proc_info() being made\npublicly available to PARISC again.\n"
    },
    {
      "commit": "c3de4b38153a201cfc8561abb093a1b482fd3abb",
      "tree": "30226ed724dac5502a930a0004274cdc1a506128",
      "parents": [
        "d104f11c3989b0bbe1216f6ad663d0ed91fb7bd8"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Feb 09 08:11:47 2007 -0700"
      },
      "committer": {
        "name": "Kyle McMartin",
        "email": "kyle@athena.road.mcmartin.ca",
        "time": "Sat Feb 17 01:20:07 2007 -0500"
      },
      "message": "Revert \"[PATCH] make kernel/signal.c:kill_proc_info() static\"\n\nThis reverts commit d3228a887cae75ef2b8b1211c31c539bef5a5698.\nDeBunk this code.  We need it for compat_sys_rt_sigqueueinfo.\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\n"
    },
    {
      "commit": "8bfd9a7a229b5f3d3eda5d7d45c2eebec5b4ba16",
      "tree": "01c910a659f387b921493cab9bd4decd8fa66a4e",
      "parents": [
        "54cdfdb47f73b5af3d1ebb0f1e383efbe70fde9e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 16 01:28:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:13:59 2007 -0800"
      },
      "message": "[PATCH] hrtimers: prevent possible itimer DoS\n\nFix potential setitimer DoS with high-res timers by pushing itimer rearm\nprocessing to process context.\n\n[Fixes from: Ingo Molnar \u003cmingo@elte.hu\u003e]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27b0b2f44adffe0193a695bb528a83b550b8e54b",
      "tree": "fd7578afab2e9fa72e3f157f94c9dd73a8265678",
      "parents": [
        "9f57a54b6cf3f626334d97e93b5b917ad11e1efc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: remove the now unused kill_pg kill_pg_info and __kill_pg_info\n\nNow that I have changed all of the in-tree users remove the old version of\nthese functions.  This should make it clear to any out of tree users that they\nshould be using kill_pgrp kill_pgrp_info or __kill_pgrp_info instead.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\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": "3e7cd6c413c9e6fbb5e1ee2acdadb4ababd2d474",
      "tree": "de97d00794ee0c787b6c551a91e33fb1faa48caa",
      "parents": [
        "0475ac0845f9295bc5f69af45f58dff2c104c8d1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:58 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: replace is_orphaned_pgrp with is_current_pgrp_orphaned\n\nEvery call to is_orphaned_pgrp passed in process_group(current) which is racy\nwith respect to another thread changing our process group.  It didn\u0027t bite us\nbecause we were dealing with integers and the worse we would get would be a\nstale answer.\n\nIn switching the checks to use struct pid to be a little more efficient and\nprepare the way for pid namespaces this race became apparent.\n\nSo I simplified the calls to the more specialized is_current_pgrp_orphaned so\nI didn\u0027t have to worry about making logic changes to avoid the race.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\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": "8d42db189ca99703f0f4f91c477cb54808c8eaaa",
      "tree": "9879222882a29c01dbff030c94ff8debbdcd1ddb",
      "parents": [
        "0e25338bc11fa8e41e44e4db5b5101e3d882dc5b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:55 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] signal: rewrite kill_something_info so it uses newer helpers\n\nThe goal is to remove users of the old signal helper functions so they can be\nremoved.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\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": "72fd4a35a824331d7a0f4168d7576502d95d34b3",
      "tree": "be27880bc36b7f62e8044a88b8744a35c5317714",
      "parents": [
        "262086cf5b5343c2b81c97b1c606058e921859df"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Feb 10 01:45:59 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:32 2007 -0800"
      },
      "message": "[PATCH] Numerous fixes to kernel-doc info in source files.\n\nA variety of (mostly) innocuous fixes to the embedded kernel-doc content in\nsource files, including:\n\n  * make multi-line initial descriptions single line\n  * denote some function names, constants and structs as such\n  * change erroneous opening \u0027/*\u0027 to \u0027/**\u0027 in a few places\n  * reword some text for clarity\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\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": "0c12b51712ced2c0d89a8ec3d546ed810f86d33e",
      "tree": "6d9baefd3148da87686ee259f51c35853377db1a",
      "parents": [
        "b963a8441cb95999c97bea379607071a869c65f0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sat Feb 10 01:44:56 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:26 2007 -0800"
      },
      "message": "[PATCH] kill_pid_info: kill acquired_tasklist_lock\n\nKill acquired_tasklist_lock, sig_needs_tasklist() is very cheap nowadays.\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@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3df494a32b936aef76d893f5065f962ebd9b9437",
      "tree": "825a96b219eeb87ef7a627a2494cf4fa7cd4d03e",
      "parents": [
        "6a2d7a955d8de6cb19ed9cd194b3c83008a22c32"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 13 00:34:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:49 2006 -0800"
      },
      "message": "[PATCH] PM: Fix freezing of stopped tasks\n\nCurrently, if a task is stopped (ie.  it\u0027s in the TASK_STOPPED state), it\nis considered by the freezer as unfreezeable.  However, there may be a race\nbetween the freezer and the delivery of the continuation signal to the task\nresulting in the task running after we have finished freezing the other\ntasks.  This, in turn, may lead to undesirable effects up to and including\ndata corruption.\n\nTo prevent this from happening we first need to make the freezer consider\nstopped tasks as freezeable.  For this purpose we need to make freezeable()\nstop returning 0 for these tasks and we need to force them to enter the\nrefrigerator.  However, if there\u0027s no continuation signal in the meantime,\nthe stopped tasks should remain stopped after all processes have been\nthawed, so we need to send an additional SIGSTOP to each of them before\nwaking it up.\n\nAlso, a stopped task that has just been woken up should first check if\nthere\u0027s a freezing request for it and go to the refrigerator if that\u0027s the\ncase.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84d737866e2babdeab0c6b18ea155c6a649663b8",
      "tree": "e504da826174c2804d8c680828800aa680090686",
      "parents": [
        "6cc1b22a4acef3816eaa5f8c227d93d749b23195"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Fri Dec 08 02:38:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:52 2006 -0800"
      },
      "message": "[PATCH] add child reaper to pid_namespace\n\nAdd a per pid_namespace child-reaper.  This is needed so processes are reaped\nwithin the same pid space and do not spill over to the parent pid space.  Its\nalso needed so containers preserve existing semantic that pid \u003d\u003d 1 would reap\norphaned children.\n\nThis is based on Eric Biederman\u0027s patch: http://lkml.org/lkml/2006/2/6/285\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "937949d9edbf4049bd41af6c9f92c26280584564",
      "tree": "d0a28f503b082f890cfa1f7fe952fda8fc771752",
      "parents": [
        "ef55d53caa055aedee13e77da82740987dd64f2d"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Fri Dec 08 02:37:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:51 2006 -0800"
      },
      "message": "[PATCH] add process_session() helper routine\n\nReplace occurences of task-\u003esignal-\u003esession by a new process_session() helper\nroutine.\n\nIt will be useful for pid namespaces to abstract the session pid number.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d3228a887cae75ef2b8b1211c31c539bef5a5698",
      "tree": "05e8fcc5fd433a7c7a99b46985a6075c121c1248",
      "parents": [
        "ebe7e5fe4b41deeb2731c5b52d8c8e6ac08b1f74"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 06 20:38:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:39 2006 -0800"
      },
      "message": "[PATCH] make kernel/signal.c:kill_proc_info() static\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7dfb71030f7636a0d65200158113c37764552f93",
      "tree": "276b812903d377b16d8828e888552fd256f48aab",
      "parents": [
        "8a05aac2631aa0e6494d9dc990f8c68ed8b8fde7"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] Add include/linux/freezer.h and move definitions from sched.h\n\nMove process freezing functions from include/linux/sched.h to freezer.h, so\nthat modifications to the freezer or the kernel configuration don\u0027t require\nrecompiling just about everything.\n\n[akpm@osdl.org: fix ueagle driver]\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "10b1fbdb0a0ca91847a534ad26d0bc250c25b74f",
      "tree": "67a3e6d7069e9281b0f5819f4acf91d7150a5d74",
      "parents": [
        "45c18b0bb579b5c1b89f8c99f1b6ffa4c586ba08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Nov 04 13:03:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Nov 04 13:03:00 2006 -0800"
      },
      "message": "Make sure \"user-\u003esigpending\" count is in sync\n\nThe previous commit (45c18b0bb579b5c1b89f8c99f1b6ffa4c586ba08, aka \"Fix\nunlikely (but possible) race condition on task-\u003euser access\") fixed a\npotential oops due to __sigqueue_alloc() getting its \"user\" pointer out\nof sync with switch_user(), and accessing a user pointer that had been\nde-allocated on another CPU.\n\nIt still left another (much less serious) problem, where a concurrent\n__sigqueue_alloc and swich_user could cause sigqueue_alloc to do signal\npending reference counting for a _different_ user than the one it then\nactually ended up using.  No oops, but we\u0027d end up with the wrong signal\naccounting.\n\nAnother case of Oleg\u0027s eagle-eyes picking up the problem.\n\nThis is trivially fixed by just making sure we load whichever \"user\"\nstructure we decide to use (it doesn\u0027t matter _which_ one we pick, we\njust need to pick one) just once.\n\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2425c08b37244005ff221efe4957d8aaff18609c",
      "tree": "488a298587acb651bd6964c0f9d53c9f48327362",
      "parents": [
        "43fa1adb9334bf4585cd53144eb5911488f85bc7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] usb: fixup usb so it uses struct pid\n\nThe problem with remembering a user space process by its pid is that it is\npossible that the process will exit, pid wrap around will occur.\nConverting to a struct pid avoid that problem, and paves the way for\nimplementing a pid namespace.\n\nAlso since usb is the only user of kill_proc_info_as_uid rename\nkill_proc_info_as_uid to kill_pid_info_as_uid and have the new version take\na struct pid.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4b92fc112f7be5cce308128236ff75cc98535c3",
      "tree": "ea4dfac4355c64decbf6aa1ca65af76af43b90fb",
      "parents": [
        "558cb325485aaf655130f140e8ddd25392f6c972"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: implement signal functions that take a struct pid *\n\nCurrently the signal functions all either take a task or a pid_t argument.\nThis patch implements variants that take a struct pid *.  After all of the\nusers have been update it is my intention to remove the variants that take a\npid_t as using pid_t can be more work (an extra hash table lookup) and\ndifficult to get right in the presence of multiple pid namespaces.\n\nThere are two kinds of functions introduced in this patch.  The are the\ngeneral use functions kill_pgrp and kill_pid which take a priv argument that\nis ultimately used to create the appropriate siginfo information, Then there\nare _kill_pgrp_info, kill_pgrp_info, kill_pid_info the internal implementation\nhelpers that take an explicit siginfo.\n\nThe distinction is made because filling out an explcit siginfo is tricky, and\nwill be even more tricky when pid namespaces are introduced.\n\nSigned-off-by: 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": "27d91e07f9b863fa94491ffafe250580f0c2ce78",
      "tree": "0e5237670110b70496d68398e68a071c43c9e03e",
      "parents": [
        "b9ecb2bd5d3ab8904752685696cb76aac1f3fef2"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Sep 29 02:00:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:15 2006 -0700"
      },
      "message": "[PATCH] __dequeue_signal() cleanup\n\nThis tightens up __dequeue_signal a little.  It also avoids doing\nrecalc_sigpending twice in a row, instead doing it once in dequeue_signal.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: 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": "f269fdd1829acc5e53bf57b145003e5733133f2b",
      "tree": "494fef02f26f089f14c719e9a4394a41f7b686ec",
      "parents": [
        "930e652a21a08986b03d1f370f933057dc0db2dc"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:15 2006 -0700"
      },
      "message": "[PATCH] NOMMU: move the fallback arch_vma_name() to a sensible place\n\nMove the fallback arch_vma_name() to a sensible place (kernel/signal.c).\n\nCurrently it\u0027s in fs/proc/task_mmu.c, a file that is dependent on both\nCONFIG_PROC_FS and CONFIG_MMU being enabled, but it\u0027s used from\nkernel/signal.c from where it is called unconditionally.\n\n[akpm@osdl.org: build fix]\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": "ae74c3b69a08e1de20cb681ec959f3a48af0006a",
      "tree": "97def06a79fdaee2294ef197666a369b18728058",
      "parents": [
        "202668ecb6cb221460d884598dd4cd2e1f3292f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Aug 02 20:17:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Aug 02 20:17:49 2006 -0700"
      },
      "message": "Fix force_sig_info() semantics after cleanups\n\nSuresh points out that commit b0423a0d9cc836b2c3d796623cd19236bfedfe63\nbroke the semantics of a synchronous signal like SIGSEGV occurring\nrecursively inside its own handler handler (or, indeed, any other\ncontext when the signal was blocked).\n\nThat was unintentional, and this fixes things up by reinstating the old\nsemantics, but without reverting the cleanups.\n\nCc: Paul E. McKenney \u003cpaulmck@us.ibm.com\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22a3e233ca08a2ddc949ba1ae8f6e16ec7ef1a13",
      "tree": "7ef158ba2c30e0dde2dc103d1904fae243759a6b",
      "parents": [
        "39302175c26d74be35715c05a0f342c9e64c21bf",
        "6ab3d5624e172c553004ecc862bfeac16d9d68b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 15:39:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 15:39:30 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  Remove obsolete #include \u003clinux/config.h\u003e\n  remove obsolete swsusp_encrypt\n  arch/arm26/Kconfig typos\n  Documentation/IPMI typos\n  Kconfig: Typos in net/sched/Kconfig\n  v9fs: do not include linux/version.h\n  Documentation/DocBook/mtdnand.tmpl: typo fixes\n  typo fixes: specfic -\u003e specific\n  typo fixes in Documentation/networking/pktgen.txt\n  typo fixes: occuring -\u003e occurring\n  typo fixes: infomation -\u003e information\n  typo fixes: disadvantadge -\u003e disadvantage\n  typo fixes: aquire -\u003e acquire\n  typo fixes: mecanism -\u003e mechanism\n  typo fixes: bandwith -\u003e bandwidth\n  fix a typo in the RTC_CLASS help text\n  smb is no longer maintained\n\nManually merged trivial conflict in arch/um/kernel/vmlinux.lds.S\n"
    },
    {
      "commit": "8f95dc58d0505516f5cc212a966aea2f2cdb5e44",
      "tree": "2a57ad36db88621ee079fffe34b1cf9bff62b1f4",
      "parents": [
        "f9008e4c5c525941967b67777945aa6266ab6326"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 30 01:55:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] SELinux: add security hook call to kill_proc_info_as_uid\n\nThis patch adds a call to the extended security_task_kill hook introduced by\nthe prior patch to the kill_proc_info_as_uid function so that these signals\ncan be properly mediated by security modules.  It also updates the existing\nhook call in check_kill_permission.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\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": "e1396065e0489f98b35021b97907ab4edbfb24e1",
      "tree": "a276ea0a2ece9132d435adf1a1f82d0ada1ae938",
      "parents": [
        "473ae30bc7b1dda5c5791c773f95e9424ddfead9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 25 10:19:47 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:21 2006 -0400"
      },
      "message": "[PATCH] collect sid of those who send signals to auditd\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\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": "a145410dccdb44f81d3b56763ef9b6f721f4e47c",
      "tree": "a2e6635223890acb3191332eb7ba7835fbd24586",
      "parents": [
        "2514395ef88b46e895726a8d40966cb83de7940c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Apr 11 22:18:58 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 07:34:01 2006 -0700"
      },
      "message": "[PATCH] __group_complete_signal: remove bogus BUG_ON\n\nCommit e56d090310d7625ecb43a1eeebd479f04affb48b\n\n   [PATCH] RCU signal handling\n\nmade this BUG_ON() unsafe. This code runs under -\u003esiglock,\nwhile switch_exec_pids() takes tasklist_lock.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fda8bd78a15950b9b01a1c1477a9095cb08c27c1",
      "tree": "362ca651ed8fdf046c4755c8d96cd4957ecdf1eb",
      "parents": [
        "524223ca8142d593124bde66f3ffa1deb6f56c06"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Sun Apr 02 13:44:47 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Apr 02 13:44:47 2006 +0200"
      },
      "message": "BUG_ON() Conversion in kernel/signal.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": "85b6bce3658a823aa169586fe71ffba0f12ccc71",
      "tree": "ad2ca0b501d2ff767889d15dfda22abec75f38c4",
      "parents": [
        "1a75a3f0680d9c4bc4761512658b6fd664032e18"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@suse.cz",
        "time": "Fri Mar 31 02:30:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] Fix suspend with traced tasks\n\nstrace /bin/bash misbehaves after resume; this fixes it.\n\n(akpm: it\u0027s scary calling refrigerator() in state TASK_TRACED, but it seems to\ndo the right thing).\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "547679087bc60277d11b11631d826895762c4505",
      "tree": "91759a5584b9d42302d4b54ecdde644bc47e781d",
      "parents": [
        "a1d5e21e3e388fb2c16463d007e788b1e41b74f1"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] send_sigqueue: simplify and fix the race\n\nsend_sigqueue() checks PF_EXITING, then locks p-\u003esighand-\u003esiglock.  This is\nunsafe: \u0027p\u0027 can exit in between and set -\u003esighand \u003d NULL.  The race is\ntheoretical, the window is tiny and irqs are disabled by the caller, so I\ndon\u0027t think we need the fix for -stable tree.\n\nConvert send_sigqueue() to use lock_task_sighand() helper.\n\nAlso, delete \u0027p-\u003eflags \u0026 PF_EXITING\u0027 re-check, it is unneeded and the\ncomment is wrong.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a1d5e21e3e388fb2c16463d007e788b1e41b74f1",
      "tree": "ab89b42c9c8a873ac2f7e98dac2dc1c1807d27a1",
      "parents": [
        "883606a7c9e84e206f96c38f88c4bd66df72f51e"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] do_notify_parent_cldstop: remove \u0027to_self\u0027 param\n\nThe previous patch has changed callsites of do_notify_parent_cldstop() so that\nto_self \u003d\u003d (-\u003eptrace \u0026 PT_PTRACED) always (as it should be).  We can remove\nthis parameter now.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "883606a7c9e84e206f96c38f88c4bd66df72f51e",
      "tree": "8ac0a656ac7a46b83f00b0be094025104496332f",
      "parents": [
        "dac27f4a09c274db048e80d2511102e540ac9e3a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] finish_stop: don\u0027t check stop_count \u003c 0\n\nRemove an obscure \u0027stop_count \u003c 0\u0027 check in finish_stop().  The previous patch\nmade this case impossible.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dac27f4a09c274db048e80d2511102e540ac9e3a",
      "tree": "feb4af6d7b1a784ece9909b8d5f11bd6ad83cdca",
      "parents": [
        "a7e5328a06a2beee3a2bbfaf87ce2a7bbe937de1"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] simplify do_signal_stop()\n\ndo_signal_stop() considers \u0027thread_group_empty()\u0027 as a special case.\nThis was needed to avoid taking tasklist_lock. Since this lock is\nunneeded any longer, we can remove this special case and simplify\nthe code even more.\n\nAlso, before this patch, finish_stop() was called with stop_count \u003d\u003d -1\nfor \u0027thread_group_empty()\u0027 case. This is not strictly wrong, but confusing\nand unneeded.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88531f725bd52e37a7be726860e4ff3f09031d89",
      "tree": "e43f25881012112e29d3fc13e75ccc3ba3cd4dba",
      "parents": [
        "aacc90944d4b1f2fcec73a8127eb60a3a701ce1c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] do_sigaction: don\u0027t take tasklist_lock\n\ndo_sigaction() does not need tasklist_lock anymore, we can simplify the code.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a122b341b74c08020f6521b615acca6a692aac79",
      "tree": "d2e679f11f805a2817de127f195cf1a61ca22b98",
      "parents": [
        "6108ccd3e2f3012d5eec582e0af4d75e693824da"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] do_signal_stop: don\u0027t take tasklist_lock\n\ndo_signal_stop() does not need tasklist_lock anymore.  So it does not need to\ndo misc re-checks, and we can simplify the code.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6108ccd3e2f3012d5eec582e0af4d75e693824da",
      "tree": "944465dbb375e98b628e799794ca60b8e0bed61e",
      "parents": [
        "7d7185c818925ba5fe90efa75840d0b415032774"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] relax sig_needs_tasklist()\n\nhandle_stop_signal() does not need tasklist_lock for SIG_KERNEL_STOP_MASK\nsignals anymore.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a14c5c9da0b4c34b5be783403c54f0396fcfe77",
      "tree": "63e40e5761eb5327ae4f713b284c67128cb4d261",
      "parents": [
        "c81addc9d3a0ebff2155e0cd86f90820ab97147e"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] move __exit_signal() to kernel/exit.c\n\n__exit_signal() is private to release_task() now.  I think it is better to\nmake it static in kernel/exit.c and export flush_sigqueue() instead - this\nfunction is much more simple and straightforward.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c81addc9d3a0ebff2155e0cd86f90820ab97147e",
      "tree": "56eb3a50f71e7a0e2a0f0daef4ec097375b06f8d",
      "parents": [
        "29ff471234d53c7235db287bc52f91884c2977c6"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] rename __exit_sighand to cleanup_sighand\n\nCosmetic, rename __exit_sighand to cleanup_sighand and move it close to\ncopy_sighand().\n\nThis matches copy_signal/cleanup_signal naming, and I think it is easier to\nfollow.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "29ff471234d53c7235db287bc52f91884c2977c6",
      "tree": "1572661596414515ebfcfd0d2ea55a4217606a5e",
      "parents": [
        "6b3934ef52712ece50605dfc72e55d00c580831a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] cleanup __exit_signal()\n\nThis patch factors out duplicated code under \u0027if\u0027 branches.  Also, BUG_ON()\nconversions and whitespace cleanups.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b3934ef52712ece50605dfc72e55d00c580831a",
      "tree": "5ec3c4f69a20880f75de6ff8d7d2f67d96328df3",
      "parents": [
        "7001510d0cbf51ad202dd2d0744f54104285cbb9"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] copy_process: cleanup bad_fork_cleanup_signal\n\n__exit_signal() does important cleanups atomically under -\u003esiglock.  It is\nalso called from copy_process\u0027s error path.  This is not good, for example we\ncan\u0027t move __unhash_process() under -\u003esiglock for that reason.\n\nWe should not mix these 2 paths, just look at ugly \u0027if (p-\u003esighand)\u0027 under\n\u0027bad_fork_cleanup_sighand:\u0027 label.  For copy_process() case it is sufficient\nto just backout copy_signal(), nothing more.\n\nAgain, nobody can see this task yet.  For CLONE_THREAD case we just decrement\nsignal-\u003ecount, otherwise nobody can see this -\u003esignal and we can free it\nlockless.\n\nThis patch assumes it is safe to do exit_thread_group_keys() without\ntasklist_lock.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7001510d0cbf51ad202dd2d0744f54104285cbb9",
      "tree": "1df2a6930c460c12026231634b86d14b153a4a86",
      "parents": [
        "a9e88e84b5245da0a1dadb6ccca70ae84e93ccf6"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] copy_process: cleanup bad_fork_cleanup_sighand\n\nThe only caller of exit_sighand(tsk) is copy_process\u0027s error path.  We can\ncall __exit_sighand() directly and kill exit_sighand().\n\nThis \u0027tsk\u0027 was not yet registered in pid_hash[] or init_task.tasks, it has no\nexternal references, nobody can see it, and\n\n\tIF (clone_flags \u0026 CLONE_SIGHAND)\n\t\tAt least \u0027current\u0027 has a reference to -\u003esighand, this\n\t\tmeans atomic_dec_and_test(sighand-\u003ecount) can\u0027t be true.\n\n\tELSE\n\t\tNobody can see this -\u003esighand, this means we can free it\n\t\twithout any locking.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a9e88e84b5245da0a1dadb6ccca70ae84e93ccf6",
      "tree": "2b155e7f5ce7ff14a986361fe81d77bf9039e95e",
      "parents": [
        "f63ee72e0fb82e504a0489490babc7612c7cd6c2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] introduce sig_needs_tasklist() helper\n\nIn my opinion this patch cleans up the code.\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": "f63ee72e0fb82e504a0489490babc7612c7cd6c2",
      "tree": "85167f8016d1f746135bf1777646a58c44376af1",
      "parents": [
        "aa1757f90bea3f598b6e5d04d922a6a60200f1da"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] introduce lock_task_sighand() helper\n\nAdd lock_task_sighand() helper and converts group_send_sig_info() to use\nit.  Hopefully we will have more users soon.\n\nThis patch also removes \u0027!sighand-\u003ecount\u0027 and \u0027!p-\u003eusage\u0027 checks, I think\nthey both are bogus, racy and unneeded (but probably it makes sense to\nrestore them as BUG_ON()s).\n\n-\u003esighand is cleared and it\u0027s -\u003ecount is decremented in release_task() with\nsighand-\u003esiglock held, so it is a bug to have \u0027!p-\u003eusage || !-\u003ecount\u0027 after\nwe already locked and verified it is the same.  On the other hand, an\nalready dead task without -\u003esighand can have a non-zero -\u003eusage due to\nptrace, for example.\n\nIf we read the stale value of -\u003esighand we must see the change after\nspin_lock(), because that change was done while holding that same old\n-\u003esighand.siglock.\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": "aa1757f90bea3f598b6e5d04d922a6a60200f1da",
      "tree": "4f8f3804b2595031d0b84de7086dc28375290f0d",
      "parents": [
        "1f09f9749cdde4e69f95d62d96d2e03f50b3353c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU\n\nThis patch borrows a clever Hugh\u0027s \u0027struct anon_vma\u0027 trick.\n\nWithout tasklist_lock held we can\u0027t trust task-\u003esighand until we locked it\nand re-checked that it is still the same.\n\nBut this means we don\u0027t need to defer \u0027kmem_cache_free(sighand)\u0027.  We can\nreturn the memory to slab immediately, all we need is to be sure that\nsighand-\u003esiglock can\u0027t dissapear inside rcu protected section.\n\nTo do so we need to initialize -\u003esiglock inside ctor function,\nSLAB_DESTROY_BY_RCU does the rest.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "fef23e7fbb11a0a78cd61935f7056bc2b237995a"
}
