git: d368dc0b420a - stable/13 - frag6: drop the volatile keyword from frag6_nfrags and mark with __exclusive_cache_line

Mateusz Guzik mjg at FreeBSD.org
Wed Aug 18 09:47:09 UTC 2021


The branch stable/13 has been updated by mjg:

URL: https://cgit.FreeBSD.org/src/commit/?id=d368dc0b420af723e85a224636e23998b3e14c07

commit d368dc0b420af723e85a224636e23998b3e14c07
Author:     Mateusz Guzik <mjg at FreeBSD.org>
AuthorDate: 2021-08-13 11:28:39 +0000
Commit:     Mateusz Guzik <mjg at FreeBSD.org>
CommitDate: 2021-08-18 09:44:44 +0000

    frag6: drop the volatile keyword from frag6_nfrags and mark with __exclusive_cache_line
    
    The keyword adds nothing as all operations on the var are performed
    through atomic_*
    
    Reviewed by:    kp
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
    Differential Revision:  https://reviews.freebsd.org/D31528
    
    (cherry picked from commit c17ae18080b4412435aa2fb91cd6e81dd6cd180b)
---
 sys/netinet6/frag6.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/netinet6/frag6.c b/sys/netinet6/frag6.c
index 1903b01e03d4..ec35e98d25ec 100644
--- a/sys/netinet6/frag6.c
+++ b/sys/netinet6/frag6.c
@@ -116,7 +116,7 @@ VNET_DEFINE_STATIC(bool,		frag6_on);
 
 /* System wide (global) maximum and count of packets in reassembly queues. */
 static int ip6_maxfrags;
-static volatile u_int frag6_nfrags = 0;
+static u_int __exclusive_cache_line frag6_nfrags;
 
 /* Maximum and current packets in per-VNET reassembly queue. */
 VNET_DEFINE_STATIC(int,			ip6_maxfragpackets);
@@ -164,7 +164,7 @@ VNET_DEFINE_STATIC(uint32_t,		ip6qb_hashseed);
 SYSCTL_DECL(_net_inet6_ip6);
 
 SYSCTL_UINT(_net_inet6_ip6, OID_AUTO, frag6_nfrags,
-	CTLFLAG_RD, __DEVOLATILE(u_int *, &frag6_nfrags), 0,
+	CTLFLAG_RD, &frag6_nfrags, 0,
 	"Global number of IPv6 fragments across all reassembly queues.");
 
 static void


More information about the dev-commits-src-all mailing list