]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
posix-timers: do_schedule_next_timer: fix the setting of ->si_overrun
authorOleg Nesterov <oleg@tv-sign.ru>
Tue, 12 Aug 2008 15:30:09 +0000 (15:30 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 20 Aug 2008 18:15:24 +0000 (11:15 -0700)
commit 54da1174922cddd4be83d5a364b2e0fdd693f513 upstream

do_schedule_next_timer() sets info->si_overrun = timr->it_overrun_last,
this discards the already accumulated overruns.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Mark McLoughlin <markmc@redhat.com>
Cc: Oliver Pinter <oliver.pntr@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
kernel/posix-timers.c

index 69181f82916a2a4082b25e71452db255d46eb7fa..bd908547fc75a0c83fa78e3d29fc9294f6b8ab81 100644 (file)
@@ -290,7 +290,7 @@ void do_schedule_next_timer(struct siginfo *info)
                else
                        schedule_next_timer(timr);
 
-               info->si_overrun = timr->it_overrun_last;
+               info->si_overrun += timr->it_overrun_last;
        }
 
        if (timr)