diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-19 12:47:34 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-19 12:47:34 -0500 |
commit | 10e5453ffa0d04a2eda3cda3f55b88cb9c04595f (patch) | |
tree | def247dc399549bc1359fe9d1faa49c621f8890d /kernel/sys.c | |
parent | 3cd312c3e887b4bee2d94668a481b3d19c07732c (diff) | |
parent | d4581a239a40319205762b76c01eb6363f277efa (diff) |
Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
sys: Fix missing rcu protection for __task_cred() access
signals: Fix more rcu assumptions
signal: Fix racy access to __task_cred in kill_pid_info_as_uid()
Diffstat (limited to 'kernel/sys.c')
-rw-r--r-- | kernel/sys.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/sys.c b/kernel/sys.c index 20ccfb5da6af..26a6b73a6b85 100644 --- a/kernel/sys.c +++ b/kernel/sys.c | |||
@@ -162,6 +162,7 @@ SYSCALL_DEFINE3(setpriority, int, which, int, who, int, niceval) | |||
162 | if (niceval > 19) | 162 | if (niceval > 19) |
163 | niceval = 19; | 163 | niceval = 19; |
164 | 164 | ||
165 | rcu_read_lock(); | ||
165 | read_lock(&tasklist_lock); | 166 | read_lock(&tasklist_lock); |
166 | switch (which) { | 167 | switch (which) { |
167 | case PRIO_PROCESS: | 168 | case PRIO_PROCESS: |
@@ -199,6 +200,7 @@ SYSCALL_DEFINE3(setpriority, int, which, int, who, int, niceval) | |||
199 | } | 200 | } |
200 | out_unlock: | 201 | out_unlock: |
201 | read_unlock(&tasklist_lock); | 202 | read_unlock(&tasklist_lock); |
203 | rcu_read_unlock(); | ||
202 | out: | 204 | out: |
203 | return error; | 205 | return error; |
204 | } | 206 | } |