diff --git a/lib/libc_r/uthread/pthread_private.h b/lib/libc_r/uthread/pthread_private.h index 5f0f3a8fd3be..f1a571007bc3 100644 --- a/lib/libc_r/uthread/pthread_private.h +++ b/lib/libc_r/uthread/pthread_private.h @@ -217,9 +217,8 @@ struct pthread_attr { #define TIMESLICE_USEC 100000 struct pthread_key { - pthread_mutex_t mutex; - long access_lock; - long count; + volatile long access_lock; + volatile int allocated; void (*destructor) (); }; diff --git a/lib/libkse/thread/thr_private.h b/lib/libkse/thread/thr_private.h index 5f0f3a8fd3be..f1a571007bc3 100644 --- a/lib/libkse/thread/thr_private.h +++ b/lib/libkse/thread/thr_private.h @@ -217,9 +217,8 @@ struct pthread_attr { #define TIMESLICE_USEC 100000 struct pthread_key { - pthread_mutex_t mutex; - long access_lock; - long count; + volatile long access_lock; + volatile int allocated; void (*destructor) (); }; diff --git a/lib/libpthread/thread/thr_private.h b/lib/libpthread/thread/thr_private.h index 5f0f3a8fd3be..f1a571007bc3 100644 --- a/lib/libpthread/thread/thr_private.h +++ b/lib/libpthread/thread/thr_private.h @@ -217,9 +217,8 @@ struct pthread_attr { #define TIMESLICE_USEC 100000 struct pthread_key { - pthread_mutex_t mutex; - long access_lock; - long count; + volatile long access_lock; + volatile int allocated; void (*destructor) (); };