Project

General

Profile

Bug #3836

zio_free() can be processed immediately in the common case

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

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

100%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage

Description

From Matt Ahrens's original bug report at Delphix:

Currently zio_free() always puts the zio on a list for subsequent processing by
zio_free_sync().  This is only necessary for frees that might need to issue
reads (gang and dedup blocks).

By processing the majority of the frees as we encounter them, we reduce the
amount of time that the spa_sync() thread spends burning CPU and not doing any
i/o, thus increasing the overall write throughput of the system.

History

#1

Updated by Christopher Siden about 6 years ago

  • Status changed from In Progress to Closed
commit 9cb154a
Author: Matthew Ahrens <mahrens@delphix.com>
Date:   Wed Jul 3 09:13:38 2013

    3836 zio_free() can be processed immediately in the common case
    Reviewed by: George Wilson <george.wilson@delphix.com>
    Reviewed by: Adam Leventhal <ahl@delphix.com>
    Approved by: Dan McDonald <danmcd@nexenta.com>

Also available in: Atom PDF