Module Name: src
Committed By: maxv
Date: Mon Jan 29 08:27:10 UTC 2018
Modified Files:
src/sys/netinet6: ip6_flow.c
Log Message:
Style, and use __cacheline_aligned.
By the way, it would be nice to revisit the use of 'ip6flow_lock' in
ip6flow_fastforward(): it is taken right away because of 'ip6flow_inuse',
but then we perform several checks that do not require it.
To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 src/sys/netinet6/ip6_flow.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/netinet6/ip6_flow.c
diff -u src/sys/netinet6/ip6_flow.c:1.38 src/sys/netinet6/ip6_flow.c:1.39
--- src/sys/netinet6/ip6_flow.c:1.38 Mon Jan 8 23:33:40 2018
+++ src/sys/netinet6/ip6_flow.c Mon Jan 29 08:27:10 2018
@@ -1,6 +1,6 @@
-/* $NetBSD: ip6_flow.c,v 1.38 2018/01/08 23:33:40 knakahara Exp $ */
+/* $NetBSD: ip6_flow.c,v 1.39 2018/01/29 08:27:10 maxv Exp $ */
-/*-
+/*
* Copyright (c) 2007 The NetBSD Foundation, Inc.
* All rights reserved.
*
@@ -31,14 +31,14 @@
*
* IPv6 version was developed by Liam J. Foy. Original source existed in IPv4
* format developed by Matt Thomas. Thanks to Joerg Sonnenberger, Matt
- * Thomas and Christos Zoulas.
+ * Thomas and Christos Zoulas.
*
* Thanks to Liverpool John Moores University, especially Dr. David Llewellyn-Jones
* for providing resources (to test) and Professor Madjid Merabti.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ip6_flow.c,v 1.38 2018/01/08 23:33:40 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ip6_flow.c,v 1.39 2018/01/29 08:27:10 maxv Exp $");
#ifdef _KERNEL_OPT
#include "opt_net_mpsafe.h"
@@ -89,7 +89,7 @@ TAILQ_HEAD(ip6flowhead, ip6flow);
* use our own (possibly for future expansion).
*/
#define IP6FLOW_TIMER (5 * PR_SLOWHZ)
-#define IP6FLOW_DEFAULT_HASHSIZE (1 << IP6FLOW_HASHBITS)
+#define IP6FLOW_DEFAULT_HASHSIZE (1 << IP6FLOW_HASHBITS)
/*
* ip6_flow.c internal lock.
@@ -98,10 +98,10 @@ TAILQ_HEAD(ip6flowhead, ip6flow);
* This is a tentative workaround.
* We should make it scalable somehow in the future.
*/
-static kmutex_t ip6flow_lock;
+static kmutex_t ip6flow_lock __cacheline_aligned;
static struct ip6flowhead *ip6flowtable = NULL;
static struct ip6flowhead ip6flowlist;
-static int ip6flow_inuse;
+static int ip6flow_inuse __cacheline_aligned;
static void ip6flow_slowtimo_work(struct work *, void *);
static struct workqueue *ip6flow_slowtimo_wq;
@@ -140,7 +140,7 @@ int ip6_hashsize = IP6FLOW_DEFAULT_HASHS
/*
* Calculate hash table position.
*/
-static size_t
+static size_t
ip6flow_hash(const struct ip6_hdr *ip6)
{
size_t hash;
@@ -177,7 +177,7 @@ ip6flow_lookup(const struct ip6_hdr *ip6
if (IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, &ip6f->ip6f_dst)
&& IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, &ip6f->ip6f_src)
&& ip6f->ip6f_flow == ip6->ip6_flow) {
- /* A cached flow has been found. */
+ /* A cached flow has been found. */
return ip6f;
}
}
@@ -248,7 +248,7 @@ ip6flow_init(int table_size)
/*
* IPv6 Fast Forward routine. Attempt to forward the packet -
- * if any problems are found return to the main IPv6 input
+ * if any problems are found return to the main IPv6 input
* routine to deal with.
*/
int
@@ -301,7 +301,7 @@ ip6flow_fastforward(struct mbuf **mp)
/*
* If we have a hop-by-hop extension we must process it.
- * We just leave this up to ip6_input to deal with.
+ * We just leave this up to ip6_input to deal with.
*/
if (ip6->ip6_nxt == IPPROTO_HOPOPTS)
goto out;
@@ -492,7 +492,7 @@ ip6flow_reap_locked(int just_one)
/*
* Reap one or more flows - ip6flow_reap may remove
- * multiple flows if net.inet6.ip6.maxflows is reduced.
+ * multiple flows if net.inet6.ip6.maxflows is reduced.
*/
struct ip6flow *
ip6flow_reap(int just_one)
@@ -617,7 +617,7 @@ ip6flow_create(struct route *ro, struct
PRT_SLOW_ARM(ip6f->ip6f_timer, IP6FLOW_TIMER);
/*
- * Insert into the approriate bucket of the flow table.
+ * Insert into the appropriate bucket of the flow table.
*/
hash = ip6flow_hash(ip6);
IP6FLOW_INSERT(hash, ip6f);
@@ -646,7 +646,7 @@ ip6flow_invalidate_all(int new_size)
ip6flow_free(ip6f);
}
- if (new_size)
+ if (new_size)
error = ip6flow_init_locked(new_size);
mutex_exit(&ip6flow_lock);
@@ -724,17 +724,17 @@ ip6flow_sysctl_init(struct sysctllog **c
CTL_NET, PF_INET6, IPPROTO_IPV6, CTL_EOL);
sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
- CTLTYPE_INT, "maxflows",
- SYSCTL_DESCR("Number of flows for fast forwarding (IPv6)"),
- sysctl_net_inet6_ip6_maxflows, 0, &ip6_maxflows, 0,
- CTL_NET, PF_INET6, IPPROTO_IPV6,
- CTL_CREATE, CTL_EOL);
+ CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
+ CTLTYPE_INT, "maxflows",
+ SYSCTL_DESCR("Number of flows for fast forwarding (IPv6)"),
+ sysctl_net_inet6_ip6_maxflows, 0, &ip6_maxflows, 0,
+ CTL_NET, PF_INET6, IPPROTO_IPV6,
+ CTL_CREATE, CTL_EOL);
sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
- CTLTYPE_INT, "hashsize",
- SYSCTL_DESCR("Size of hash table for fast forwarding (IPv6)"),
- sysctl_net_inet6_ip6_hashsize, 0, &ip6_hashsize, 0,
- CTL_NET, PF_INET6, IPPROTO_IPV6,
- CTL_CREATE, CTL_EOL);
+ CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
+ CTLTYPE_INT, "hashsize",
+ SYSCTL_DESCR("Size of hash table for fast forwarding (IPv6)"),
+ sysctl_net_inet6_ip6_hashsize, 0, &ip6_hashsize, 0,
+ CTL_NET, PF_INET6, IPPROTO_IPV6,
+ CTL_CREATE, CTL_EOL);
}