summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@tv-sign.ru>2008-09-22 14:42:50 -0700
committerThomas Gleixner <tglx@linutronix.de>2008-09-24 15:45:48 +0200
commit5a9fa73072854981a5c05eb7ba18a96d49c2804f (patch)
treea73c0eba84744c112b794657a03d1a5159978528
parentef864c958801768fb28bd3603cd0b098b394671c (diff)
posix-timers: kill ->it_sigev_signo and ->it_sigev_value
With the recent changes ->it_sigev_signo and ->it_sigev_value are only used in sys_timer_create(), kill them. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: mingo@elte.hu Cc: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--include/linux/posix-timers.h2
-rw-r--r--kernel/posix-timers.c17
2 files changed, 7 insertions, 12 deletions
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index f9d8e9e94e9..a7c72135554 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -45,8 +45,6 @@ struct k_itimer {
int it_requeue_pending; /* waiting to requeue this timer */
#define REQUEUE_PENDING 1
int it_sigev_notify; /* notify word of sigevent struct */
- int it_sigev_signo; /* signo word of sigevent struct */
- sigval_t it_sigev_value; /* value word of sigevent struct */
struct task_struct *it_process; /* process to send signal to */
struct sigqueue *sigq; /* signal queue entry. */
union {
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index 7be385fe4ec..3eff47b0d8d 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -510,10 +510,6 @@ sys_timer_create(const clockid_t which_clock,
error = -EFAULT;
goto out;
}
- new_timer->it_sigev_notify = event.sigev_notify;
- new_timer->it_sigev_signo = event.sigev_signo;
- new_timer->it_sigev_value = event.sigev_value;
-
rcu_read_lock();
process = good_sigevent(&event);
if (process)
@@ -524,17 +520,18 @@ sys_timer_create(const clockid_t which_clock,
goto out;
}
} else {
- new_timer->it_sigev_notify = SIGEV_SIGNAL;
- new_timer->it_sigev_signo = SIGALRM;
- new_timer->it_sigev_value.sival_int = new_timer->it_id;
+ event.sigev_notify = SIGEV_SIGNAL;
+ event.sigev_signo = SIGALRM;
+ event.sigev_value.sival_int = new_timer->it_id;
process = current->group_leader;
get_task_struct(process);
}
- new_timer->sigq->info.si_code = SI_TIMER;
+ new_timer->it_sigev_notify = event.sigev_notify;
+ new_timer->sigq->info.si_signo = event.sigev_signo;
+ new_timer->sigq->info.si_value = event.sigev_value;
new_timer->sigq->info.si_tid = new_timer->it_id;
- new_timer->sigq->info.si_signo = new_timer->it_sigev_signo;
- new_timer->sigq->info.si_value = new_timer->it_sigev_value;
+ new_timer->sigq->info.si_code = SI_TIMER;
spin_lock_irq(&current->sighand->siglock);
new_timer->it_process = process;