The function wait_event_timeout can fail and return an error. Handle
this case in stt_timer_main().

Signed-off-by: James Simmons <jsimm...@infradead.org>
---
 drivers/staging/lustre/lnet/selftest/timer.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/lustre/lnet/selftest/timer.c 
b/drivers/staging/lustre/lnet/selftest/timer.c
index 8be5252..ef8a8a7 100644
--- a/drivers/staging/lustre/lnet/selftest/timer.c
+++ b/drivers/staging/lustre/lnet/selftest/timer.c
@@ -170,20 +170,22 @@ stt_check_timers(unsigned long *last)
 static int
 stt_timer_main(void *arg)
 {
+       int rc = 0;
+
        cfs_block_allsigs();
 
        while (!stt_data.stt_shuttingdown) {
                stt_check_timers(&stt_data.stt_prev_slot);
 
-               wait_event_timeout(stt_data.stt_waitq,
-                                  stt_data.stt_shuttingdown,
-                                  cfs_time_seconds(STTIMER_SLOTTIME));
+               rc = wait_event_timeout(stt_data.stt_waitq,
+                                       stt_data.stt_shuttingdown,
+                                       cfs_time_seconds(STTIMER_SLOTTIME));
        }
 
        spin_lock(&stt_data.stt_lock);
        stt_data.stt_nthreads--;
        spin_unlock(&stt_data.stt_lock);
-       return 0;
+       return rc;
 }
 
 static int
-- 
1.7.1

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to