Skip to contentSkip to conversation

usb/mdc800: cleanup

PATCH New Nishanth Aravamudan 1 participant 1 message Sep 27, 2004

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 7/9 usb/mdc800: cleanup

Any comments would be appreciated.

Description: This patch cleans up the wait queue usage in this driver. The state is no longer set until just before the task sleeps, which removes a few set_current_state()s. Correspondingly, the state doesn't need to be set back to TASK_RUNNING outside of the while-loops, as schedule_timeout() takes care of it.

drivers/usb/image/mdc800.c +0 -4
@@ -317,7 +317,6 @@ static int mdc800_usb_waitForIRQ (int mo
 	mdc800->camera_request_ready=1+mode;
 
 	add_wait_queue(&mdc800->irq_wait, &wait);
-	set_current_state(TASK_INTERRUPTIBLE);
 	timeout = msec*HZ/1000;
 	while (!mdc800->irq_woken && timeout)
 	{
@@ -325,7 +324,6 @@ static int mdc800_usb_waitForIRQ (int mo
 		timeout = schedule_timeout (timeout);
 	}
         remove_wait_queue(&mdc800->irq_wait, &wait);
-	set_current_state(TASK_RUNNING);
 	mdc800->irq_woken = 0;
 
 	if (mdc800->camera_request_ready>0)
@@ -725,7 +723,6 @@ static ssize_t mdc800_device_read (struc
 					set_current_state(TASK_UNINTERRUPTIBLE);
 					timeout = schedule_timeout (timeout);
 				}
-				set_current_state(TASK_RUNNING);
 				remove_wait_queue(&mdc800->download_wait, &wait);
 				mdc800->downloaded = 0;
 				if (mdc800->download_urb->status != 0)
@@ -851,7 +848,6 @@ static ssize_t mdc800_device_write (stru
 				set_current_state(TASK_UNINTERRUPTIBLE);
 				timeout = schedule_timeout (timeout);
 			}
-                        set_current_state(TASK_RUNNING);
 			remove_wait_queue(&mdc800->write_wait, &wait);
 			mdc800->written = 0;
 			if (mdc800->state == WORKING)

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors