git: 8d9f1e9f2be1 - stable/12 - ip_reass: drop the volatile keyword from nfrags and mark with __exclusive_cache_line

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


The branch stable/12 has been updated by mjg:

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

commit 8d9f1e9f2be113a62b280fa3610fbdd3b97af729
Author:     Mateusz Guzik <mjg at FreeBSD.org>
AuthorDate: 2021-08-13 09:29:57 +0000
Commit:     Mateusz Guzik <mjg at FreeBSD.org>
CommitDate: 2021-08-18 09:48:14 +0000

    ip_reass: drop the volatile keyword from 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/D31526
    
    (cherry picked from commit d2b95af1c27ed51d72bef5d9f3d89860edc4fd40)
---
 sys/netinet/ip_reass.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/netinet/ip_reass.c b/sys/netinet/ip_reass.c
index a0503cd614c2..5aa75474ad60 100644
--- a/sys/netinet/ip_reass.c
+++ b/sys/netinet/ip_reass.c
@@ -137,12 +137,12 @@ ipq_drop(struct ipqbucket *bucket, struct ipq *fp)
 #define	IP_MAXFRAGPACKETS	(imin(IP_MAXFRAGS, IPREASS_NHASH * 50))
 
 static int		maxfrags;
-static volatile u_int	nfrags;
+static u_int __exclusive_cache_line	nfrags;
 SYSCTL_INT(_net_inet_ip, OID_AUTO, maxfrags, CTLFLAG_RW,
     &maxfrags, 0,
     "Maximum number of IPv4 fragments allowed across all reassembly queues");
 SYSCTL_UINT(_net_inet_ip, OID_AUTO, curfrags, CTLFLAG_RD,
-    __DEVOLATILE(u_int *, &nfrags), 0,
+    &nfrags, 0,
     "Current number of IPv4 fragments across all reassembly queues");
 
 VNET_DEFINE_STATIC(uma_zone_t, ipq_zone);


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