Details
Description
The issue has been reported in STDCXX-1040, then STDCXX-1066. The originator was apparently an improvement (as a response to CR 6296770: http://tinyurl.com/8ohjsgl) shipped with KU 137111-01 (http://tinyurl.com/ceet6ec) which requires stricter alignment than the machine word for userland mutexes.
Quoting here the Fujitsu patch notes (in case it goes away):
2) When an application using the mutex lock or rw lock in the way shown below is executed. (*1, *2) ... *2) ... example of programming that causes the ... problem. <In the case where the problem occurs> ---------------------------------------------------------------- int *ip; mutex_t *mp; ip = (int *) malloc(sizeof (int) + sizeof (mutex_t)); mp = (mutex_t *) (ip + 1); /* The address is used with a modification */ ---------------------------------------------------------------- <In the case where the problem does not occur -1> ---------------------------------------------------------------- mutex_t mp; /* Obtained statically */ ---------------------------------------------------------------- <In the case where the problem does not occur -2> ---------------------------------------------------------------- mutex_t *mp; mp = (mutex_t *) malloc(sizeof (mutex_t)); /* The address is used without any modifications */ ----------------------------------------------------------------
Attachments
Attachments
Issue Links
- relates to
-
STDCXX-1066 SPARCV8 requires pthread_mutex_t and pthread_cond_t to be aligned on an 8-byte boundary
- Closed
-
STDCXX-1040 Solaris 10 Kernel Update 137111-01 patches
- Closed