SOURCES (LINUX_2_6_20): linux-2.6-vs2.3.patch - fix for kernel/sys...

mguevara mguevara at pld-linux.org
Wed Jan 17 01:55:45 CET 2007


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



More information about the pld-cvs-commit mailing list