The patch titled
POSIX timers RCU optimization fix for clock_gettime
has been removed from the -mm tree. Its filename was
posix-timers-rcu-optimization-for-clock_gettime-fix.patch
This patch was dropped because it was folded into
posix-timers-rcu-optimization-for-clock_gettime.patch
------------------------------------------------------
Subject: POSIX timers RCU optimization fix for clock_gettime
From: "Paul E. McKenney" <[EMAIL PROTECTED]>
Fixes an exit()/posix_cpu_clock_get() race spotted by Oleg Nesterov.
Solution is to move the p->signal check under the tasklist_lock.
Signed-off-by: Paul E. McKenney <[EMAIL PROTECTED]>
Cc: Ingo Molnar <[EMAIL PROTECTED]>
Cc: Thomas Gleixner <[EMAIL PROTECTED]>
Cc: john stultz <[EMAIL PROTECTED]>
Cc: Roman Zippel <[EMAIL PROTECTED]>
Cc: Oleg Nesterov <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
kernel/posix-cpu-timers.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff -puN
kernel/posix-cpu-timers.c~posix-timers-rcu-optimization-for-clock_gettime-fix
kernel/posix-cpu-timers.c
---
a/kernel/posix-cpu-timers.c~posix-timers-rcu-optimization-for-clock_gettime-fix
+++ a/kernel/posix-cpu-timers.c
@@ -312,10 +312,13 @@ int posix_cpu_clock_get(const clockid_t
error = cpu_clock_sample(which_clock,
p, &rtn);
}
- } else if (p->tgid == pid && p->signal) {
+ } else {
read_lock(&tasklist_lock);
- error = cpu_clock_sample_group(which_clock,
- p, &rtn);
+ if (p->tgid == pid && p->signal) {
+ error =
+ cpu_clock_sample_group(which_clock,
+ p, &rtn);
+ }
read_unlock(&tasklist_lock);
}
}
_
Patches currently in -mm which might be from [EMAIL PROTECTED] are
origin.patch
posix-timers-rcu-optimization-for-clock_gettime.patch
posix-timers-rcu-optimization-for-clock_gettime-fix.patch
-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html