Subject: Re: [PATCH net] selftests: wireguard: load nf_conntrack if it's not present

From: Simon Horman <[email-masked]>
Date: Sun, 10 Nov 2024 13:42:30 +0000

On Thu, Nov 07, 2024 at 02:44:18AM +0000, Hangbin Liu wrote:
> Some distros may not load nf_conntrack by default, which will cause
> subsequent nf_conntrack settings to fail. Let's load this module if it's
> not loaded by default.
> 
> Fixes: e7096c131e51 ("net: WireGuard secure network tunnel")
> Signed-off-by: Hangbin Liu <[email-masked]>
> ---
>  tools/testing/selftests/wireguard/netns.sh | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/testing/selftests/wireguard/netns.sh b/tools/testing/selftests/wireguard/netns.sh
> index 405ff262ca93..508b391e8d9a 100755
> --- a/tools/testing/selftests/wireguard/netns.sh
> +++ b/tools/testing/selftests/wireguard/netns.sh
> @@ -66,6 +66,7 @@ cleanup() {
>  orig_message_cost="$(< /proc/sys/net/core/message_cost)"
>  trap cleanup EXIT
>  printf 0 > /proc/sys/net/core/message_cost
> +lsmod | grep -q nf_conntrack || modprobe nf_conntrack

Hi Hangbin,

As modprobe should be idempotent both for the case were nf_conntrack is
built-in (I'm unsure if that case can ever occur) and the module has
already been inserted, I think you simply use:

modprobe nf_conntrack

Of course, if nf_conntrack isn't available at all, then this will fail.
But that was the case with your patch too. And so I assume it is intended.

>  
>  ip netns del $netns0 2>/dev/null || true
>  ip netns del $netns1 2>/dev/null || true
> -- 
> 2.46.0
> 
>