public void setSuccessorMustWait(boolean successorMustWait) {
			int oldState, newState;
			do {
				oldState = state.get();
				if (successorMustWait) {
					newState = oldState | SMW_MASK;
				} else {
					newState = oldState & ~SMW_MASK;
				}
			} while (! state.compareAndSet(oldState, newState));
		}