Messages in this thread Patch in this message | | | Subject | [RFC][PATCH 15/20] posix-timers: Update posix timers to work with pspaces. | From | (Eric W. Biederman) | Date | Mon, 06 Feb 2006 13:00:47 -0700 |
| |
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
---
kernel/posix-cpu-timers.c | 9 +++++---- kernel/posix-timers.c | 4 +++- 2 files changed, 8 insertions(+), 5 deletions(-)
90b04f2eeb0fd42309ed68dad92e1b7bb4d2fba6 diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c index 520f6c5..9eda08a 100644 --- a/kernel/posix-cpu-timers.c +++ b/kernel/posix-cpu-timers.c @@ -3,6 +3,7 @@ */ #include <linux/sched.h> +#include <linux/pspace.h> #include <linux/posix-timers.h> #include <asm/uaccess.h> #include <linux/errno.h> @@ -20,7 +21,7 @@ static int check_clock(const clockid_t w return 0; read_lock(&tasklist_lock); - p = find_task_by_pid(pid); + p = find_task_by_pid(current->pspace, pid); if (!p || (CPUCLOCK_PERTHREAD(which_clock) ? p->tgid != current->tgid : p->tgid != pid)) { error = -EINVAL; @@ -292,7 +293,7 @@ int posix_cpu_clock_get(const clockid_t */ struct task_struct *p; read_lock(&tasklist_lock); - p = find_task_by_pid(pid); + p = find_task_by_pid(current->pspace, pid); if (p) { if (CPUCLOCK_PERTHREAD(which_clock)) { if (p->tgid == current->tgid) { @@ -336,7 +337,7 @@ int posix_cpu_timer_create(struct k_itim if (pid == 0) { p = current; } else { - p = find_task_by_pid(pid); + p = find_task_by_pid(current->pspace, pid); if (p && p->tgid != current->tgid) p = NULL; } @@ -344,7 +345,7 @@ int posix_cpu_timer_create(struct k_itim if (pid == 0) { p = current->group_leader; } else { - p = find_task_by_pid(pid); + p = find_task_by_pid(current->pspace, pid); if (p && p->tgid != pid) p = NULL; } diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c index 216f574..5f6775c 100644 --- a/kernel/posix-timers.c +++ b/kernel/posix-timers.c @@ -35,6 +35,7 @@ #include <linux/interrupt.h> #include <linux/slab.h> #include <linux/time.h> +#include <linux/pspace.h> #include <asm/uaccess.h> #include <asm/semaphore.h> @@ -365,7 +366,8 @@ static struct task_struct * good_sigeven struct task_struct *rtn = current->group_leader; if ((event->sigev_notify & SIGEV_THREAD_ID ) && - (!(rtn = find_task_by_pid(event->sigev_notify_thread_id)) || + (!(rtn = find_task_by_pid(current->pspace, + event->sigev_notify_thread_id)) || rtn->tgid != current->tgid || (event->sigev_notify & ~SIGEV_THREAD_ID) != SIGEV_SIGNAL)) return NULL; -- 1.1.5.g3480 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |