From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (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 E713B3C8722 for ; Fri, 3 Apr 2026 14:59:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228355; cv=none; b=Hx6RfC/zZyDw/lRQPk/QaB4PWoyBiEHnjCKLHO0MXVXJ627/BOrsnboOS6CSkxYBc4muoVlQ1CfmpVORTSNxCh8G6lbgteg5+HQKcOpqiWKicdR6iWHEWr5nxtYlwQkD0W87mKwZDqBr/RDoPqSc/Iqe1bQ508VHsoJ+LZ+0E4A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228355; c=relaxed/simple; bh=f6HIgkgW0zS+/mWkMw/sxAs0VSARPuwtTbc+sdvuugA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uhZ2YAteXlnaXFuXQhaJ9KHTupoi8IXx6miqRlQjKneeeEB4wAD65arLC/eS41OYwEShjfluzzYOY759UpZixiEXYxwGRFe9UGNpJR/vVn3lzlvZ03w9NnBkQohX67F5x4H9ooV5HiQGl00/qXBhylzXi/nB9mNkC7/C3BIgsms= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=G3fljUvI; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="G3fljUvI" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-486b96760easo22995745e9.2 for ; Fri, 03 Apr 2026 07:59:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228352; x=1775833152; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=G+1wdXb+bRQTa0pyI8/7iwKfOf3F7IiDnmsocIg8xPk=; b=G3fljUvIMqlyHn9SaEl5HRvt0GrcSUg8mOY5/2JF4gIjp9255D03JmOQd29b4d42XT 0EKfff82vEd53wdN4n07DAi9MZ8z7i7TccSwKD84j1HMcXksapXyvvFM8Ous1SwgVYDV FatSHVkhEKYuasjSuklVsOw4jUFjOmP+u3jogzAOr+DqEYVFdbJrI1dQeknLnwQpTGX2 9huWPiR2UP3/dZ2mNl8XEqSMpMBWY4aUNguh0eTD7o2JrHdu6OFnzk0L0IblthR1Ym0k nS8ESWMrTi58zPru4gGOBV16pvthcRQOtiWCg2IEIf/MOxa989KCpj1j/aTqqZ7/B/d7 3Lbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228352; x=1775833152; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=G+1wdXb+bRQTa0pyI8/7iwKfOf3F7IiDnmsocIg8xPk=; b=jCfIpw3eMvpS9I7EDFtNVLveXEZOhROqlfwAvEGDPKM3up7QeLM1K9IMXA052mO53z oVXKunvjBi23mBAmdQJgYP/doTJiQGr1SG9h02gjuSLvK3koRur6BxLCh1slNgZ/1jEG oqfCIlGH0tljf7znY5vIpTIUkGaEg/pY8n1i8vSp2XU7p4uh/+AGtZ4N3Clo60NIdujz N8mhmisdcznztV+6jsHUndBMZ6KvKmtm2Qlu8BVnO2HGQ3QP9fABbEXnt1reMyybcvE5 ujRny0l4ynTb/DmRs3iWg7WLkjkyShq0a3qJjPY+b65L2uq7Zt2DsLFwUqFkkOWjSpcu ntKA== X-Forwarded-Encrypted: i=1; AJvYcCU2RhWTMZl0k4Adou3GMdVPHLaQ+53dAvwdNzH4ZccqJ+vj/GH+7IUPABN+Wh55+yt3x7eltZb1GIC6E4o=@vger.kernel.org X-Gm-Message-State: AOJu0Yz9YYy2vyMdv4wE0ADUhSqkIsSCf4PjpPParpxMpldnliwgg0fD 7iBHdE3yHjmjNL7KZUFE8gjD2oGncnh051CrV600IEIIj/oSECrWkYTInQ6lD4lVbW8= X-Gm-Gg: ATEYQzyG4Bzn49e4FqyWrSoLB1ewzjebJYLF+e0F2cXHhJYc/tECKbLHgbOr2ffS4Y+ 7r6PoX0zK9Zw897o8+F/aspjNyethofeEqmalQfMu8/ouYjNiNveXogCDZpJKIjyHq7WNlg9y21 WqFu3Oc8+cR8fja/c0XOfD7lwEJ5ubHybMt7d2/GjAw5WT3zi1P6UVqopH5Pnk+SH9nlaU0Spxe 58cFFUYGuJy2lXlVoKNuiCHM3pz+Dsr8isGHyMT4jlnHD7N/5Uw9Iel6/33aDck+k3rj2Ixvws+ FpnMFHUq+n0q/WysvwuXbanvyh+pbrk/L62ADQdlFt2IfEd9g1Diec0jEY63WMOkjfIlDaTJwhT wXi95uxYr6ILtiBCWxhbzm4pJianXCP5biadtsKLy6vgfGQFbl4XmoxQG9zXrcvxwRv8+I2+Y6P BepP1vznen X-Received: by 2002:a05:600c:c167:b0:483:9139:4c1d with SMTP id 5b1f17b1804b1-488997810bcmr56269185e9.14.1775228352171; Fri, 03 Apr 2026 07:59:12 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-60582e1d1edsm7553018137.1.2026.04.03.07.59.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:11 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:54 -0300 Subject: [PATCH v2 01/10] selftests/bpf: Fall back to distro build directory for test_kmods Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-1-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1670; i=rbm@suse.com; h=from:subject:message-id; bh=f6HIgkgW0zS+/mWkMw/sxAs0VSARPuwtTbc+sdvuugA=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QOTB/yRzeCjFiieMiNd6HsKGUrnkmjlQqa03nLaUBftbDGnMuhh46RMMM7pNW3UfiOFFyJeSPD+ yb93iZcWxfwI= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g When building against a distribution kernel there may be no in-tree build directory. Prefer explicit O=3D first, then KBUILD_OUTPUT from the environment, then an in-tree source tree if Module.symvers is present, and finally /lib/modules/$(uname -r)/build. Also skip test_kmods all/clean when the selected KDIR does not exist, so selftests clean/install flows do not fail on systems without that host module build directory. Signed-off-by: Ricardo B. Marliere --- tools/testing/selftests/bpf/test_kmods/Makefile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/bpf/test_kmods/Makefile b/tools/testin= g/selftests/bpf/test_kmods/Makefile index 63c4d3f6a12f..a5216815d989 100644 --- a/tools/testing/selftests/bpf/test_kmods/Makefile +++ b/tools/testing/selftests/bpf/test_kmods/Makefile @@ -1,5 +1,6 @@ TEST_KMOD_DIR :=3D $(realpath $(dir $(abspath $(lastword $(MAKEFILE_LIST))= ))) -KDIR ?=3D $(abspath $(TEST_KMOD_DIR)/../../../../..) +SRCTREE_KDIR :=3D $(abspath $(TEST_KMOD_DIR)/../../../../..) +KDIR ?=3D $(if $(O),$(O),$(if $(KBUILD_OUTPUT),$(KBUILD_OUTPUT),$(if $(wil= dcard $(SRCTREE_KDIR)/Module.symvers),$(SRCTREE_KDIR),/lib/modules/$(shell = uname -r)/build))) =20 ifeq ($(V),1) Q =3D @@ -14,8 +15,13 @@ $(foreach m,$(MODULES),$(eval obj-m +=3D $(m:.ko=3D.o))) =20 CFLAGS_bpf_testmod.o =3D -I$(src) =20 +# Ensure KDIR exists, otherwise skip module build and clean. all: +ifneq ("$(wildcard $(KDIR))", "") $(Q)$(MAKE) -C $(KDIR) M=3D$(TEST_KMOD_DIR) modules +endif =20 clean: +ifneq ("$(wildcard $(KDIR))", "") $(Q)$(MAKE) -C $(KDIR) M=3D$(TEST_KMOD_DIR) clean +endif --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (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 6B3E63C945A for ; Fri, 3 Apr 2026 14:59:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228358; cv=none; b=VMRPbHui7ts6iUSMxyibOBbADW1HycyPexxd83suhHZYYZTuUfSIkR9FBLyR3Nv8cdn3gcURgtWQf+xTZsGWJymQ8Q1OQAUJtCC/A+9RyB+/qudut/yhDtXUwd0RbMp16vVlGLwm7lLxgBfrBgL4f6P+tX2gLtduS0oBlDqYPFo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228358; c=relaxed/simple; bh=6womnhNkPVIMC9BJtbyzHpcUSwPDJFVk2MnEcmHSrI4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iTik1M+yM6vNfIsc2u+Qv4dQhz1dQrEyf8ffAQ438gRmx1QasUA3NMtgMDatpuEuprj8mjh75LE26jCLk1aZXhVN2WbSZWRYvFM+T71867l4UsNbfgI9y7wdg43834DOOjLK6yl6zd2p5FDGOc5x+zGIgJFCNpWKhI/Rw9MMV3o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=DMC897k8; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="DMC897k8" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-486ff201041so19507485e9.1 for ; Fri, 03 Apr 2026 07:59:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228356; x=1775833156; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=6BE6rCgLm4ycfO9rARPfewZKzJOvUfIcBPg9sKbASzA=; b=DMC897k8LZIasNvrcsOytlxbwe+3EZjGs1A875eUn/6MQDJiI0RTE9ORvL04OdAVE6 +N+MOLaTuoDj99FYJ98xF//17ivdkxAli5yNzDb4KUdqJEtqo7KiQ2vO4EbzqQwKIL5H 43Zc673deqHPbCsZY98JVUEmY/jqTHGNrh/iOFthrROMbsXyjR0jI2S2o+dEd/tALFnx TJaZSlGdWKpoKArv/pviJ8Wt7U72yLPXQkT/QYrshnVHF/T3pNTodVX4Q4OasSHSFQhs Fm3KHShZskI5+9jwC2K8bQ81Dmk5vH+aUHsEgTwdI03VOGHCv76uDKwiRTJeVTbsMdcM 56HA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228356; x=1775833156; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=6BE6rCgLm4ycfO9rARPfewZKzJOvUfIcBPg9sKbASzA=; b=HycyXLVS+9wpPX9rwOeWE9dNsLQSo6wffw1tJSLH28QT/qzEyECh4fDz8MbIjN3HtN /I+Z/TC0E5TA6D1DEU8LWoNWTHMo2TTu1+kMFv+2Ofa5zCnMTGj+tVTgndV/ZJZ8zPMc AM3WkUvr8mDEBT/4nbhq7lCwkkEc0iMT1vJorwjuxbd+d4pwGFRtbcIij3NQFM0SRDxM Xlcp4l5OF1m1oGzCOBgN2Qb3V90/87QUV1JYzoqcYc0tMrGBA/s5GyyeKSJ3FJwb3bBZ 5nEmZK/d1TftulVE5buLKD+VRj7bWUBR8XNd1e037V7a4EBYe+zC0qGOHqNvDjsdX1QU nPRA== X-Forwarded-Encrypted: i=1; AJvYcCW2R5CtYn7iBXWm1qqd1lu39mK+82yktVvApzZ/0ywed9biRGN/vR0iad80zimSg9q5Ivf+jUmXt/hTEGk=@vger.kernel.org X-Gm-Message-State: AOJu0YwnMRQaagEeEjOoOhvrZpi2cCnVafhL5Y4+EkdxMPdYCcoshnmv SZKWcrWrz7jjkelXQnH5bRS7zTH12aEpXFPGies036GUARP4SmPJudtAIOK6inGr+aU= X-Gm-Gg: ATEYQzyifG9hAxY0HY+j/TE9dNLMWoDfp1aEX6FMhTCtTrMWUUDnCT8UbOCK2Fx1S2E IzCt3kB7jsGR6j46V9JabVmAAtxrZk4QzEEgok+7NTp37zfNOZix7gkeFv+zLOAn6RQb+7MFcPs lsqph1gbZm+ukir3c4OF+5Mn7yd0LeV7K77Ds2rilTRSEup8WrQBGb84IoVXLy/5TQ0WsnNMkiz UTyVgIGNDGTOugBeYd1QCLH0LCwwo/mFhOWagwvWuatey4zjb7v5T3DxcxzT/VeYhxym21j5tOC zbUgQedM6SdSGJIcDhL+PgsC+HIpYmeY87DGbuoNKF225j9qiQSLZf9b4QL6nMj/4x52VF+tsuN yTkeJMwJRRSLcKwVcQ+C88YNHg/JehO6ro7gWMBYAYF2R31H5sO9drU9MfHvOWDznX4YVRAvJYz L1yUBBI8iiLwt7WHKMIOk= X-Received: by 2002:a05:600c:3b23:b0:485:17a7:b9c7 with SMTP id 5b1f17b1804b1-488996ecd50mr49474765e9.10.1775228355687; Fri, 03 Apr 2026 07:59:15 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9bae1117sm7076592e0c.7.2026.04.03.07.59.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:14 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:55 -0300 Subject: [PATCH v2 02/10] selftests/bpf: Tolerate BPF and skeleton generation failures Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-2-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=6534; i=rbm@suse.com; h=from:subject:message-id; bh=6womnhNkPVIMC9BJtbyzHpcUSwPDJFVk2MnEcmHSrI4=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QA7ppl++NinTXsLUpfuCBDtAXqZB4gw73Ar4l/wC46UhDNotof5yGorlVy2s//UHT2uQCoR/rIe Z5oq7Tp4+tQw= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g Some BPF programs cannot be built on distro kernels because required BTF types or features are missing. A single failure currently aborts the selftests/bpf build. Make BPF object and skeleton generation best effort: emit SKIP-BPF or SKIP-SKEL, remove failed outputs so downstream rules can detect absence, and continue with remaining tests. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/Makefile | 77 ++++++++++++++++++++++++--------= ---- 1 file changed, 51 insertions(+), 26 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index f75c4f52c028..6052bba2c157 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -470,22 +470,26 @@ $(OUTPUT)/cgroup_getset_retval_hooks.o: cgroup_getset= _retval_hooks.h # $4 - binary name define CLANG_BPF_BUILD_RULE $(call msg,CLNG-BPF,$4,$2) - $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv3 -o $2 + $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv3 -o $2 || \ + ($(RM) $2; printf ' %-12s %s\n' 'SKIP-BPF' '$(notdir $2)' 1>&2) endef # Similar to CLANG_BPF_BUILD_RULE, but with disabled alu32 define CLANG_NOALU32_BPF_BUILD_RULE $(call msg,CLNG-BPF,$4,$2) - $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv2 -o $2 + $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv2 -o $2 || \ + ($(RM) $2; printf ' %-12s %s\n' 'SKIP-BPF' '$(notdir $2)' 1>&2) endef # Similar to CLANG_BPF_BUILD_RULE, but with cpu-v4 define CLANG_CPUV4_BPF_BUILD_RULE $(call msg,CLNG-BPF,$4,$2) - $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv4 -o $2 + $(Q)$(CLANG) $3 -O2 $(BPF_TARGET_ENDIAN) -c $1 -mcpu=3Dv4 -o $2 || \ + ($(RM) $2; printf ' %-12s %s\n' 'SKIP-BPF' '$(notdir $2)' 1>&2) endef # Build BPF object using GCC define GCC_BPF_BUILD_RULE $(call msg,GCC-BPF,$4,$2) - $(Q)$(BPF_GCC) $3 -DBPF_NO_PRESERVE_ACCESS_INDEX -Wno-attributes -O2 -c $= 1 -o $2 + $(Q)$(BPF_GCC) $3 -DBPF_NO_PRESERVE_ACCESS_INDEX -Wno-attributes -O2 -c $= 1 -o $2 || \ + ($(RM) $2; printf ' %-12s %s\n' 'SKIP-BPF' '$(notdir $2)' 1>&2) endef =20 SKEL_BLACKLIST :=3D btf__% test_pinning_invalid.c test_sk_assign.c @@ -591,32 +595,53 @@ $(TRUNNER_BPF_OBJS): $(TRUNNER_OUTPUT)/%.bpf.o: \ $$($$<-$2-CFLAGS),$(TRUNNER_BINARY)) =20 $(TRUNNER_BPF_SKELS): %.skel.h: %.bpf.o $(BPFTOOL) | $(TRUNNER_OUTPUT) - $$(call msg,GEN-SKEL,$(TRUNNER_BINARY),$$@) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.linked1.o) $$< - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked1.o) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.linked3.o) $$(<:.o=3D.linked2.o) - $(Q)diff $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked3.o) - $(Q)$$(BPFTOOL) gen skeleton $$(<:.o=3D.linked3.o) name $$(notdir $$(<:.b= pf.o=3D)) > $$@ - $(Q)$$(BPFTOOL) gen subskeleton $$(<:.o=3D.linked3.o) name $$(notdir $$(<= :.bpf.o=3D)) > $$(@:.skel.h=3D.subskel.h) - $(Q)rm -f $$(<:.o=3D.linked1.o) $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked3.= o) + $(Q)if [ ! -f $$< ]; then \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + exit 0; \ + fi; \ + printf ' %-12s %s\n' 'GEN-SKEL' '[$(TRUNNER_BINARY)] $$(notdir $$@)' 1>&= 2; \ + $$(BPFTOOL) gen object $$(<:.o=3D.linked1.o) $$< && \ + $$(BPFTOOL) gen object $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked1.o) && \ + $$(BPFTOOL) gen object $$(<:.o=3D.linked3.o) $$(<:.o=3D.linked2.o) && \ + diff $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked3.o) && \ + $$(BPFTOOL) gen skeleton $$(<:.o=3D.linked3.o) name $$(notdir $$(<:.bpf.o= =3D)) > $$@ && \ + $$(BPFTOOL) gen subskeleton $$(<:.o=3D.linked3.o) name $$(notdir $$(<:.bp= f.o=3D)) > $$(@:.skel.h=3D.subskel.h) || { \ + $$(RM) $$@ $$(@:.skel.h=3D.subskel.h); \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + }; \ + rm -f $$(<:.o=3D.linked1.o) $$(<:.o=3D.linked2.o) $$(<:.o=3D.linked3.o) =20 $(TRUNNER_BPF_LSKELS): %.lskel.h: %.bpf.o $(BPFTOOL) | $(TRUNNER_OUTPUT) - $$(call msg,GEN-SKEL,$(TRUNNER_BINARY),$$@) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked1.o) $$< - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked1.o) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked3.o) $$(<:.o=3D.llinked2.o) - $(Q)diff $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) - $(Q)$$(BPFTOOL) gen skeleton -L $$(<:.o=3D.llinked3.o) name $$(notdir $$(= <:.bpf.o=3D_lskel)) > $$@ - $(Q)rm -f $$(<:.o=3D.llinked1.o) $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinke= d3.o) + $(Q)if [ ! -f $$< ]; then \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + exit 0; \ + fi; \ + printf ' %-12s %s\n' 'GEN-SKEL' '[$(TRUNNER_BINARY)] $$(notdir $$@)' 1>&= 2; \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked1.o) $$< && \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked1.o) && \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked3.o) $$(<:.o=3D.llinked2.o) && \ + diff $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) && \ + $$(BPFTOOL) gen skeleton -L $$(<:.o=3D.llinked3.o) name $$(notdir $$(<:.b= pf.o=3D_lskel)) > $$@ || { \ + $$(RM) $$@; \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + }; \ + rm -f $$(<:.o=3D.llinked1.o) $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) =20 $(TRUNNER_BPF_LSKELS_SIGNED): %.lskel.h: %.bpf.o $(BPFTOOL) | $(TRUNNER_OU= TPUT) - $$(call msg,GEN-SKEL,$(TRUNNER_BINARY) (signed),$$@) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked1.o) $$< - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked1.o) - $(Q)$$(BPFTOOL) gen object $$(<:.o=3D.llinked3.o) $$(<:.o=3D.llinked2.o) - $(Q)diff $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) - $(Q)$$(BPFTOOL) gen skeleton $(LSKEL_SIGN) $$(<:.o=3D.llinked3.o) name $$= (notdir $$(<:.bpf.o=3D_lskel)) > $$@ - $(Q)rm -f $$(<:.o=3D.llinked1.o) $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinke= d3.o) + $(Q)if [ ! -f $$< ]; then \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + exit 0; \ + fi; \ + printf ' %-12s %s\n' 'GEN-SKEL' '[$(TRUNNER_BINARY) (signed)] $$(notdir = $$@)' 1>&2; \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked1.o) $$< && \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked1.o) && \ + $$(BPFTOOL) gen object $$(<:.o=3D.llinked3.o) $$(<:.o=3D.llinked2.o) && \ + diff $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) && \ + $$(BPFTOOL) gen skeleton $(LSKEL_SIGN) $$(<:.o=3D.llinked3.o) name $$(not= dir $$(<:.bpf.o=3D_lskel)) > $$@ || { \ + $$(RM) $$@; \ + printf ' %-12s %s\n' 'SKIP-SKEL' '$$(notdir $$@)' 1>&2; \ + }; \ + rm -f $$(<:.o=3D.llinked1.o) $$(<:.o=3D.llinked2.o) $$(<:.o=3D.llinked3.o) =20 $(LINKED_BPF_OBJS): %: $(TRUNNER_OUTPUT)/% =20 --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (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 CE8EF3C9EEC for ; Fri, 3 Apr 2026 14:59:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228362; cv=none; b=agPq6+m5D28jRfD3PYRvqfnYNzuvh7OQ54D/zTIWXGLydlL8bJFrylgJ5v0ln98zSKG9GkbabXdqRLfi6xWGUUANBs+E0Kmr7FWRsypDfbBiYQ3WRjaPz7DWXecET0IgfRwANopuLDtWIhdaPhGHQXRWIKDOvykmMgqvqw7FV6g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228362; c=relaxed/simple; bh=aUpES7Gc9kEPXxJ8Aaeynu09heHY8n8dzJ+eSENcNh4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kW5cSVyD3+t/F5pxtBQtocJop262HrnudjxYkVXuQ8WQO1/0xYqrE62wDtQgkAd/Yd8Vxp0IFsI9vpzVf54ukDiOSL2PwAAZZRvgaCyvd8nlv5tpTuyt2BbjfqiOyj5lyTl/1p4ONnz5HPrs22vpon+gCcqsJleez6hP5wlqjzo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=AFYtEEG2; arc=none smtp.client-ip=209.85.128.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="AFYtEEG2" Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-48897fd88ebso7954585e9.2 for ; Fri, 03 Apr 2026 07:59:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228359; x=1775833159; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=FH31e8AWCzEljZIdx40WqHOE1eMjOl08QVJ0UOLH5y0=; b=AFYtEEG2RfJGSx0VPjkQaorC/EI5ttHdUBd2HdU5Rq9+BsefoJwentJVYQgA/dlNLd GqWbskDcn8vz/gN40ovaGG8MWXO7XehVC5migT9/V9oOBsHeJtBEN7hjQIAwUqOH6J0L bx8Jlfzg58BU6YHvecteLZWpnDsgbx5baawVUVLS7ofXDM7p/VUh4TCwtaanKh+flCvp G2OHNMxTnuINv57jqL0X4cbg1VAVLKSG/lTamaxJEYYZ2BMpdmbtp9+8zivPD8q0J7Ie SI2iuLbG28zbuUwIWRvk6AXqpLILFJ1RLaTKO6hw0kmTHwDCt+L0e28LPquLJxu8qe+b VUHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228359; x=1775833159; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=FH31e8AWCzEljZIdx40WqHOE1eMjOl08QVJ0UOLH5y0=; b=s0CD4ctLTfH+0STOzZp4HOUB0eW2nHf42Ygffl2ojTyT4qECxYt0oWATOYBAoLCpgI 8TWRyMm2X6pPBn70ZXQ0rL9o6xkl6dy4488gF0xljU5HDX6vFp0dW+7060ajLP6pvF0+ 15kzsWwD0UiT3Soh4wokIqG7ZI+dQNPoxcumZ9RMUtN1tx9UhunsVRWsUEsXXrmDy8TP hQt3ySzgRzDYM3TqqTwNbqAk6C1ccG5l47JDiv8TiTTm4YVNf2iZPadVd8lqSfiTtdrz u9F+ewxyFxICwSAI/T72eOdW38gMtT+bZ1qdXDLCcxYwLXqfYiaYI+pLpERUiXUax6IU PD8Q== X-Forwarded-Encrypted: i=1; AJvYcCUip9lq2toEpwI+9OqQTYY5vm/vNl118KLt8N02SEEwKBR9jqGGpvqFeMgLj61WpG7UN9HKjUpCacXhf58=@vger.kernel.org X-Gm-Message-State: AOJu0Yzh1U7vtGEE66gRQ8N18c+Fcd3aWLLg9HsZUA8chflUHuhZmALO YZ4YXW8WuObhsRj+5fThbWZsCm4KTlvnTsOG8WqmuJgD1eKjmL/4YQCR7bkPMjm8JXk= X-Gm-Gg: ATEYQzzw+SwDzoPtA+rNupU0sJmocxKFIRKfNZDThZqFGGcQMrq4fw9rhH0wwy0vbUa +NI+EHq90sb3QXdHwmgSA2/g1LP1B71FmG/YUKNNVujB+uMQ+OFqQExW+ZVR9kwKcMWawLc6AIu gC80DhmggytMXGRdS1SLVwYIgGgia7/RuBuYFsgkVBaxMCqNcvi7m8ez+KCHyeAiDgNA44taKN0 txX57x6SOFp+1xzAzq/V+d/56KCfvAk0HAL76kVCBmoyNBzxDgAAxK4db2+J0gsdYOz7a0Enig8 RJM7HD0+JaY0g39QUW9u6UJSPdUnDPHyDOcxLglDIKbY/X/o3T1ChM8B+2mFb6anZqlZAoJMg2k vr/d7GTBy2fy7824zAH0opyaruz6MQYoUtfOkZab1FFoOiL+3slF/+zidzizPgs2pFQWQPEwgDJ G812Cj5pXf X-Received: by 2002:a05:600d:8449:b0:487:1fbf:e0a1 with SMTP id 5b1f17b1804b1-488996a1e01mr40470055e9.4.1775228359261; Fri, 03 Apr 2026 07:59:19 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9b8d22b4sm7057743e0c.0.2026.04.03.07.59.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:18 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:56 -0300 Subject: [PATCH v2 03/10] selftests/bpf: Avoid rebuilds when running emit_tests Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-3-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1031; i=rbm@suse.com; h=from:subject:message-id; bh=aUpES7Gc9kEPXxJ8Aaeynu09heHY8n8dzJ+eSENcNh4=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QHm0vdr2N5i6HZ4gffnwvQbcf2SfTzaga49ypwgLvh9I+uo+pRH9t5bZhXy6KgdapZF0ZhDvChf zV+dxXyN2Vwo= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g emit_tests is used while installing selftests to generate the kselftest list. Pulling in .d files for this goal can trigger BPF rebuild rules and mix build output into list generation. Skip dependency file inclusion for emit_tests, like clean goals, so list generation stays side-effect free. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index 6052bba2c157..781238152c4f 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -703,7 +703,7 @@ $(TRUNNER_TEST_OBJS:.o=3D.d): $(TRUNNER_OUTPUT)/%.test.= d: \ $(TRUNNER_BPF_SKELS_LINKED) \ $$(BPFOBJ) | $(TRUNNER_OUTPUT) =20 -ifeq ($(filter clean docs-clean,$(MAKECMDGOALS)),) +ifeq ($(filter clean docs-clean emit_tests,$(MAKECMDGOALS)),) include $(wildcard $(TRUNNER_TEST_OBJS:.o=3D.d)) endif =20 --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 5C9563CA49A for ; Fri, 3 Apr 2026 14:59:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228365; cv=none; b=hGVBhoWn1Y3R9oXT47ry8MiznTybO+PtVza0t2o/lAw9Fmx6B4QtdVrPInF23FDEYfNQ7o1N1e3ZJ97vvZ6dnEayDN/JLZ9ssG7/mizOpkUQbEhIqaPn6gJ1CTU5neU1HviQCJ2nAQVSow2sMseIuVwo+9ncL5Cw8QDGATdvT2M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228365; c=relaxed/simple; bh=t1nbxFGOvUrbFlO+YSDPWdSnERxYyVW/+LqxXuvUGIA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=l8/QvaunwBWYnuVeYVNodcxnKeqvf43BQSSu/tG5Fb52736j9fmbMhYk9ZDwcpYLCesCt9N8k7k6UhM4JQTDcq469P3xhHd6jBbFfh5kxg8gJywUzNBtaP0nOK68wdYz58t2hdokK+RMi/wMzjcMFwkdgFM6T7sVWhlUyWIylI4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=PrXIICPU; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="PrXIICPU" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-4888375f735so17043995e9.3 for ; Fri, 03 Apr 2026 07:59:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228363; x=1775833163; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Fm04HqKISVuTOG2rwmdLIpXmgY4fspT7kbSOfzz2OgA=; b=PrXIICPUbdD5ckxrosQS5Pt+g6Ioivpdm1ua1yEz4D82bJ0M66uxzvK+UIr3eecGAj M7BbCE89M3ult5Ba6gKXWGz5PE1TSZaVdXLV3VghqljjoJEOyYDIfRBWIhwTJU8hFoN8 HyI8B6DWuIkIxj01FKEVUdQL1yWYhhbACgV3Fzhm4I3Xp1d+H3r0O80AO7MzuutAMHdU WL/mCTNKenuW9SEB6QQQJv4H2FlGN1kYcmDCn4STB4B1VB0VZMgt1bmmEaUrgxK95m4q BhOKBVk1ypRVHpKLOupf8wwhd1XuJgxyNTRSYM2zdLKcw5batBnyMKJA4pExwz0AlZjn 1sOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228363; x=1775833163; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=Fm04HqKISVuTOG2rwmdLIpXmgY4fspT7kbSOfzz2OgA=; b=sfT/sXaOBGCoY+e+KZpTVAPFofEi31rLtNBFFfiD84z1dPRIkplR2xLrZxOwaSncGM 5kcmYzijjQI0CG0yMh0iC7HmCiE5Ip10NzMXzI/aBTgiwI4/Okh/Bi3BnvDqhU1Saw6g vBW0lbq8CKCoHXWpvucy9Wz/VPO7phDUJDPOGUoEInKboaNiw0tgUdRqh+8V2BczLTar V/rjV73kwKX/R6uVydg04gDTI2RDCJArtSSxFtAKJmixCb21Pz6d+mfN7XUFBy03KK/C dkY2jfSGhJw8RQU4R7JHKGn/rXQaZpMi6Yn+IoUpfcgmFS0c+I6e1wR7qe2abvQURgUM c2+w== X-Forwarded-Encrypted: i=1; AJvYcCULIhcC1SUVsfQj1K5NxiPYKRSOIBHwh5zfnuVGwNou08qYMU6VdWkz2UpMv/d0JxJeI1YeMV2zhhIn0q4=@vger.kernel.org X-Gm-Message-State: AOJu0YxwXi9H5Sc5H+h2by/xDSsUjT1qVOGL1aVSmz2ipPlT7aRTaNid fh6DjtdOeb2scKzwHh2B/kUOfPaNE5KIX+UA+DQm+RsHszSG9phzqxhsX5HRUye2P7U= X-Gm-Gg: ATEYQzziy71skHRjo/04wiBtbURDvAzzdoFCAGdLWadE3VwHH8R5F6NMzb21JTO6m3b P+8gXQc4IGZdAUP83lxxUMYUP3/KNfcn1x5bK/iZo2+oUmKfVSHihsTn5Jxwy7C9CjP2e7eySNl fjO5BjwP1ZmGmArcyvbQYgnY3omzIfR0QVcNsu0+jd3sdnaMV97TSc/CR2+qX2wo2BpsCm6JZjS qdsKkB18xxJW0U03Ci23uPRoLbTbtmp2zaKFOvdl4DwlvmlFD3mhH3hlBdvsbNjZ97r16NIlNya xO44iU1o0LDUE2Tmyo/wQbGgn6pBLgrPmDeybDI1TfW+txT88N4BzO2qqq4OlXWECEQiA/BsxY5 iTStuycFEULZp+P2dTPOIKQdYJCz2Kn+ysi6m48kwunfS9VkjbC9x6ojBAnaTli3kAJCVI7ens0 wgfv7SNsQ3 X-Received: by 2002:a05:600c:630a:b0:485:2fe9:336f with SMTP id 5b1f17b1804b1-488998e3cbemr52789415e9.30.1775228362756; Fri, 03 Apr 2026 07:59:22 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9baff553sm6958583e0c.8.2026.04.03.07.59.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:22 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:57 -0300 Subject: [PATCH v2 04/10] selftests/bpf: Make skeleton headers order-only prerequisites of .test.d Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-4-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1609; i=rbm@suse.com; h=from:subject:message-id; bh=t1nbxFGOvUrbFlO+YSDPWdSnERxYyVW/+LqxXuvUGIA=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QBwL4B70EWSZDKx9NQHTd0axQjesmwmJMuHscAgUJcomCeJbZwqZe3rAtU4U6qHJtlEnvTUEAN0 Rdl054LosNQs= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g The .test.d dependency files are generated by the C preprocessor and list the headers each test file actually #includes. Skeleton headers appear in those generated lists, so the .test.o -> .skel.h dependency is already tracked by the .d file content. Making skeletons order-only prerequisites of .test.d means that a missing or skipped skeleton does not prevent .test.d generation, and regenerating a skeleton does not force .test.d to be recreated. This avoids unnecessary recompilation and, more importantly, avoids build errors when a skeleton was intentionally skipped due to a BPF compilation failure. Signed-off-by: Ricardo B. Marliere --- tools/testing/selftests/bpf/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index 781238152c4f..72f576a8236a 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -697,11 +697,11 @@ $(TRUNNER_TEST_OBJS): $(TRUNNER_OUTPUT)/%.test.o: \ $(TRUNNER_TEST_OBJS:.o=3D.d): $(TRUNNER_OUTPUT)/%.test.d: \ $(TRUNNER_TESTS_DIR)/%.c \ $(TRUNNER_EXTRA_HDRS) \ + $$(BPFOBJ) | $(TRUNNER_OUTPUT) \ $(TRUNNER_BPF_SKELS) \ $(TRUNNER_BPF_LSKELS) \ $(TRUNNER_BPF_LSKELS_SIGNED) \ - $(TRUNNER_BPF_SKELS_LINKED) \ - $$(BPFOBJ) | $(TRUNNER_OUTPUT) + $(TRUNNER_BPF_SKELS_LINKED) =20 ifeq ($(filter clean docs-clean emit_tests,$(MAKECMDGOALS)),) include $(wildcard $(TRUNNER_TEST_OBJS:.o=3D.d)) --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (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 D7A483CAE73 for ; Fri, 3 Apr 2026 14:59:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228369; cv=none; b=sFuufO9nPxoDjbRZFNIQs8Hde42H+9Ttw7vf16SR6Jt4IqX9NmbTR2b27B3szMGZmJ7GMMPETu6ZOQ7PTtVS7vGjXJMnPaObh01KZA/++XFR3hMoGhDTi8qLUPay0JuPpgYUMCpNoWVCg37tpn3iVZ5GpmHoe+CWHQwpHLjOdk4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228369; c=relaxed/simple; bh=r0hAi+8/1aDh2iFsHnAbZTWuQDE4t7kIxRdOWHyRr+Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=FBHBoaQ2/0OSW2v0Xhd23u5sP1s1KCppZA52FOjTKhWgyp/BpW63i/1d7rt2xTUqYV24hpNawHgSZRiDKATAVU34H2BJOeA3ml+Q6a2XLyimaInztLaiWzswXQ1vbBLJUmIBU+wKImUH4VMSQ9nc7NL4yazlwNkArJRuhfvBPYQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=dZ6sHxUx; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="dZ6sHxUx" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-482f454be5bso33160545e9.0 for ; Fri, 03 Apr 2026 07:59:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228366; x=1775833166; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=OYgqj1zgQSxXbMWVjaEA9XAG2XEf6AIEbv/nbSFPah4=; b=dZ6sHxUxwXrbQYXHbCPJoG7Uei640udMjSCid5tmn82H857CKaARz/ipL/+iQ/vcYf 0SmioO8fGc5T+ewRnprsjVSwpyPwvBFfmK0gQ7YO8yFHoxiA2AQrtCmfWSrV/DsZuCei DKDxWOXj2wvwgEkyEZmrprEQbOwKydCpP3Z42iLQw2T+DJd2G+saR0lhU6xBb3+2Ih6l VeBGffmxWdtJpUMB7sx6u+cg7JcFKEucd69EpyCJ5VZiImj+VRqouEfIDdqa1ZsRO8xH Ve/qD+3aigIghJIak5EFLihrXhvWiIhahDg3uyDxBw0PNwoZeEj5T/j/86P0jJvjwfjE NWZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228366; x=1775833166; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=OYgqj1zgQSxXbMWVjaEA9XAG2XEf6AIEbv/nbSFPah4=; b=o4lB2djMuh4KqpjYyoB29Hs1+3tyVErclmYesBjPMa1/5UanmQnBg1JNinLZM94s/P SF4FCx35jc14CBZpjnECDOgpuzT9wC7sbyPvRNKBpOxwsqKVGsXw3ZTX1A+Mk9IUTQNT d+Arz2ivbekYMAYbtZthXRowHoYYqkRQTW/k4/9cQ2GnAutHxRYYSI/cw/Tyay0+jukn uenl0YzgsK5iiatej6KHh4fd6gCorYHa9ZZen5EWtFVq7CNw4rpu7mpKT0RqurBnUPmV 3UVEC2S4t+x5HjIT1Acw9G57Twjh1gZf+VtzWtfwogQ21Thy3ZX3LZco4cxGNcCLqGJu hRaA== X-Forwarded-Encrypted: i=1; AJvYcCWPiT7ysAFNtq2pYCqCSjBiOpEWKhvd7W39FdBzvj0RZ5+WuS51eEO+23+LU608XVe0zhHkofndxwNVGV4=@vger.kernel.org X-Gm-Message-State: AOJu0YxdHZ7zpzTejyF3piOQ8jWc1O01XN118d96oP5euqQ3StMygXs3 43e+tyqCST+hQ2mX81qLgXsL8LoU8E1cKdKustKXGCMPB25UCBfvxvwnLii+atcXQd8= X-Gm-Gg: ATEYQzzBtTwUS23/ufK54iwkRqPBXrWWDd5PzTmCbD4s86JbiTQBdGP4AIWZ7gqnaQx yNKX6Gjpy/buIwvoLRtlRAfrdTcu9a7SSDUGAYrhcYmSusJWgfPnu2Vr14VLs8S4exyirCDwppG jXcauqm9WPsDdgrmoG3FxPEi9lcRVlRKj+lJ9dHBpcPK9wkxajXtP3h5rup1B7D59w5Fyx0nqqF HsRnkt5F/aWEH67cCBo5tqv6/tdJrrnFrRmhV4lB58lqtDW6KhAVCzJrzmmh6mdJiZAs3Qx3RsY 2bDVt65VRDLhriKFyMOE252sXnJ7Av3uDQsA7f3Fc2R933lDG/KBFkqaZ/56GnQi1x/M/K+yWZv ZTgDOavweps6sozhfrMRb9JEQRrxIrc82y4IEYaChUxknLwO7OyK8I/9sggdGSRDCdH5Sfwnhm8 nIwBnlLuXV X-Received: by 2002:a05:600c:63d7:b0:483:6fe3:bb49 with SMTP id 5b1f17b1804b1-4888df61f12mr83736555e9.0.1775228366187; Fri, 03 Apr 2026 07:59:26 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-60582e1cc7dsm7452360137.2.2026.04.03.07.59.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:25 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:58 -0300 Subject: [PATCH v2 05/10] selftests/bpf: Tolerate test file compilation failures Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-5-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1733; i=rbm@suse.com; h=from:subject:message-id; bh=r0hAi+8/1aDh2iFsHnAbZTWuQDE4t7kIxRdOWHyRr+Y=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QHSmdYX2XXWlMXfc0aJJn6g9w1iqwLslrc2d73uxWf06LSA98AtmDYLZCdLQf748TjJDLfJfvWk GRJtZN4CeawI= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g Individual test files may fail to compile when headers or kernel features required by that test are absent. Currently this aborts the entire build. Make the per-test compilation non-fatal: remove the output object on failure and print a SKIP-TEST marker to stderr. Guard the BTFIDS post-processing step so it is skipped when the object file is absent. The linker step will later ignore absent objects, allowing the remaining tests to build and run. Signed-off-by: Ricardo B. Marliere --- tools/testing/selftests/bpf/Makefile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index 72f576a8236a..6a3835a58f87 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -688,11 +688,14 @@ $(TRUNNER_TEST_OBJS): $(TRUNNER_OUTPUT)/%.test.o: \ $(TRUNNER_TESTS_DIR)/%.c \ | $(TRUNNER_OUTPUT)/%.test.d $$(call msg,TEST-OBJ,$(TRUNNER_BINARY),$$@) - $(Q)cd $$(@D) && $$(CC) -I. $$(CFLAGS) -MMD -MT $$@ -c $(CURDIR)/$$< $$(L= DLIBS) -o $$(@F) + $(Q)cd $$(@D) && $$(CC) -I. $$(CFLAGS) -MMD -MT $$@ -c $(CURDIR)/$$< $$(L= DLIBS) -o $$(@F) || \ + ($(RM) $$(@F); printf ' %-12s %s\n' 'SKIP-TEST' '$$(notdir $$@)' 1>&2) $$(if $$(TEST_NEEDS_BTFIDS), \ + if [ -f $$@ ]; then \ $$(call msg,BTFIDS,$(TRUNNER_BINARY),$$@) \ $(RESOLVE_BTFIDS) --btf $(TRUNNER_OUTPUT)/btf_data.bpf.o $$@; \ - $(RESOLVE_BTFIDS) --patch_btfids $$@.BTF_ids $$@) + $(RESOLVE_BTFIDS) --patch_btfids $$@.BTF_ids $$@; \ + fi) =20 $(TRUNNER_TEST_OBJS:.o=3D.d): $(TRUNNER_OUTPUT)/%.test.d: \ $(TRUNNER_TESTS_DIR)/%.c \ --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (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 3D21C3C9432 for ; Fri, 3 Apr 2026 14:59:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228372; cv=none; b=DkvoKLy3vY8qGBAvFjvzBVGNGcS4Wp9k6b3+HTG2AmdPoKPXJEKDzUqo14K1hwMrGbaJSJqY64AunNc5KUG8GEewke7Ct+2MJ0viTnY4ZQ+2xe3qOW7wn7/R2bc+kJbD6dNgBCBdbqNysJGETR1zPHWJrlP3P/LJvNR2IMi/zqE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228372; c=relaxed/simple; bh=E+XHZs2fGVQU4RACjdHGDrGQXdRXwI+e4g/Lo1v6q2Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kMpwhp+GLEmI352Hei6Z7a0swufOzCruJXTsG1dWz5bK62nlLSjpoCNhe0kMGCLOnJ32Z9Nt1c5A+yBDXO6rpDPaFuDkZ83xKyJ8weYzdQOZdEcltGjmKqit28oLO/vYHaq9IwfFfO0hGb0H0yN7AMGVWZ9VXmiw1nqnc2fKcug= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=V/hkhn+3; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="V/hkhn+3" Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-4853c1ca73aso20033975e9.2 for ; Fri, 03 Apr 2026 07:59:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228370; x=1775833170; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=XsFRXjs2Dc1/g84L0Y+9YTTSj518lfxy7T1haEQdAvc=; b=V/hkhn+38S7ulyX7kBLhltB+fFgUucIYni4Lt2jTlTLYSSz3mRVNLSOVN2WuKN8LXK 8VnGgFBEngMA7oYAzoGvTae5WaNNYy3J6O4v+005AqjEiKMKQ3uq1OwOgZ8EowGBsXrk e5aY1LMl3JrxmpSrD6UFTuOwR/vtsRd2PlXgZ5CfpF5e+MTTmdS/R84fDqVc+ZqX25oL ySq+pcaHJE98nRngemPeEnWQRcp7hYUuqoWQWu+EoXVnB3HMYnbXYaPX55DlSUnLM2sI qOhBS1U69jMPwu+G9IZNwy0NaDijOsIUdMNEaoah3xXX7e4Q0PgHb3i6oyHhai17nOB2 gmGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228370; x=1775833170; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=XsFRXjs2Dc1/g84L0Y+9YTTSj518lfxy7T1haEQdAvc=; b=PKc1Ap3AK6XZB6uMWnxNEZywm71Antiu+fwuQRYDTUC0/R8eFGoUEOllaM/yEuns8Y T9UR2YIJQL5sBCebKm3YuD/TnRqNyQEQU1TJzkY/DDNrDIoL87yLxY6R7t3W8mnfjFQi QBXZDC4GLR3N+keetqODrTgO7FBx4rVppwKia9ydG7lQSH2+TvYBqxkSGbB9/GfU03iI iynK2f1Y+budrSMtYhpM2+2q+hppHn8zVY+xD+T+jCizTmX/Ui6Mf+awNb38Cg1YW9IV LTgyrnGrYrsiAK65YQFi+M0lpPexZayqbW8O+95mdqrWWmABQJ9N0hrHrNnxCXNZ/OdM FYAg== X-Forwarded-Encrypted: i=1; AJvYcCWP73i4b816PxWzAHK5hgntdELx39M2fenzCpqc3ILmu9l+1jBTKfyOtqdksRSsvkqRkjC5qEQpHTwAIgM=@vger.kernel.org X-Gm-Message-State: AOJu0YwKuINQv0VvUOT1R07wAoAWQCZAk+YID0libofmqMF2Z/edIbGw JoqmgVdKjdNyXvTcQ67Dx9Pf7jjt7V1ibosZLvB3hO4OZ04OhjaYf5UdrzfA/+QJ7us= X-Gm-Gg: ATEYQzxElMTpaSKHxSUim8qVz9HMwtU3qq1jj5euROcp5nnOvO5D/Wp13RtBXqAw1ox XLdLCiOv9zTRG49g1tX0UHhzE8blUshL7/tbjZH1Pa+mfhDffEWQPfiVymN3GFsJ1R6SQ4UoiY3 h8fueZf7aF87BXYuP0cR8OSW2iBPAQ/LrBSlAq4XhnHV3/AaBCqY3rWNr4muzrblxPbswx/WemZ 6vzTmocN7kI61bem2SgHUpFOMCMZ/eN4DJlPSjpbqlsA+IBZCWg0kF9a6jcoMdzNVzQvNH9Pnz6 6JBQJWGCpjL+5Rsunx4v7jSpIV0VVc8fATexu3tuuMfT3EK2OuoZah3PdND6/4x7thnNCTsBsCg 4anQ685wK4enz9mCcj14DUcOuf7pt6dMvEu0To6/IIndH02LZmNwa5Vp9spv2inXcFG1jFeoiyl M1kaQkOAEQ X-Received: by 2002:a05:600c:8b75:b0:486:f634:ef1 with SMTP id 5b1f17b1804b1-4889978c516mr54726925e9.17.1775228369627; Fri, 03 Apr 2026 07:59:29 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id a1e0cc1a2514c-953fb4fb62esm6284487241.0.2026.04.03.07.59.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:28 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:58:59 -0300 Subject: [PATCH v2 06/10] selftests/bpf: Allow test_progs to link with a partial object set Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-6-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1805; i=rbm@suse.com; h=from:subject:message-id; bh=E+XHZs2fGVQU4RACjdHGDrGQXdRXwI+e4g/Lo1v6q2Y=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QHlmfpqZa0e3FSsPSm/6s/yAsCmO92EAOj8x/YPOS9q2RTA523Bsm29p5YT3AhTzjKuDZLPYFlE MubEyNTxP7gU= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g When individual test files are skipped due to compilation failures, their .test.o files are absent. The linker step currently lists all expected .test.o files as explicit prerequisites, so make considers any missing one an error. Move TRUNNER_TEST_OBJS to the order-only prerequisite list so that their absence does not prevent linking. Use $(wildcard ...) in the filter expression passed to the linker so that only the objects that were actually built are linked in. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index 6a3835a58f87..ca64a7678dfe 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -738,14 +738,14 @@ endif # some X.test.o files have runtime dependencies on Y.bpf.o files $(OUTPUT)/$(TRUNNER_BINARY): | $(TRUNNER_BPF_OBJS) =20 -$(OUTPUT)/$(TRUNNER_BINARY): $(TRUNNER_TEST_OBJS) \ - $(TRUNNER_EXTRA_OBJS) $$(BPFOBJ) \ +$(OUTPUT)/$(TRUNNER_BINARY): $(TRUNNER_EXTRA_OBJS) $$(BPFOBJ) \ $(TRUNNER_LIB_OBJS) \ $(TRUNNER_BPFTOOL) \ $(OUTPUT)/veristat \ - | $(TRUNNER_BINARY)-extras + | $(TRUNNER_BINARY)-extras \ + $(TRUNNER_TEST_OBJS) $$(call msg,BINARY,,$$@) - $(Q)$$(CC) $$(CFLAGS) $$(filter %.a %.o,$$^) $$(LDLIBS) $$(LLVM_LDLIBS) $= $(LDFLAGS) $$(LLVM_LDFLAGS) -o $$@ + $(Q)$$(CC) $$(CFLAGS) $$(filter %.a %.o,$$^ $$(wildcard $(TRUNNER_TEST_OB= JS))) $$(LDLIBS) $$(LLVM_LDLIBS) $$(LDFLAGS) $$(LLVM_LDFLAGS) -o $$@ $(Q)ln -sf $(if $2,..,.)/tools/build/bpftool/$(USE_BOOTSTRAP)bpftool \ $(OUTPUT)/$(if $2,$2/)bpftool =20 --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 1908B3C871B for ; Fri, 3 Apr 2026 14:59:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228375; cv=none; b=pZj24jM9I4DDgPmurADVuwqKf8WXZrLM+7TC0O0Y03KTuLuovqsX+Fzc5K3nCS6XN+J6SuWv4Sijsv9RQYvUziTMPEasrLo4PgWflEVoOpsmSliNpXqVcIDObGGuAZNJtCihzTdtXANFyCLH7kj/VobBYEWnC4FWRpIT+uFdaTM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228375; c=relaxed/simple; bh=Vb0AXhFsDt9pyoh+t+bE4qmDULoWMSdi9FuzL2SfgS8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=eeSDJpHwcM7Qb5dYvlLHCoQ4Wt2eTNm0E8+BD4Yq+9tGu+y7ErrtTfRZQvrbMot+ouVAHuEBfKZUTuihEcqP3eAXV0w1f91ApD4w6yw1w4MkVsWcWh204O9A8Wnj7wG1nv37IVoe0Z3gTZirO4RRiZNNQAjUQWlk+sZ46oGLQg8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=N2bfWapi; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="N2bfWapi" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-486b96760easo22998185e9.2 for ; Fri, 03 Apr 2026 07:59:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228372; x=1775833172; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Ls1McLWMN73ezSsTrZA7UyKWtFmBmekWaV7EBs/FdgQ=; b=N2bfWapi15j5WhocBuGowEHaYALGWUZz4FIqaB2t8Ar8rXk6yuVjDyW52+j0AsbzWD k2OT77Cfpp2nvmtQ/YraoXsIPaS41kF6KEi9HjOfaX9CheO3AgypX8vB6gmxKgtmBX0/ gRJuqApZqHZbwojPnKRhUnSJbOlXaF1l0SwFUD6/6AdtIsrIx6JBEuGF2JRIH9FuoVfq Ycn0/Mx9i0YVT09y5LzkWL44VFQKi/oyd8l8Fqqd0njZXdNv8FCmQyV3BO5DVEW3NaGT R30zAzTNo9XLsniubyGYs/IltQBPmKh1WUQ/3vsFsw5YrrNihE8gG+zoIi7ZBenfvRuU C4xA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228372; x=1775833172; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=Ls1McLWMN73ezSsTrZA7UyKWtFmBmekWaV7EBs/FdgQ=; b=JilVxhzK8Oj225jzrCFPKTKVHeER5m71sM3JJvRxBAx1IppKrRLOONdAtyQErdJXuF cCaUl5NfJbEwTlivOtHohiXEx7xqLPVLRpK+47E2Qd7kH3L40pZpunYBcyklr0shkIeY aiAvOOWpbQPlBeehSqpT6ViMl2axwBiuVbcu++FE26PMj+m7wIIajXRcEvzfdnnvf0nL qf9aeQJnCiulWlZ0bMVcHVaZTUnJabk3coiWEaumiV0WYsAKnxlnqcMAXid1v/5WTSeA jdYJtVJc+R3Xxgo4M78J18E7o50PAcbFhzLpipSzHJYH84cb+GoTJtE1aiR4m4bbDhkJ tVgw== X-Forwarded-Encrypted: i=1; AJvYcCX8UszGeXg4cR55/maWVuZScnL34AX82CaMwMzgcLmTkrD2i5UloCnTyMOd7kRCBWhqoSy1uDtc9Zo7G1w=@vger.kernel.org X-Gm-Message-State: AOJu0YzeU49cvpboh2cUfh/9XHkj31hi8t/rUvE8eNWwZUJaWuY9LNyp LRFO0TM0gLfsVtR6iaEIGg7Od/9gnOJ5DGyWORM1MPozotKn3R4sUg7qhnqBZa0tjHQ= X-Gm-Gg: ATEYQzwijSwLM2/50RU73IZBbVhoCmuQCDIf0EXLRvoTj1Ejx8lEbassoZKJeTkDbXV rMzalEfXlSjuA04hEwPk2t2I1PHYwOvp6u85rbpBWs585EyMr5pYPWYbITOMMrFWHy4iCKFfv+7 3AD+i1LB3tdVZu03e1UKyJ/GACanzaukoGQPXIorEWOOjZWClh/u70HwC6uyT5cMwC6hC/BhA27 4VG/0u3YNbPnGWiyDI5HzQKILr5fiwd+rMUPmIB/4Ikcsn1mfNVJMeWuQH6gU8qNCpAXH2nk0t6 FHLi+UBxvkAkPLyOMkcy5YMaH58V2PFpT9SEjIIBjxSsvc9bxsfTXvhliNUrLZODGL1SHXZSE5E tdmTfljjA7SrbHR6CZ/JSkTAVFwbYX91dDS3gC/ysKQIEKg1W3/BBuy6pQa1d1EFZ8l+a1rbafH xywIsA6ZQj X-Received: by 2002:a05:600c:4743:b0:487:36c:f5ab with SMTP id 5b1f17b1804b1-488996ff833mr53031475e9.10.1775228372464; Fri, 03 Apr 2026 07:59:32 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-60582e1214esm7347524137.3.2026.04.03.07.59.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:31 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:59:00 -0300 Subject: [PATCH v2 07/10] selftests/bpf: Tolerate benchmark build failures Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-7-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1818; i=rbm@suse.com; h=from:subject:message-id; bh=Vb0AXhFsDt9pyoh+t+bE4qmDULoWMSdi9FuzL2SfgS8=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QLCw7U/C0zz/637riIE16w5PGpjm5IiodgjmbH4UtLs0ATObTBKTosvzaC8RaAPLzHEy/4wpKYf PXEGmhaqR0AY= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g Benchmark objects depend on skeletons that may be missing when some BPF programs fail to build. In that case, benchmark object compilation or final bench linking should not abort the full selftests/bpf build. Keep both steps non-fatal, emit SKIP-BENCH or SKIP-LINK, and remove failed outputs so stale objects or binaries are not reused by later incremental builds. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index ca64a7678dfe..6c4f85459486 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -875,7 +875,8 @@ $(OUTPUT)/test_cpp: test_cpp.cpp $(OUTPUT)/test_core_ex= tern.skel.h $(BPFOBJ) # Benchmark runner $(OUTPUT)/bench_%.o: benchs/bench_%.c bench.h $(BPFOBJ) $(call msg,CC,,$@) - $(Q)$(CC) $(CFLAGS) -O2 -c $(filter %.c,$^) $(LDLIBS) -o $@ + $(Q)$(CC) $(CFLAGS) -O2 -c $(filter %.c,$^) $(LDLIBS) -o $@ || \ + ($(RM) $@; printf ' %-12s %s\n' 'SKIP-BENCH' '$(notdir $@)' 1>&2) $(OUTPUT)/bench_rename.o: $(OUTPUT)/test_overhead.skel.h $(OUTPUT)/bench_trigger.o: $(OUTPUT)/trigger_bench.skel.h $(OUTPUT)/bench_ringbufs.o: $(OUTPUT)/ringbuf_bench.skel.h \ @@ -918,7 +919,8 @@ $(OUTPUT)/bench: $(OUTPUT)/bench.o \ $(OUTPUT)/usdt_2.o \ # $(call msg,BINARY,,$@) - $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(filter %.a %.o,$^) $(LDLIBS) -o $@ + $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(filter %.a %.o,$(wildcard $^)) $(LDLIBS)= -o $@ || \ + ($(RM) $@; printf ' %-12s %s\n' 'SKIP-LINK' '$(notdir $@) (some benchma= rks may have been skipped)' 1>&2) =20 # This works around GCC warning about snprintf truncating strings like: # --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (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 1B8B53C73DB for ; Fri, 3 Apr 2026 14:59:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228378; cv=none; b=rOGzuV8GWOMmPV103nJlxl8v8rz/5CgL7nY5vhub+PVa4NAotj4CRHPOiDmLzTiC4lZAtIY9uC4RAGRkswoTmdk4vKpN0kDoNjogLkN7FMYXiNlrTzoWXVIGppGTqh3a6JMTLOIYbWvYelQq1Cn8Dk0u5wAZSX85m1nogkha5Cg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228378; c=relaxed/simple; bh=CWrUl3nngNLLkNWUjGrRyYauYMa3BfaOEPnf4E9SCrw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=G1z2PkeIfCWixKD2WWTL15moiwqaEQFwdJQTozfTeM5C6B7Frscm89YL+R099y7ggRyCAT2FjNXLtrHnbhrqrJEmRl4H8W65BEDlGa/uRgVZR8UB4LxnLetJeyXCkK7QBkvJJMWJ47te/cqGFKsD7ZeDQY3IS+9gVNlAjHvkYGE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=ZyWt+E+q; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="ZyWt+E+q" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-486b9675d36so17286875e9.0 for ; Fri, 03 Apr 2026 07:59:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228375; x=1775833175; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=WCZbMI7HRv+cCcgpbRQIHtBN+KMA+UT3Ct0Z9N6Znxg=; b=ZyWt+E+qDi/yeqe01rCNwzfuUvOm+WaEIt+z6oxlcRdi0Vkhhz1uzKwvrM7ERG2Utj QsMyzbDR5/auAqObuEAvzCZT78mIWjfxGL0ChzMxH6gvmIjwWWA4DfsEoDuFn0WPH+if UmfFCEIqQgqFF68H0MzEru4YVNuVv4PTANk5LstmkXRY02GGHGD3Um/amyjy0Kh1ysp1 sRe53+pwYmWNCkBbaxj2JdI1J/sQxCs2yTNavXs2B4hjiWhQvXl1f6xfKjoxbwz0pwQm mGWtOxUoU2rYODhP0a2x+3wiZL6J/8RSfH1H4+dcSGLdBPuQ56lNb2gTM1V5m+0dEgZp EVoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228375; x=1775833175; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=WCZbMI7HRv+cCcgpbRQIHtBN+KMA+UT3Ct0Z9N6Znxg=; b=EtoqCf4GIwv7LppQmr2Xsxl4prUKXJ1aHvM8FxUHPA97dK8QKvPRJ20wRBWoVcLHqo CxOg46TtgYN5mV1JNnqNvw8FYRbIIP57rPfoQ0dD52oPIj8Pbp5bTb580RXRFxy1GXqh dhJ9ihndaRTiC7NzwBXfNrDAOh8uw46jWU1ELkcd/bQZ1h7jzcli6xtkedoqTOMyHPs9 p1y2wrIPXP7knUZCwjREfk7tUvHjjSy+Hherd8aLecHxntcNqGg3evI/bBNuoyVGeyj4 PnvhV4qQ5XaUjPZ/VPXi9ANFBo/AgAohwL+Bz15nmrpk3yKKggYWQMhjYoh+iR7GyvYN ZXSg== X-Forwarded-Encrypted: i=1; AJvYcCUQvGGMyKqBJmS/02/oh6Tk9Ln+pVpDgvJXGNpwvSQAqFuew6n5v5aUAC0xcpXaIvIPKrSXAmlLLQbdHUI=@vger.kernel.org X-Gm-Message-State: AOJu0YwLEnNFbfVUdNrNOvinFEZlSbgLfh491TlqJMUiF9NjkRj76Z71 qUuTKZnkzsqTBOEd2PQy6H7j+B0LQZeo2axS//XSLL1jbVU6nWhJvu2BkQYwHALSz08= X-Gm-Gg: ATEYQzwkTGogAYJg48/uSNHlp/Rgei2TJSxe2Or6YmPu7n0Yquxl2mXfyWRVYX+Pt3t 7tEOIlu968X9mijqM2chdqSuhbiM8fCk7SHuZAxGOtILOBlMlwomaOq46zxJWAdFE0q4QWTidPp xgwVbrwUjZ8yqzPuShKT7usavtg0ZgLqNrDg2hSdoW6FTM4sQiC6NvNuy3uZ5oIvqGHKwTZYZBQ OC9k1kUeWWV7284XxoGUUyaNvYj1zbPOhFLnCoktk83QkTWkEtSu+KKrfp91b+7bR3/3/kADKnT hPj+oHGqRLvHklmyKoGAWjpc8XDeK62jor4xLYSa0WzoBEPS5U0bEqYbwPxFXjnaDc81S6u0/G1 PPtR6yEJGj7tvrgXff79mzz77+YGXf6DWDx0eUZfLO3wQ1/dWe1FIxiSqUP+z6ag1JpcDW7q/3j I5iOyPGJkX X-Received: by 2002:a05:600c:a117:b0:485:3ff1:d5c5 with SMTP id 5b1f17b1804b1-488996ecd84mr36638675e9.7.1775228375430; Fri, 03 Apr 2026 07:59:35 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9bae1117sm7077289e0c.7.2026.04.03.07.59.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:34 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:59:01 -0300 Subject: [PATCH v2 08/10] selftests/bpf: Provide weak definitions for cross-test functions Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-8-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=2984; i=rbm@suse.com; h=from:subject:message-id; bh=CWrUl3nngNLLkNWUjGrRyYauYMa3BfaOEPnf4E9SCrw=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QFKqWxNUQWIxjTYwXeOcrrf5lpFtWyHGdFp5HF1OQSM6+NpS9VOMq88Mg+K2mWsWEjq24pC3OGP MnTrRG99BHgg= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g Some test files reference functions defined in other test translation units. When those units are not compiled (e.g. because a BPF skeleton could not be generated), the link step fails with undefined references. Replace forward declarations with weak stub definitions for: - uprobe_multi_func_{1,2,3}() in bpf_cookie.c (defined in uprobe_multi_test.c) - stack_mprotect() in bpf_cookie.c and iters.c (defined in test_lsm.c) The linker will prefer the strong definitions from the original objects when they are present, and fall back to the stubs otherwise. Signed-off-by: Ricardo B. Marliere --- tools/testing/selftests/bpf/prog_tests/bpf_cookie.c | 20 +++++++++++++++--= --- tools/testing/selftests/bpf/prog_tests/iters.c | 10 +++++++++- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/tools/testing/selftests/bpf/prog_tests/bpf_cookie.c b/tools/te= sting/selftests/bpf/prog_tests/bpf_cookie.c index 35adc3f6d443..1619490f1e5c 100644 --- a/tools/testing/selftests/bpf/prog_tests/bpf_cookie.c +++ b/tools/testing/selftests/bpf/prog_tests/bpf_cookie.c @@ -252,10 +252,13 @@ static void kprobe_multi_attach_api_subtest(void) kprobe_multi__destroy(skel); } =20 -/* defined in prog_tests/uprobe_multi_test.c */ -void uprobe_multi_func_1(void); -void uprobe_multi_func_2(void); -void uprobe_multi_func_3(void); +/* + * Weak stubs; the noinline definitions in uprobe_multi_test.c take + * precedence when that translation unit is compiled and linked. + */ +noinline __weak void uprobe_multi_func_1(void) {} +noinline __weak void uprobe_multi_func_2(void) {} +noinline __weak void uprobe_multi_func_3(void) {} =20 static void uprobe_multi_test_run(struct uprobe_multi *skel) { @@ -574,7 +577,14 @@ static void tracing_subtest(struct test_bpf_cookie *sk= el) close(fmod_ret_fd); } =20 -int stack_mprotect(void); +/* + * Weak stub for stack_mprotect(); the real definition lives in + * test_lsm.c and takes precedence when that object is linked in. + */ +__weak int stack_mprotect(void) +{ + return 0; +} =20 static void lsm_subtest(struct test_bpf_cookie *skel) { diff --git a/tools/testing/selftests/bpf/prog_tests/iters.c b/tools/testing= /selftests/bpf/prog_tests/iters.c index a539980a2fbe..6888bc9173fd 100644 --- a/tools/testing/selftests/bpf/prog_tests/iters.c +++ b/tools/testing/selftests/bpf/prog_tests/iters.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include "cgroup_helpers.h" =20 @@ -202,7 +203,14 @@ static void subtest_task_iters(void) iters_task__destroy(skel); } =20 -extern int stack_mprotect(void); +/* + * Weak stub for stack_mprotect(); the real definition lives in + * test_lsm.c and takes precedence when that object is linked in. + */ +__weak int stack_mprotect(void) +{ + return 0; +} =20 static void subtest_css_task_iters(void) { --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (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 48E853C73DB for ; Fri, 3 Apr 2026 14:59:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228383; cv=none; b=u1LSL7Hu09H6jgc5PNazGrqRBjbddZdXu2kIGMcsEDMsCJ58q5vJwyr8lYuM7LvCmpaovkUDNUmFQphRBPIG6ZDKc3X/tSqgbX5FI6fdOYD4It2RdDGn+q/zaR3NFO8L6Nk7zbfzkajZv0qGRf4Z9Z/fxYRM1JkQ21TJkMoJPu8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228383; c=relaxed/simple; bh=2f5aVKepAPVQ6QAMkIjSa6F59NytLhs5Yj9FO1U5vIg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Lt98pStB6JiIiNelm/kFiVwQwujJjdEI0SgbRft5PqEddFZYGR7tVpLZTbKIot1BpZrTl2lt0KLB9vsJizXOhDgAnG80ymXOJtEBik8ldiRPa5Hy7W37zckc/q8ImXKG3isWM95Hqsde4pV9VdPq+d3+hX4ZnVzMKAVyaMgkE+s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=M44yLjcd; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="M44yLjcd" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-486fba7ce4cso21748855e9.3 for ; Fri, 03 Apr 2026 07:59:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228381; x=1775833181; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=GKDIAWuRtDFHvkwbDQCWFyTrBdJA4yobh9R3wJFKPAY=; b=M44yLjcd4xdUMfEvK38gBToCy6MKax+3a48F6Kf7Zlai1fONTSxypNlO/fUayY4Teb E3i9nL6KBT9zun8weHYKM0pRnrNEUHR2BPn39fHv622qjhtrGdk7gxjnTACJVbwvS4iE IjxO1B40+YcBi81fUmo3RPG1xDld4/6rQQMceeBKLzLQfxmNeXkTSl84hsJsAEL+ISCE nj97LziWU0pevU/WWOCk2/JMMsnqhb70pJFlTCfEx4WYH0cLfDC1O1+wOIqsxLal9Oy1 f2EPVcIuJGXQupoGVtyefbdsfdAqCXinL9oub9YDmMy/I2KiISwmaCt7mhkM4Y32kuSE 7a1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228381; x=1775833181; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=GKDIAWuRtDFHvkwbDQCWFyTrBdJA4yobh9R3wJFKPAY=; b=LEjnr2HqUZKjH/F/7jVoeFfmxfamPYqLaduh81ZUdoFuObfqFN9qWNiNpOn1wnLnws vjNiIfTABcaHltFzEyUD7XYynOZiuaX7nJiS9rgfqRa+XrlwzIiJNuZpOZZ8bliO47Ak FDIq6D5SupA8shd4wb6Ijg6yFEwB7W+/NbfNlA11Z9hsP27dxPY1JJphdWkPQ9jUyWq8 gZlUr5KI3BKmpn0z9vk1NuWAjsHTjx2n9/2tnGBwW0Jq7JbdqbPjlVPfd7K0Es9dz9is Lj2W6PMLcCO3FoTooBRe7bVJY/D+w5R75aEjm/9Nb2cGD7CjPkXmkvp0mF01nguqQbZj h3kQ== X-Forwarded-Encrypted: i=1; AJvYcCUXxZMvUR9IwwwMPBaKKII+ACpiuIcqZYhi5jUJH19jtxtu+REkKxK8KuhEPH2+704MvK008hSvHdw1ZWI=@vger.kernel.org X-Gm-Message-State: AOJu0YwDxLy3G3AfYLrToK99Q31UHvK31NyfyfGxd1da5UcrcleabjJn XNwDogO4lyP9/13myHSWm6UTGOtwkRhWOTiOXFsS6te/c17AadGdoZMwip5reOpvdBk= X-Gm-Gg: ATEYQzxdrs77yMMW+Q4qaV/jdc51LgOfIoS8esZ2Gh6cEv1V1EXQRUR4D4IPchihnb2 FXvb7Z/QAbt9bRazHRJfF7VWMPxXjpt1mxFsKg2+N4l4GykmXMESJJEaD0rn+E+fRpcmE7uANqV cWdR2+vEEVI5vaBC1HgO2v8xLbjNeYxPjAF3GSA0qHuvDSAwbrKtd7Ub1QNeMdmnApglLAKg5kA G6btTlazlo+Ql5OFS5m4t16mhWXwlFqccq2uHywXKhnHNMfA9tYXp5PqZ93+tYqPXBHUeSeSpwu Zc0SVfVccblQi0vRXMMu4Mkh/FDF1tbjEovELgKUw4522LtNuCyr+ixx7h0AW2w1faIUHsxXt0J Mw9aOnFx5lsfOS0kP3P3FjskUGhbZKusFNoPSwvhmKF3ucUZY7R61F1lNT3OqIjO7TytHXOM3M7 Wx4LH9c8I7 X-Received: by 2002:a05:600c:6092:b0:487:288:1199 with SMTP id 5b1f17b1804b1-488997dfb41mr60010355e9.28.1775228380694; Fri, 03 Apr 2026 07:59:40 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9bc9cbbasm7312493e0c.9.2026.04.03.07.59.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:39 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:59:02 -0300 Subject: [PATCH v2 09/10] selftests/bpf: Skip tests whose objects were not built Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-9-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1739; i=rbm@suse.com; h=from:subject:message-id; bh=2f5aVKepAPVQ6QAMkIjSa6F59NytLhs5Yj9FO1U5vIg=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QAv+Ss+JdaUOsPfoNWBRS+cKg3MWINgTH7ahWzB/w2k2cSu+EqYkRVlvI0zjzESS22puaq6LMRH B1yX8kJ5QIQ0= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g When Kconfig options or missing headers cause a .test.o not to be compiled, the corresponding prog_test_def entry in tests.h has NULL for both run_test and run_serial_test. The existing infrastructure check treats this case as a fatal coding error and calls exit(). Separate the two failure modes: having both function pointers non-NULL is a genuine coding error and remains fatal. Having both NULL means the test object was intentionally omitted from the build; mark it should_run=3Dfalse and continue so that the remaining tests are unaffected. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/test_progs.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 0929f4a7bda4..85ac25a51a8d 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -2022,12 +2022,15 @@ int main(int argc, char **argv) test->should_run =3D should_run(&env.test_selector, test->test_num, test->test_name); =20 - if ((test->run_test =3D=3D NULL && test->run_serial_test =3D=3D NULL) || - (test->run_test !=3D NULL && test->run_serial_test !=3D NULL)) { + if (test->run_test && test->run_serial_test) { fprintf(stderr, "Test %d:%s must have either test_%s() or serial_test_%= sl() defined.\n", test->test_num, test->test_name, test->test_name, test->test_name); exit(EXIT_ERR_SETUP_INFRA); } + if (!test->run_test && !test->run_serial_test) { + test->should_run =3D false; + continue; + } if (test->should_run) test->should_tmon =3D should_tmon(&env.tmon_selector, test->test_name); } --=20 2.53.0 From nobody Tue Apr 7 12:23:59 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 B44B33CCA1A for ; Fri, 3 Apr 2026 14:59:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228387; cv=none; b=n+CyfUUercFfdToWCC8Ztpd1uDj04EHQUoPd0bPxCB6aaXPURS4zgwMb+Wj30nRgnhePmRHQbPw17OCdn1o3pWrE+y9I0T77+cPlkVb+gYrsG5iXNELVPBcJbhS4xnV8zDx/zEaE2TTizvFAkQh6JgWRIv+xdBB8ItTcFMuBAzc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775228387; c=relaxed/simple; bh=VgaZGJgNoIf6wfVc9SmL/U8SxxfQLWizje2Jxoqjl4s=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ihnf2n/aHa6rf/9yPS4TdkZbJJoaFF8uy94oYgHfyR9M6PWf/Mg34LwRBbW2jvQimnorwsfokQsZme5LuyQkEZ+WaAy4iMDP3zMyCZ3qpCp/dwuo3ue5f/5mzdWlQjCh4IKLF4Aw+Cmj0PhGN/t4tEb2eYgBTFGinaNcf+5KxhU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=IGePjyxv; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="IGePjyxv" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-488a04f39d2so3386805e9.1 for ; Fri, 03 Apr 2026 07:59:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775228384; x=1775833184; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=o5ke/PdA8QzVJR7Spl86h1CIBtkkSiz3t60hf2vQo38=; b=IGePjyxvBRQb1B/xTLFB7ActDYPFyQDs815ncYUpnmikOzSXpjoHZNoGTCSAyhly5v VAjL/Vf/UlOtcDbPFNRXOSMvQHUclGGxd27FY5T9J8PHa6SUR0Ti9ZbXkt2D7CDTSEtW NS5eVPwp3gzlGJgNWTbLfmHu1f6/lo0FFYhPilm8BKWLsZkIhsxf+RxH8sx0JPPNPZmJ 9t3Io7pd+U9dBdYuiL9G9BpFHShSVFJTaIMH83P//cRy/dqytXyDylKsHLLURphbobIy oYsNvAx71Anh+w0jgoY2YfE7dQD8F/r5UDa9ZNBK+KChff2A1ez7fSDSX180Od4a+2u/ E7+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775228384; x=1775833184; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=o5ke/PdA8QzVJR7Spl86h1CIBtkkSiz3t60hf2vQo38=; b=ZnTozXD0SpA23h9Ez4u9Ny0xa5gB1TlANqmrU7EJy/m+3lCdsO7qyvhUIoOd21FvDn qskmUGx7gTqWTmdNrRuuSvfj/WEoVKePyUF6I2lcfPRbOMDzn5YB/Ke6sJ5VqC9q7z72 JYAq998vczStLkYrrFnf8gViD/vmLn5xT1KuRkRgCOGBjWMjr+0rSvG3plhViJ+ZMSBt BvKb3VYpMIZzBGAsEyZH92UG7LUwUjwijwtAjKJvrS1Qf97idE2pfA0ChnW4c9fEwmsH AmlpmbPu3RwT1Kzd3fF5DrrlUL80SP8mBe9OdFc3ocYH4Km7sQxjzioyj0xOjpja2hGQ 84jg== X-Forwarded-Encrypted: i=1; AJvYcCVYk/1SFhSwAnO7VcT96QhlIPWZlgJbEvzDsqZx+PhYmVhdHYsbDS4DrQvrAPAn8fg5BR7+R9PiJbA7BNo=@vger.kernel.org X-Gm-Message-State: AOJu0YyaN2bLo+d4fsyf17T7OHNjB/GTZ6MWvWnQS0DDqjPnsmBaA3P6 sVhKFg8hk5wIx0E2HWTsuSn8Zty/NTflpulZOCIONi2wTIu/2mFsbOgY9apmIViVkRY= X-Gm-Gg: ATEYQzyhWa9/MWJ789+1H87pd9rcYwZWGfOUgtBigBXMvQRZCfYFmD9xI46+EhE2svV DmaHpx1rFOyW+9Ei3ufEtgLUG77YLqJ+wV6TujtS0xuxGs+xn6uyBKFXBraQvPaqV1b6AeoT+0s yxTL/MLEltD1asklVOw+fvroj4qvsgilNiPjZ8O+UjhanE6E5XZBoNYB+w6cY1nGjF5sokMZkL5 glknXqvJRb4g4o0slok9O8PoZ04VCLJoT8PKnN/xf3lpKJQHqLAU3gEOzZpz15461I43rIj3EcA oBA3k4oFYsuoaeslQ2mXFunCntWmKqBkWuufcip2zanN1QWgfzvXfAl0ZQJ/x0Q0/LsMtzv0JkZ 2oATk5/SDBekdKDvW28sfs7J52EdTIJ9bYdstgj3S4R8e7WDmXRYt1+jtaLIL3/++Be3qAuA1RE Y5ZodRXUue X-Received: by 2002:a05:600c:4688:b0:485:379b:57bb with SMTP id 5b1f17b1804b1-488997154femr50823345e9.3.1775228384139; Fri, 03 Apr 2026 07:59:44 -0700 (PDT) Received: from localhost ([189.99.238.3]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d9bc9bc41sm6878642e0c.11.2026.04.03.07.59.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Apr 2026 07:59:43 -0700 (PDT) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Fri, 03 Apr 2026 11:59:03 -0300 Subject: [PATCH v2 10/10] selftests/bpf: Tolerate missing files during install Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260403-selftests-bpf_misconfig-v2-10-f06700380a9d@suse.com> References: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> In-Reply-To: <20260403-selftests-bpf_misconfig-v2-0-f06700380a9d@suse.com> To: Andrii Nakryiko , Eduard Zingerman , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openssh-sha256; t=1775228344; l=1301; i=rbm@suse.com; h=from:subject:message-id; bh=VgaZGJgNoIf6wfVc9SmL/U8SxxfQLWizje2Jxoqjl4s=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QMrZ54BOOJqDcZdAFl3NiwWeFS+siYvHChakdRJTLU+EGvle5lkem4T3+OqPl66zcPPffeR+n5j kC40uYAgbyw8= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g With partial builds, some TEST_GEN_FILES entries can be absent at install time. rsync treats missing source arguments as fatal and aborts kselftest installation. Override INSTALL_SINGLE_RULE in selftests/bpf to use --ignore-missing-args, while keeping the existing bpf-specific INSTALL_RULE extension logic. Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/selftests/bpf/Makefile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests= /bpf/Makefile index 6c4f85459486..d90e0dd9d0e3 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -953,6 +953,13 @@ EXTRA_CLEAN :=3D $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) \ # Delete partially updated (corrupted) files on error .DELETE_ON_ERROR: =20 +# Some generated files might be absent when only a subset of BPF objects +# could be built. Tell rsync to ignore missing source arguments. +override define INSTALL_SINGLE_RULE + $(if $(INSTALL_LIST),@mkdir -p $(INSTALL_PATH)) + $(if $(INSTALL_LIST),rsync -a --copy-unsafe-links --ignore-missing-args $= (INSTALL_LIST) $(INSTALL_PATH)/) +endef + DEFAULT_INSTALL_RULE :=3D $(INSTALL_RULE) override define INSTALL_RULE $(DEFAULT_INSTALL_RULE) --=20 2.53.0