diff options
Diffstat (limited to 'kernel/posix-timers.c')
-rw-r--r-- | kernel/posix-timers.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c index 5b761903b49a..c459b29efdd4 100644 --- a/kernel/posix-timers.c +++ b/kernel/posix-timers.c | |||
@@ -312,11 +312,6 @@ int posix_timer_event(struct k_itimer *timr, int si_private) | |||
312 | */ | 312 | */ |
313 | timr->sigq->info.si_sys_private = si_private; | 313 | timr->sigq->info.si_sys_private = si_private; |
314 | 314 | ||
315 | timr->sigq->info.si_signo = timr->it_sigev_signo; | ||
316 | timr->sigq->info.si_code = SI_TIMER; | ||
317 | timr->sigq->info.si_tid = timr->it_id; | ||
318 | timr->sigq->info.si_value = timr->it_sigev_value; | ||
319 | |||
320 | shared = !(timr->it_sigev_notify & SIGEV_THREAD_ID); | 315 | shared = !(timr->it_sigev_notify & SIGEV_THREAD_ID); |
321 | ret = send_sigqueue(timr->sigq, timr->it_process, shared); | 316 | ret = send_sigqueue(timr->sigq, timr->it_process, shared); |
322 | /* If we failed to send the signal the timer stops. */ | 317 | /* If we failed to send the signal the timer stops. */ |
@@ -537,6 +532,11 @@ sys_timer_create(const clockid_t which_clock, | |||
537 | get_task_struct(process); | 532 | get_task_struct(process); |
538 | } | 533 | } |
539 | 534 | ||
535 | new_timer->sigq->info.si_code = SI_TIMER; | ||
536 | new_timer->sigq->info.si_tid = new_timer->it_id; | ||
537 | new_timer->sigq->info.si_signo = new_timer->it_sigev_signo; | ||
538 | new_timer->sigq->info.si_value = new_timer->it_sigev_value; | ||
539 | |||
540 | spin_lock_irq(¤t->sighand->siglock); | 540 | spin_lock_irq(¤t->sighand->siglock); |
541 | new_timer->it_process = process; | 541 | new_timer->it_process = process; |
542 | list_add(&new_timer->list, ¤t->signal->posix_timers); | 542 | list_add(&new_timer->list, ¤t->signal->posix_timers); |