diff options
authorLutz Donnerhacke <donner@FreeBSD.org>2021-02-09 11:32:46 +0000
committerLutz Donnerhacke <donner@FreeBSD.org>2021-02-09 19:09:05 +0000
commit011b7317dbb5038a95b9b4fca050325a62f3991e (patch)
parentccf4cd2e7830394467d5f6cf546ab453f9657b69 (diff)
netgraph/ng_bridge: Document staleness in multithreaded operation
In the data path of ng_bridge(4), the only value of the host struct, which needs to be modified, is the staleness, which is reset every time a frame is received. It's save to leave the code as it is. This patch is part of a series to make ng_bridge(4) multithreaded. Reviewed by: kp MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D28546
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/netgraph/ng_bridge.c b/sys/netgraph/ng_bridge.c
index 6e3f993d591b..29ab2c715aa7 100644
--- a/sys/netgraph/ng_bridge.c
+++ b/sys/netgraph/ng_bridge.c
@@ -739,7 +739,10 @@ ng_bridge_rcvdata(hook_p hook, item_p item)
/* Look up packet's source Ethernet address in hashtable */
if ((host = ng_bridge_get(priv, eh->ether_shost)) != NULL) {
- /* Update time since last heard from this host */
+ /* Update time since last heard from this host.
+ * This is safe without locking, because it's
+ * the only operation during shared access.
+ */
host->staleness = 0;
/* Did host jump to a different link? */