Author: mguevara                     Date: Wed Jan 17 00:55:45 2007 GMT
Module: SOURCES                       Tag: LINUX_2_6_20
---- Log message:
- fix for kernel/sys.c \(TODO: check find_task_by_pid_type\)

---- Files affected:
SOURCES:
   linux-2.6-vs2.3.patch (1.2.2.31 -> 1.2.2.32) 

---- Diffs:

================================================================
Index: SOURCES/linux-2.6-vs2.3.patch
diff -u SOURCES/linux-2.6-vs2.3.patch:1.2.2.31 
SOURCES/linux-2.6-vs2.3.patch:1.2.2.32
--- SOURCES/linux-2.6-vs2.3.patch:1.2.2.31      Wed Jan 17 01:37:39 2007
+++ SOURCES/linux-2.6-vs2.3.patch       Wed Jan 17 01:55:40 2007
@@ -21159,20 +21159,17 @@
        /* From this point forward we keep holding onto the tasklist lock
         * so that our parent does not change from under us. -DaveM
         */
-@@ -1399,22 +1415,22 @@ asmlinkage long sys_setpgid(pid_t pid, p
+@@ -1399,20 +1415,20 @@ asmlinkage long sys_setpgid(pid_t pid, p
+ 
        if (pgid != pid) {
-               struct task_struct *p;
+               struct task_struct *g =
+-                      find_task_by_pid_type(PIDTYPE_PGID, pgid);
++                      find_task_by_pid_type(PIDTYPE_PGID, rpgid);
  
--              do_each_task_pid(pgid, PIDTYPE_PGID, p) {
-+              do_each_task_pid(rpgid, PIDTYPE_PGID, p) {
-                       if (p->signal->session == group_leader->signal->session)
-                               goto ok_pgid;
--              } while_each_task_pid(pgid, PIDTYPE_PGID, p);
-+              } while_each_task_pid(rpgid, PIDTYPE_PGID, p);
-               goto out;
+               if (!g || process_session(g) != process_session(group_leader))
+                       goto out;
        }
  
- ok_pgid:
 -      err = security_task_setpgid(p, pgid);
 +      err = security_task_setpgid(p, rpgid);
        if (err)
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/SOURCES/linux-2.6-vs2.3.patch?r1=1.2.2.31&r2=1.2.2.32&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to