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