Hi,

auerswald.c did a direct access to current->state. This potentially unsafe on 
SMP. Here is the fix.

        Regards
                Oliver

--- auerswald.c.alt     Thu Jan 31 20:31:47 2002
+++ auerswald.c Thu Jan 31 20:33:39 2002
@@ -614,13 +614,13 @@
 
        dbg ("auerchain_start_wait_urb called");
        init_waitqueue_head (&wqh);
-       current->state = TASK_INTERRUPTIBLE;
+       set_current_state(TASK_INTERRUPTIBLE);
        add_wait_queue (&wqh, &wait);
        urb->context = &wqh;
        status = auerchain_submit_urb ( acp, urb);
        if (status) {
                /* something went wrong */
-               current->state = TASK_RUNNING;
+               set_current_state(TASK_RUNNING);
                remove_wait_queue (&wqh, &wait);
                return status;
        }
@@ -631,7 +631,7 @@
        } else
                status = 1;
 
-       current->state = TASK_RUNNING;
+       set_current_state(TASK_RUNNING);
        remove_wait_queue (&wqh, &wait);
 
        if (!status) {

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to