staging/rts_pstor: fix Polling thread wakeups CPU
authorCho, Yu-Chen <acho@novell.com>
Tue, 3 May 2011 09:53:35 +0000 (17:53 +0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 3 May 2011 19:48:37 +0000 (12:48 -0700)
RealTek PCI-E Card Reader rts_pstor driver causes CPU wakeup very
frequently, thatt's bad for power consumption.

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rts_pstor/rtsx.c

index 02525d5..5ff59f2 100644 (file)
@@ -594,7 +594,9 @@ static int rtsx_polling_thread(void *__dev)
        wait_timeout((delay_use + 5) * 1000);
 
        for (;;) {
-               wait_timeout(POLLING_INTERVAL);
+
+               set_current_state(TASK_INTERRUPTIBLE);
+               schedule_timeout(POLLING_INTERVAL);
 
                /* lock the device pointers */
                mutex_lock(&(dev->dev_mutex));