code: func (rw *RWMutex) Lock() {
  	if rw.readLockCounter != 0 || rw.writeLocked {
  		panic("nosync: mutex is already locked")
  	}
  	rw.writeLocked = true
  }
docs: // Lock locks m for writing. It is a run-time error if rw is already locked for reading or writing.