Print this page
*** NO COMMENTS ***

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/zfs/txg.c
          +++ new/usr/src/uts/common/fs/zfs/txg.c
↓ open down ↓ 471 lines elided ↑ open up ↑
 472  472  
 473  473  /*
 474  474   * Delay this thread by 'ticks' if we are still in the open transaction
 475  475   * group and there is already a waiting txg quiesing or quiesced.  Abort
 476  476   * the delay if this txg stalls or enters the quiesing state.
 477  477   */
 478  478  void
 479  479  txg_delay(dsl_pool_t *dp, uint64_t txg, int ticks)
 480  480  {
 481  481          tx_state_t *tx = &dp->dp_tx;
 482      -        int timeout = ddi_get_lbolt() + ticks;
      482 +        clock_t timeout = ddi_get_lbolt() + ticks;
 483  483  
 484  484          /* don't delay if this txg could transition to quiesing immediately */
 485  485          if (tx->tx_open_txg > txg ||
 486  486              tx->tx_syncing_txg == txg-1 || tx->tx_synced_txg == txg-1)
 487  487                  return;
 488  488  
 489  489          mutex_enter(&tx->tx_sync_lock);
 490  490          if (tx->tx_open_txg > txg || tx->tx_synced_txg == txg-1) {
 491  491                  mutex_exit(&tx->tx_sync_lock);
 492  492                  return;
↓ open down ↓ 232 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX