]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC r286763: 5497 lock contention on arcs_mtx
authormav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 3 Oct 2015 11:11:56 +0000 (11:11 +0000)
committermav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 3 Oct 2015 11:11:56 +0000 (11:11 +0000)
commite5b622f76e51c1dc6b1ad3780cd0d2867376973f
tree685130ad22dc744bd9c32f8f96ec485ee77cc010
parent7fcf46c276e68d3e63f7680710dfc4fec28ab6fe
MFC r286763: 5497 lock contention on arcs_mtx

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Richard Elling <richard.elling@richardelling.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Prakash Surya <prakash.surya@delphix.com>

illumos/illumos-gate@244781f10dcd82684fd8163c016540667842f203

This patch attempts to reduce lock contention on the current arc_state_t
mutexes. These mutexes are used liberally to protect the number of LRU
lists within the ARC (e.g. ARC_mru, ARC_mfu, etc). The granularity at
which these locks are acquired has been shown to greatly affect the
performance of highly concurrent, cached workloads.

git-svn-id: svn://svn.freebsd.org/base/stable/10@288581 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/cddl/contrib/opensolaris/uts/common/Makefile.files
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/multilist.c [new file with mode: 0644]
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/multilist.h [new file with mode: 0644]
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c
sys/conf/files