ftmemsim-valgrind/docs/internals/tm-mutexstates.dot
Nicholas Nethercote 61448c507d We have a nice little collection of text files describing various high
level things.  But they're all over the place.  This commits moves
them all to the new docs/internals/ directory, and gives them 
a consistent naming scheme.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4196
2005-07-19 21:46:19 +00:00

23 lines
654 B
Plaintext

digraph mutex_states {
// States
free;
locked;
unlocking;
dead;
// Valid transitions
dead -> free [ label="initialized" ];
free -> locked [ label="locked" ];
locked -> unlocking [ label="unlocked\nby owner" ];
unlocking -> free [ label="unlock completed" ];
unlocking -> locked [ label="lock changed owner" ];
free -> dead [ label="destroyed" ];
// Bad transitions
dead -> locked [ style=dotted, label="locked\nafter destroy" ];
dead -> free [ style=dotted, label="unlocked\nafter destroy" ];
locked -> free [ style=dotted, label="unlocked\nby non-owner" ];
locked -> dead [ style=dotted, label="destroyed\nwhile locked" ];
}