Accesses to the uvfb_tasks array should be always be protected by a
mutex to avoid race conditions.

Signed-off-by: Michal Januszewski <[EMAIL PROTECTED]>
---
diff --git a/drivers/video/uvesafb.c b/drivers/video/uvesafb.c
index aa5a9c3..e480670 100644
--- a/drivers/video/uvesafb.c
+++ b/drivers/video/uvesafb.c
@@ -208,6 +208,10 @@ static int uvesafb_exec(struct uvesafb_ktask *task)
                err = !wait_for_completion_timeout(task->done,
                                msecs_to_jiffies(UVESAFB_TIMEOUT));
 
+       mutex_lock(&uvfb_lock);
+       uvfb_tasks[seq] = NULL;
+       mutex_unlock(&uvfb_lock);
+
        seq++;
        if (seq >= UVESAFB_TASKS_MAX)
                seq = 0;


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to