code: void startRemotePut() {
      assert !_key.home();
      int x = 0;
      // assert I am waiting on threads with higher priority?
      while( (x=_rwlock.get()) != -1 ) // Spin until rwlock==-1
        if( x == 1 || RW_CAS(0,1,"remote_need_notify") )
          try { ForkJoinPool.managedBlock(this); } catch( InterruptedException e ) { }
    }
docs: Block this thread until all prior remote PUTs complete - to force
  remote-PUT ordering on the home node.