aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/in_pcb.h
diff options
context:
space:
mode:
authorAndre Oppermann <andre@FreeBSD.org>2013-04-09 21:02:20 +0000
committerAndre Oppermann <andre@FreeBSD.org>2013-04-09 21:02:20 +0000
commite8b3186b6a975ea4e701ece75215d9ed6ea7ea4d (patch)
treee754fcc273d884acf419c8faf5d21332f374104e /sys/netinet/in_pcb.h
parent982c1675ff8864f51007e0be402ead88429222bb (diff)
downloadsrc-e8b3186b6a975ea4e701ece75215d9ed6ea7ea4d.tar.gz
src-e8b3186b6a975ea4e701ece75215d9ed6ea7ea4d.zip
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.
Notes
Notes: svn path=/head/; revision=249318
Diffstat (limited to 'sys/netinet/in_pcb.h')
-rw-r--r--sys/netinet/in_pcb.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/in_pcb.h b/sys/netinet/in_pcb.h
index 2df90b057599..5274a9090f4d 100644
--- a/sys/netinet/in_pcb.h
+++ b/sys/netinet/in_pcb.h
@@ -330,7 +330,7 @@ struct inpcbinfo {
/*
* Global lock protecting non-pcbgroup hash lookup tables.
*/
- struct rwlock ipi_hash_lock;
+ struct rwlock_padalign ipi_hash_lock;
/*
* Global hash of inpcbs, hashed by local and foreign addresses and