posix-timers: kill ->it_sigev_signo and ->it_sigev_value
Oleg Nesterov [Mon, 22 Sep 2008 21:42:50 +0000 (14:42 -0700)]
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>

include/linux/posix-timers.h
kernel/posix-timers.c

index f9d8e9e..a7c7213 100644 (file)
@@ -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 {
index 7be385f..3eff47b 100644 (file)
@@ -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;