Project

General

Profile

Actions

Bug #3643

closed

txg_delay should not hold the tc_lock

Added by Christopher Siden about 8 years ago. Updated about 8 years ago.

Status:
Closed
Priority:
Normal
Category:
zfs - Zettabyte File System
Start date:
2013-03-21
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

From George Wilson's bug report at Delphix:

Any thread calling txg_delay will end up going to sleep with the tc_lock held.
This can lead to performance issues since synchronous I/Os end up calling
txg_rele_to_sync() when the I/O completes. This function will need to grab the
tc_lock to decrement the tc_count.

A new lock should be introduced to protect tx_open_txg.

Related issues

Related to illumos gate - Bug #3642: dsl_scan_active() should not issue I/O to determine if async destroying is activeClosedChristopher Siden2013-03-21

Actions
Actions #1

Updated by Christopher Siden about 8 years ago

  • Status changed from In Progress to Closed
commit 4a92375
Author: George Wilson <george.wilson@delphix.com>
Date:   Tue Apr 23 10:31:42 2013

    3642 dsl_scan_active() should not issue I/O to determine if async destroying is active
    3643 txg_delay should not hold the tc_lock
    Reviewed by: Matthew Ahrens <mahrens@delphix.com>
    Reviewed by: Adam Leventhal <ahl@delphix.com>
    Approved by: Gordon Ross <gwr@nexenta.com>
Actions

Also available in: Atom PDF