header (C) fixes
tstRTLockValidator: typo
*: spelling fixes, thanks Timeless!
Automated rebranding to Oracle copyright/license strings via filemuncher
Build fix
iprt/lockvalidator,tstRTLockValidator: Fixed some class reference counting bugs.
iprt/semaphore.h: RT_LOCK_CHECK_ORDER && IN_RING3 -> wrap RTSemRWCreate and RTSemMutexCreate so automatic order validation is performed.
iprt/cdefs,*: Use RT_LOCK_STRICT and RT_LOCK_STRICT_ORDER for controlling deadlock detection and lock order validation. Currently both are disabled by default, but it's possible to add VBOX_WITH_STRICT_LOCKS=1 to LocalConfig.kmk to enable it all.
PDMCritSect: Deployed lock ordering. (ring-3 only, only DEBUG_bird atm)
iprt: RTSemMutex order validation.
iprt: SemRW lock order bugfixes.
iprt: Added RTSemRWCreateEx and RTSemRWSetSubClass. Updated tstRTLockValidator with a test of the SemRW lock order validation.
iprt,pdmcritsect: More flexible lock naming, added RTCritSectSetSubClass and made some RTCritSectInitEx.
iprt/lockvalidator: Tested and debugged the basics of lock order validation.
working on lock order testcase...
iprt/lockvalidator: Record recursion on the lock stack.
iprt: Instrumented semeventmulti-linux.cpp and hacked more on the validator and the testcase.
iprt: Added RTSemEventMulti[Set|Add|Remove]Signaller.
iprt,pdmcritsect: Added RTSemEvent[Set|Add|Remove]Signaller so that we can validate who is signalling an event if we like and, more importantly, detect deadlocks involving event semaphores. More attempts at dealing with the races (and bugs) in the all-other-threads-blocking detection in tstRTLockValidator.cpp, adding RTThreadGetReallySleeping and RTThreadGetNativeState in the process.
tstRTLockValidator: Added a simple mutex deadlock to the testcase.
more cleanup
tstRTLockValidator: testcase improvements.
tstRTLockValidator: Added some recursion just to make sure it works.
tstRTLockValidator.cpp: Another test variation.
IPRT,pdmcritsect: More lock validator hacking.
iprt: Added lock validator testcase for read-write semaphore deadlocks. Fixed bugs found with it.
iprt,pdmcritsect: More lock validator refactoring and debugging. Added hooks to semrw-generic.cpp. (Everything is still disabled.)
tstDeadlock -> tstRTLockValidator.