[PATCH 1/2] extract-handshakes: fix compatibility with upstream WireGuard module

Peter Wu <[email protected]> Mon, 1 Jun 2026 00:55:20 +0200
Newsgroups com.zx2c4.lists.wireguard
Message-ID <[email protected]>
Fix probe target, it got prefixed with wg_ in WireGuard 0.0.20181006 to
prepare for upstream Linux inclusion. Fix the trace directory, since
Linux v6.17 the old location has been disabled by default.

Signed-off-by: Peter Wu <[email protected]>
---
 .../extract-handshakes/extract-handshakes.sh    | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/contrib/extract-handshakes/extract-handshakes.sh b/contrib/extract-handshakes/extract-handshakes.sh
index 135a0d3..57d397e 100755
--- a/contrib/extract-handshakes/extract-handshakes.sh
+++ b/contrib/extract-handshakes/extract-handshakes.sh
@@ -34,17 +34,22 @@ for key in "${!OFFSETS[@]}"; do
 	done
 done
 
+# Use the new tracefs dir, since Linux v4.1. The old debugfs tracing directory
+# is gone since Linux v6.17 without CONFIG_TRACEFS_AUTOMOUNT_DEPRECATED=y.
+tracefs=/sys/kernel/tracing
+[ -e "$tracefs" ] || tracefs=/sys/kernel/debug/tracing
+
 turn_off() {
 	set +e
-	[[ -f /sys/kernel/debug/tracing/events/wireguard/idxadd/enable ]] || exit
-	echo 0 > /sys/kernel/debug/tracing/events/wireguard/idxadd/enable
-	echo "-:wireguard/idxadd" >> /sys/kernel/debug/tracing/kprobe_events
+	[[ -f "$tracefs/events/wireguard/idxadd/enable" ]] || exit
+	echo 0 > "$tracefs/events/wireguard/idxadd/enable"
+	echo "-:wireguard/idxadd" >> "$tracefs/kprobe_events"
 	exit
 }
 
 trap turn_off INT TERM EXIT
-echo "p:wireguard/idxadd index_hashtable_insert ${ARGS[*]}" >> /sys/kernel/debug/tracing/kprobe_events
-echo 1 > /sys/kernel/debug/tracing/events/wireguard/idxadd/enable
+echo "p:wireguard/idxadd wg_index_hashtable_insert ${ARGS[*]}" >> "$tracefs/kprobe_events"
+echo 1 > "$tracefs/events/wireguard/idxadd/enable"
 
 unpack_u64() {
 	local i expanded="$1"
@@ -77,4 +82,4 @@ while read -r line; do
 		done
 		echo "  $key = $(printf "$bytes" | base64)"
 	done
-done < /sys/kernel/debug/tracing/trace_pipe
+done < "$tracefs/trace_pipe"
-- 
2.54.0