code: synchronized void restart()
      {
          TransactionTask task = m_backlog.getFirst();
          if (task.needCoordination() && m_scoreboardEnabled) {
              coordinatedTaskQueueOffer(task);
          } else {
              taskQueueOffer(task);
          }
      }
docs: Restart the current task at the head of the queue.  This will be called
  instead of flush by the currently blocking MP transaction in the event a
  restart is necessary.