]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Re-embed multilist_t storage
authorAlexander Motin <mav@FreeBSD.org>
Thu, 10 Jun 2021 16:42:31 +0000 (12:42 -0400)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 10 Jun 2021 17:50:16 +0000 (10:50 -0700)
commit57196f8ae9323e92cb85a9f9b0c29b01775eee88
treee84b840da54af15769509dae0e87b4ed9b196f09
parent8dc540ae1601e4075da64ded1cb75406c4969f87
Re-embed multilist_t storage

This commit partially reverts changes to multilists in PR 7968
(multi-threaded spa-sync()) and adds some cache line alignments to
separate read-only multilists and heavily modified refcount's to
different cache lines.

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored-by: iXsystems, Inc.
Closes #12158
12 files changed:
include/sys/arc_impl.h
include/sys/dmu_objset.h
include/sys/metaslab_impl.h
include/sys/multilist.h
module/zfs/arc.c
module/zfs/dbuf.c
module/zfs/dmu_objset.c
module/zfs/dnode.c
module/zfs/dsl_dataset.c
module/zfs/dsl_pool.c
module/zfs/metaslab.c
module/zfs/multilist.c