OSDN Git Service

libitm: Fix privatization safety during upgrades to serial mode.
authortorvald <torvald@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 24 Dec 2011 01:42:35 +0000 (01:42 +0000)
committertorvald <torvald@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 24 Dec 2011 01:42:35 +0000 (01:42 +0000)
commitc4c0a912745588307c7be984615a825edd421bbd
treefd0ffc4afe2a926dc6676559d466c9ae7fad9c2b
parent813b307549daffa9a654d62e98a71ea8a11f932d
libitm: Fix privatization safety during upgrades to serial mode.

libitm/
* beginend.cc (GTM::gtm_thread::restart): Add and handle
finish_serial_upgrade parameter.
* libitm.h (GTM::gtm_thread::restart): Adapt declaration.
* config/linux/rwlock.cc (GTM::gtm_rwlock::write_lock_generic):
Don't unset reader flag.
(GTM::gtm_rwlock::write_upgrade_finish): New.
* config/posix/rwlock.cc: Same.
* config/linux/rwlock.h (GTM::gtm_rwlock::write_upgrade_finish):
Declare.
* config/posix/rwlock.h: Same.
* method-serial.cc (GTM::gtm_thread::serialirr_mode): Unset reader
flag after commit or after rollback when restarting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182675 138bc75d-0d04-0410-961f-82ee72b054a4
libitm/ChangeLog
libitm/beginend.cc
libitm/config/linux/rwlock.cc
libitm/config/linux/rwlock.h
libitm/config/posix/rwlock.cc
libitm/config/posix/rwlock.h
libitm/libitm_i.h
libitm/method-serial.cc