From nobody Wed Dec 17 16:18:28 2025 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 663E91D6DB1; Mon, 6 Jan 2025 08:11:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736151073; cv=none; b=FrnOlodnJCCv/Mtwlle/X1f7fQ4TpC9sTxFVn5/UR1A8pQOfe//BUErdauRYf1Gqd+yi+bLbOR3zcGgCFZnyksDLmxBrhOrVORq5zoRe7NzQyNuDW5UYedhr1fSrBDv5WmPfsk6DUlRw7ITzbZ6DIwUkVhwzH/i7jO1z2hXZZgg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736151073; c=relaxed/simple; bh=2nmj2gdXo4dkcu0HXHuMoluTNdVGD78lk1l1/emsrUY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VWT8k9QKD5WCIhO/nIU4OZRNslgrzP2wLxrtEteaFyuNW0rGAa1DH7SPB9eFSx2ro/tj7PM8x+2uF5Mq3BwzSjKvnkyHVxOhn47/lpij/nYRBRdAnLo7TOnJ28aujqsepuri76hF2UvJJNz1qbrmVRhLU7w357cW0PNjYjlQ1kY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=blstKP+n; arc=none smtp.client-ip=209.85.214.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="blstKP+n" Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-2161eb95317so206573885ad.1; Mon, 06 Jan 2025 00:11:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736151070; x=1736755870; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bhOap6+15f1GmW4sBRqJQM8M8dIdM7tw6pxxMIVMkWY=; b=blstKP+ncjBR9glBpY1gf2ejk3DZB/bDGOWjp3SuJYJUmNFvYp0wRYFjiscErGCbXp bZ2LBf85XggWa7oVKAnCzSsmpwKw57tY+HbuIWR1GkexiR9AV1sD0BK1nn4fNfe9Hvqk o1vKHK8VAir9oUKp8M9pPIxzn8ZFbotnNKCwoOf+ue6Vh8jw9zQgqx2Tsx2qNY2sHv9t CWKfzrPnHXNalQ2Kk4JLeqaxLlHuae562g8ZRuwzDW8k2wg1hJ1wSZ06lhbpyTJvE5Dl NBvXCNFxX0fPpi8CMJca5EUykzsAPoVJtmpVUt8ZQUMuEYpJ2MBk7bNjKeRuTbKMmhDY iuCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736151070; x=1736755870; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bhOap6+15f1GmW4sBRqJQM8M8dIdM7tw6pxxMIVMkWY=; b=k4YvfQhSS1nIKtA/bPJK6bWiBGhF/hciYx+BtJm0MbQg9ED3Jo1WUTDNmjLGXgkxYH 7OPjCpOlEPY52cNUeiNORRChPS9RclkJ7PEcf9WIinnxcCkqTd7fRnJaozveaASird8j BhYQvAKokRcXcLtod7KKpZZ2FSdWHRWHRN0rWvdTTAg8gObWoWFrizPPI70IKuhWHxDu XwZ2lCALn/qySmyh5WQMAvFozo+JlYG8/pmHovdTzakC8eWaKl5SPcV+FqF/t3sZt2q3 KL5CVyjSNwEOqvcLvcdKUa3ih/TO8Fbp8XY5zkIg6eC8yg/4ns5Zp/iIHTUBDHiWvwxx FUug== X-Forwarded-Encrypted: i=1; AJvYcCV6jebqXL3p3oFfsxiKwOTLak+26dnbU7o63kJneFCeNv0s7oI76FBzu4od5UizwL97pUegJeK07xqvEDuvK1VM@vger.kernel.org, AJvYcCVMp/yvqhSxkj9qw42F6EUPAeLQaoxrYUzhR4PdIBCSVG30n03GOp1eJlW3mHyQYdFB3iC7xfw6h0WrBMxc@vger.kernel.org, AJvYcCW6BKAKf7qZbUbnvP0uZRSCl4g0bOMkKX0IZxR34xRFsr6xYREBmdLusRxU9OOk+reW9iA=@vger.kernel.org X-Gm-Message-State: AOJu0YwVpWdvlqObRRKPsUWvId7EDuK779EsW+V0Z9RarR27oTeIWEzt nqusj/wVse/hqKLST4nWgyc0bkc9wj2Lsa8AtZWUtLkphUO+K5aVxoU0JQ== X-Gm-Gg: ASbGnctxJlcxREvW/ePgzRMyUnmXENnVO9vjgfB90i07/nPTmk902mRxhUkJxDIsh5r J3WJIzq16sKD8hU02MXzx3vGW+VVzTxehRVgRdEj8t4GCW9wWOH3/0SecJfOQ5qLsCJBZUnp/zo OaIzWrWXwLqMy7O+Cn5jEGql55e6eHVYnyqBOoL72bjQuDhMd9Qk3m6jtdA1IMxmZcAu2rAc/Zi +hF00DEwo/hCuAkycvslIZAM8xVMAzcNB8Au4FQjkCJwuOcr4xeCEWk1mfE7d5fLxE4vdIz0kq6 X-Google-Smtp-Source: AGHT+IEHw+/S3OGAMfCJhasJ0UYNsadv+UBR4uBkeGflOgvtUWbRLzpFTftGbVN+YPDaAubWouJoig== X-Received: by 2002:a05:6a21:7898:b0:1e0:cabf:4d99 with SMTP id adf61e73a8af0-1e5e046362dmr103096652637.14.1736151070241; Mon, 06 Jan 2025 00:11:10 -0800 (PST) Received: from fedora.dns.podman ([43.228.180.230]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72aad835469sm31910429b3a.60.2025.01.06.00.11.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Jan 2025 00:11:09 -0800 (PST) From: Hangbin Liu To: netdev@vger.kernel.org Cc: "Jason A. Donenfeld" , Jakub Kicinski , Shuah Khan , "David S. Miller" , Simon Horman , Phil Sutter , Florian Westphal , Petr Mladek , Yoann Congal , wireguard@lists.zx2c4.com, bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Hangbin Liu Subject: [PATCHv4 RESEND net-next 2/2] selftests: wireguard: update to using nft for qemu test Date: Mon, 6 Jan 2025 08:10:43 +0000 Message-ID: <20250106081043.2073169-3-liuhangbin@gmail.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250106081043.2073169-1-liuhangbin@gmail.com> References: <20250106081043.2073169-1-liuhangbin@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Since we will replace iptables with nft for wireguard netns testing, let's also convert the qemu test to use nft at the same time. Co-developed-by: Phil Sutter Signed-off-by: Phil Sutter Signed-off-by: Hangbin Liu --- .../testing/selftests/wireguard/qemu/Makefile | 40 ++++++++++++++----- .../selftests/wireguard/qemu/kernel.config | 7 ++-- 2 files changed, 34 insertions(+), 13 deletions(-) diff --git a/tools/testing/selftests/wireguard/qemu/Makefile b/tools/testin= g/selftests/wireguard/qemu/Makefile index 35856b11c143..10e79449fefa 100644 --- a/tools/testing/selftests/wireguard/qemu/Makefile +++ b/tools/testing/selftests/wireguard/qemu/Makefile @@ -40,7 +40,9 @@ endef $(eval $(call tar_download,IPERF,iperf,3.11,.tar.gz,https://downloads.es.n= et/pub/iperf/,de8cb409fad61a0574f4cb07eb19ce1159707403ac2dc01b5d175e91240b7= e5f)) $(eval $(call tar_download,BASH,bash,5.1.16,.tar.gz,https://ftp.gnu.org/gn= u/bash/,5bac17218d3911834520dad13cd1f85ab944e1c09ae1aba55906be1f8192f558)) $(eval $(call tar_download,IPROUTE2,iproute2,5.17.0,.tar.gz,https://www.ke= rnel.org/pub/linux/utils/net/iproute2/,bda331d5c4606138892f23a565d78fca1891= 9b4d508a0b7ca8391c2da2db68b9)) -$(eval $(call tar_download,IPTABLES,iptables,1.8.7,.tar.bz2,https://www.ne= tfilter.org/projects/iptables/files/,c109c96bb04998cd44156622d36f8e04b14070= 1ec60531a10668cfdff5e8d8f0)) +$(eval $(call tar_download,LIBMNL,libmnl,1.0.5,.tar.bz2,https://www.netfil= ter.org/projects/libmnl/files/,274b9b919ef3152bfb3da3a13c950dd60d6e2bcd5423= 0ffeca298d03b40d0525)) +$(eval $(call tar_download,LIBNFTNL,libnftnl,1.2.8,.tar.xz,https://www.net= filter.org/projects/libnftnl/files/,37fea5d6b5c9b08de7920d298de3cdc942e7ae6= 4b1a3e8b880b2d390ae67ad95)) +$(eval $(call tar_download,NFTABLES,nftables,1.1.1,.tar.xz,https://www.net= filter.org/projects/nftables/files/,6358830f3a64f31e39b0ad421d7dadcd240b723= 43ded48d8ef13b8faf204865a)) $(eval $(call tar_download,NMAP,nmap,7.92,.tgz,https://nmap.org/dist/,0641= 83ea642dc4c12b1ab3b5358ce1cef7d2e7e11ffa2849f16d339f5b717117)) $(eval $(call tar_download,IPUTILS,iputils,s20190709,.tar.gz,https://githu= b.com/iputils/iputils/archive/s20190709.tar.gz/#,a15720dd741d7538dd2645f9f5= 16d193636ae4300ff7dbc8bfca757bf166490a)) $(eval $(call tar_download,WIREGUARD_TOOLS,wireguard-tools,1.0.20210914,.t= ar.xz,https://git.zx2c4.com/wireguard-tools/snapshot/,97ff31489217bb265b7ae= 850d3d0f335ab07d2652ba1feec88b734bc96bd05ac)) @@ -322,11 +324,12 @@ $(BUILD_PATH)/init-cpio-spec.txt: $(TOOLCHAIN_PATH)/.= installed $(BUILD_PATH)/ini echo "file /bin/ss $(IPROUTE2_PATH)/misc/ss 755 0 0" >> $@ echo "file /bin/ping $(IPUTILS_PATH)/ping 755 0 0" >> $@ echo "file /bin/ncat $(NMAP_PATH)/ncat/ncat 755 0 0" >> $@ - echo "file /bin/xtables-legacy-multi $(IPTABLES_PATH)/iptables/xtables-le= gacy-multi 755 0 0" >> $@ - echo "slink /bin/iptables xtables-legacy-multi 777 0 0" >> $@ + echo "file /bin/nft $(NFTABLES_PATH)/src/nft 755 0 0" >> $@ echo "slink /bin/ping6 ping 777 0 0" >> $@ echo "dir /lib 755 0 0" >> $@ echo "file /lib/libc.so $(TOOLCHAIN_PATH)/$(CHOST)/lib/libc.so 755 0 0" >= > $@ + echo "file /lib/libmnl.so.0 $(TOOLCHAIN_PATH)/lib/libmnl.so.0 755 0 0" >>= $@ + echo "file /lib/libnftnl.so.11 $(TOOLCHAIN_PATH)/lib/libnftnl.so.11 755 0= 0" >> $@ echo "slink $$($(CHOST)-readelf -p .interp '$(BUILD_PATH)/init'| grep -o = '/lib/.*') libc.so 777 0 0" >> $@ =20 $(KERNEL_BUILD_PATH)/.config: $(TOOLCHAIN_PATH)/.installed kernel.config a= rch/$(ARCH).config @@ -338,7 +341,7 @@ $(KERNEL_BUILD_PATH)/.config: $(TOOLCHAIN_PATH)/.instal= led kernel.config arch/$( cd $(KERNEL_BUILD_PATH) && ARCH=3D$(KERNEL_ARCH) $(KERNEL_PATH)/scripts/k= config/merge_config.sh -n $(KERNEL_BUILD_PATH)/.config $(KERNEL_BUILD_PATH)= /minimal.config $(if $(findstring yes,$(DEBUG_KERNEL)),cp debug.config $(KERNEL_BUILD_PAT= H) && cd $(KERNEL_BUILD_PATH) && ARCH=3D$(KERNEL_ARCH) $(KERNEL_PATH)/scrip= ts/kconfig/merge_config.sh -n $(KERNEL_BUILD_PATH)/.config debug.config,) =20 -$(KERNEL_BZIMAGE): $(TOOLCHAIN_PATH)/.installed $(KERNEL_BUILD_PATH)/.conf= ig $(BUILD_PATH)/init-cpio-spec.txt $(IPERF_PATH)/src/iperf3 $(IPUTILS_PATH= )/ping $(BASH_PATH)/bash $(IPROUTE2_PATH)/misc/ss $(IPROUTE2_PATH)/ip/ip $(= IPTABLES_PATH)/iptables/xtables-legacy-multi $(NMAP_PATH)/ncat/ncat $(WIREG= UARD_TOOLS_PATH)/src/wg $(BUILD_PATH)/init +$(KERNEL_BZIMAGE): $(TOOLCHAIN_PATH)/.installed $(KERNEL_BUILD_PATH)/.conf= ig $(BUILD_PATH)/init-cpio-spec.txt $(IPERF_PATH)/src/iperf3 $(IPUTILS_PATH= )/ping $(BASH_PATH)/bash $(IPROUTE2_PATH)/misc/ss $(IPROUTE2_PATH)/ip/ip $(= LIBMNL_PATH)/libmnl $(LIBNFTNL_PATH)/libnftnl $(NFTABLES_PATH)/src/nft $(NM= AP_PATH)/ncat/ncat $(WIREGUARD_TOOLS_PATH)/src/wg $(BUILD_PATH)/init $(MAKE) -C $(KERNEL_PATH) O=3D$(KERNEL_BUILD_PATH) ARCH=3D$(KERNEL_ARCH) = CROSS_COMPILE=3D$(CROSS_COMPILE) .PHONY: $(KERNEL_BZIMAGE) =20 @@ -421,15 +424,34 @@ $(IPROUTE2_PATH)/misc/ss: | $(IPROUTE2_PATH)/.install= ed $(USERSPACE_DEPS) $(MAKE) -C $(IPROUTE2_PATH) PREFIX=3D/ misc/ss $(STRIP) -s $@ =20 -$(IPTABLES_PATH)/.installed: $(IPTABLES_TAR) +$(LIBMNL_PATH)/.installed: $(LIBMNL_TAR) mkdir -p $(BUILD_PATH) flock -s $<.lock tar -C $(BUILD_PATH) -xf $< - sed -i -e "/nfnetlink=3D[01]/s:=3D[01]:=3D0:" -e "/nfconntrack=3D[01]/s:= =3D[01]:=3D0:" $(IPTABLES_PATH)/configure touch $@ =20 -$(IPTABLES_PATH)/iptables/xtables-legacy-multi: | $(IPTABLES_PATH)/.instal= led $(USERSPACE_DEPS) - cd $(IPTABLES_PATH) && ./configure --prefix=3D/ $(CROSS_COMPILE_FLAG) --e= nable-static --disable-shared --disable-nftables --disable-bpf-compiler --d= isable-nfsynproxy --disable-libipq --disable-connlabel --with-kernel=3D$(BU= ILD_PATH)/include - $(MAKE) -C $(IPTABLES_PATH) +$(LIBMNL_PATH)/libmnl: | $(LIBMNL_PATH)/.installed $(USERSPACE_DEPS) + cd $(LIBMNL_PATH) && ./configure --prefix=3D$(TOOLCHAIN_PATH) $(CROSS_COM= PILE_FLAG) + $(MAKE) -C $(LIBMNL_PATH) install + $(STRIP) -s $(TOOLCHAIN_PATH)/lib/libmnl.so.0 + +$(LIBNFTNL_PATH)/.installed: $(LIBNFTNL_TAR) + mkdir -p $(BUILD_PATH) + flock -s $<.lock tar -C $(BUILD_PATH) -xf $< + touch $@ + +$(LIBNFTNL_PATH)/libnftnl: | $(LIBNFTNL_PATH)/.installed $(USERSPACE_DEPS) + cd $(LIBNFTNL_PATH) && PKG_CONFIG_PATH=3D"$(TOOLCHAIN_PATH)/lib/pkgconfig= " ./configure --prefix=3D$(TOOLCHAIN_PATH) $(CROSS_COMPILE_FLAG) + $(MAKE) -C $(LIBNFTNL_PATH) install + $(STRIP) -s $(TOOLCHAIN_PATH)/lib/libnftnl.so.11 + +$(NFTABLES_PATH)/.installed: $(NFTABLES_TAR) + mkdir -p $(BUILD_PATH) + flock -s $<.lock tar -C $(BUILD_PATH) -xf $< + touch $@ + +$(NFTABLES_PATH)/src/nft: | $(NFTABLES_PATH)/.installed $(USERSPACE_DEPS) + cd $(NFTABLES_PATH) && PKG_CONFIG_PATH=3D"$(TOOLCHAIN_PATH)/lib/pkgconfig= " ./configure --prefix=3D/ $(CROSS_COMPILE_FLAG) --enable-static --disable-= shared --disable-debug --disable-man-doc --with-mini-gmp --without-cli + $(MAKE) -C $(NFTABLES_PATH) PREFIX=3D/ $(STRIP) -s $@ =20 $(NMAP_PATH)/.installed: $(NMAP_TAR) diff --git a/tools/testing/selftests/wireguard/qemu/kernel.config b/tools/t= esting/selftests/wireguard/qemu/kernel.config index f314d3789f17..9930116ecd81 100644 --- a/tools/testing/selftests/wireguard/qemu/kernel.config +++ b/tools/testing/selftests/wireguard/qemu/kernel.config @@ -19,10 +19,9 @@ CONFIG_NETFILTER_XTABLES=3Dy CONFIG_NETFILTER_XT_NAT=3Dy CONFIG_NETFILTER_XT_MATCH_LENGTH=3Dy CONFIG_NETFILTER_XT_MARK=3Dy -CONFIG_IP_NF_IPTABLES=3Dy -CONFIG_IP_NF_FILTER=3Dy -CONFIG_IP_NF_MANGLE=3Dy -CONFIG_IP_NF_NAT=3Dy +CONFIG_NF_TABLES=3Dm +CONFIG_NF_TABLES_INET=3Dy +CONFIG_NFT_NAT=3Dy CONFIG_IP_ADVANCED_ROUTER=3Dy CONFIG_IP_MULTIPLE_TABLES=3Dy CONFIG_IPV6_MULTIPLE_TABLES=3Dy --=20 2.46.0