code: private long writeLockVictimIfSet() {
  		long victimLockstamp = victimLock.readLock();
  		if (hasVictim) {
  			// try to upgrade our read lock to write exclusive if victim
  			long writeLockStamp = victimLock.tryConvertToWriteLock(victimLockstamp);
  			// could not get write lock
  			if (writeLockStamp == 0L) {
  				// so unlock the victim
  				victimLock.unlock(victimLockstamp);
  				// now just block until we have exclusive lock
  				victimLockstamp = victimLock.writeLock();
  				// make sure victim is still set with our new write lock
  				if (!hasVictim) {
  					// victim has been cleared by another thread... so just give
  					// up our lock
  					victimLock.tryUnlockWrite();
  					return 0L;
  				} else
  					return victimLockstamp;
  			} else {
  				return writeLockStamp;
  			}
  		} else {
  			victimLock.unlock(victimLockstamp);
  			return 0L;
  		}
  	}
docs: *
  Checks if the victim is set using a read lock and upgrades to a write
  lock if it is. Will either return a write lock stamp if victim is set, or
  zero if no victim.
  
  @return a write lock stamp for the Victim or 0 if no victim