HomeFreeBSD

Optimize txg_kick() process (#12274)

Description

Optimize txg_kick() process (#12274)

Use dp_dirty_pertxg[] for txg_kick(), instead of dp_dirty_total in
original code. Extra parameter "txg" is added for txg_kick(), thus it
knows which txg to kick. Also txg_kick() call is moved from
dsl_pool_need_dirty_delay() to dsl_pool_dirty_space() so that we can
know the txg number assigned for txg_kick().

Some unnecessary code regarding dp_dirty_total in txg_sync_thread() is
also cleaned up.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: jxdking <lostking2008@hotmail.com>
Closes #12274

Details

Provenance
Kevin Jin <33590050+jxdking@users.noreply.github.com>Authored on Jul 1 2021, 3:20 PM
GitHub <noreply@github.com>Committed on Jul 1 2021, 3:20 PM
Parents
rG42afb12da70f: Remove refcount from spa_config_*()
Branches
Unknown
Tags
Unknown

Event Timeline

GitHub <noreply@github.com> committed rG50e09eddd0c5: Optimize txg_kick() process (#12274) (authored by Kevin Jin <33590050+jxdking@users.noreply.github.com>).Jul 1 2021, 3:20 PM