SMP race in set_current_state

From: Andrea Arcangeli (andrea@suse.de)
Date: Sun Sep 17 2000 - 09:09:07 EST


This patch fixes a SMP race in 2.2.18pre9:

--- IO-wait/include/linux/sched.h.~1~ Sun Sep 17 01:20:44 2000
+++ IO-wait/include/linux/sched.h Sun Sep 17 03:55:43 2000
@@ -499,7 +499,7 @@
 
 #define __set_current_state(state_value) do { current->state = state_value; } while (0)
 #ifdef __SMP__
-#define set_current_state(state_value) do { mb(); __set_current_state(state_value); } while (0)
+#define set_current_state(state_value) do { __set_current_state(state_value); mb(); } while (0)
 #else
 #define set_current_state(state_value) __set_current_state(state_value)
 #endif

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 21:00:14 EST