diff options
author | andre <andre@FreeBSD.org> | 2013-04-09 21:02:20 +0000 |
---|---|---|
committer | andre <andre@FreeBSD.org> | 2013-04-09 21:02:20 +0000 |
commit | 306fddaf7801d7fae1206025486e9d9a97f52ad4 (patch) | |
tree | e754fcc273d884acf419c8faf5d21332f374104e /sys/netinet/tcp_subr.c | |
parent | f70f4c314a94a4324c5dc34b2660fd66a18f35b4 (diff) | |
download | FreeBSD-src-306fddaf7801d7fae1206025486e9d9a97f52ad4.zip FreeBSD-src-306fddaf7801d7fae1206025486e9d9a97f52ad4.tar.gz |
Change certain heavily used network related mutexes and rwlocks to
reside on their own cache line to prevent false sharing with other
nearby structures, especially for those in the .bss segment.
NB: Those mutexes and rwlocks with variables next to them that get
changed on every invocation do not benefit from their own cache line.
Actually it may be net negative because two cache misses would be
incurred in those cases.
Diffstat (limited to 'sys/netinet/tcp_subr.c')
-rw-r--r-- | sys/netinet/tcp_subr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 24e4db2..ed00af3 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -255,7 +255,7 @@ static VNET_DEFINE(uma_zone_t, tcpcb_zone); #define V_tcpcb_zone VNET(tcpcb_zone) MALLOC_DEFINE(M_TCPLOG, "tcplog", "TCP address and flags print buffers"); -static struct mtx isn_mtx; +static struct mtx_padalign isn_mtx; #define ISN_LOCK_INIT() mtx_init(&isn_mtx, "isn_mtx", NULL, MTX_DEF) #define ISN_LOCK() mtx_lock(&isn_mtx) |