From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (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 2C4E0382363 for ; Fri, 13 Mar 2026 20:58:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435529; cv=none; b=WcHvwhjRgEtTuNts716PbYZ5RnOaDwOI2joC3SQP5/CeNGBvKDaqIa3fHL2IMzbhJvwmk/lLrY0U7Rd1So665NnkDRmgSR18eecnvbEhEGH84r36dMW69yhI7XFLhF18XNgaXF2PTwbRBbnBWsNsI1r+WVaVxJ/h1ksgKAl+iOs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435529; c=relaxed/simple; bh=8jRkvxxvT99z3b+LG2vpiz3TQlNMu0g+HY9wzZ0lZRw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Yr0tR2oL3XH1SkRdBD1yydutdKmrFHty8xIqRhZ8lRH6/CNT0XX7iARhbzIdTkhxPlusbyw7ORl/iYX34Kq80igaw9iNrpZVglAl8KkL+pXNUFgOvsczuUeul2IEviOgZ4W/dPfHVUzZ+q/n895qx4dFrmTkKYa8TbVYl2Y8roo= 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=gBLGV6Ln; arc=none smtp.client-ip=209.85.128.43 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="gBLGV6Ln" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-4852ff06541so27301335e9.2 for ; Fri, 13 Mar 2026 13:58:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435524; x=1774040324; 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=HVWkiiv18U1tuwb2itRTyF8mnxLw6x7wlBUEkvfx9EI=; b=gBLGV6LnOSbQNUAc75Ri1RNAglMHT/blh9GU3ixQNicJLCHqbBQvUbcdjCk+vFfYPu cZxajpQ2C9urTfN/IKeWHZZmAPfb1z0lRgWuar3ILPnJO97AiA7PsjLE6g/uKJAwjZk2 M5DFf/Vinvnl6vXtS2qvtuiPPpxYQPCpca5u6Udbqp3m5uvk16WbKEqmWRKRz7gSAJyO jSTIZaT2+UFBzKPD7uf9e+y6vglxcUAU55xiXnxTwF7FTses4MybSD6ZOkRnTyGwcGK6 T5eepNnTgHaaaGMP7efROOF2/5j7YiNZXa5Lo94rsLdJb7bhU+MxGU/8GP7eIDcJFLZy 71Og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435524; x=1774040324; 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=HVWkiiv18U1tuwb2itRTyF8mnxLw6x7wlBUEkvfx9EI=; b=GI7yau1z1N6Os/Jeoq/pdcR867YMoA9cXf1jmzZVcCfqowmjj8rQ5hSvX7yM54OYLh m/He+alT6znyyQzVveSr9v8SKlzo97ur8jzxJutMO1GD7qfOqNgtgUKw0S3y/XoVqBj7 RpmVvOvZWPgIvtEZk3d6RN5pJSPSv2/WqoqqgujFGfJyUlpCbpH59vKcMLnVkMkuhkcv FB2FJtmJb5P2scke7wp37lHL5/m1sphBQvnSEHgMJ6ksmifrFdqY7znR4FEK7pD3NpCC dqArXWYCjv4QmxMTxJNcQcabdBhC9X+FoFJyHBSq5j3cI7l0vfCVwJ8TBr2lRn+RtXDP qkUw== X-Forwarded-Encrypted: i=1; AJvYcCXOxYYdUPeDc7w/ERFJ4ViLCe9DGTsLVdSiDCu7XyT2Wi+Sx6VrBna6jyfI01BPt5yIO2BvrgKWrSaspVo=@vger.kernel.org X-Gm-Message-State: AOJu0YzCFz8i2Wknv8aSviSbyuBqPxMHlCOhSIgSKCrLFOlV/GQ7zE9+ +AW5Adop5a6Jp1wzyx07trs6ymwwLXzUbd7AG3Tc4vZzR6VOmihx19bh1Qn0V3iNZvY= X-Gm-Gg: ATEYQzw1G4d5cTp5lIiclHOPLZy/D1tJnzkTzioBdfjxaQrqs1UgVmmtOLdjrRPxyA1 XyaqzwSeqGJcxZRI//YAEUyuEs7+5/BiA2I9HKc2+nWb1d2H41zXUavC0eJFx+wKbKzJDOKC+nB IbltmITWE3tclkF9carPL5bIvOITD5ANGpJdr1+PfUZ0zFiXppHdV6tGyA+k+A8EUH5b4lO70bN V5Bjwdn/iFgZ0YGS5IjOFRbXRfFO3Ymjra+4J5x7HwSlIvbZx8TWr3lAk8AFoMidrmY48hWGcu+ mdA8xZlHltikTCAsVRsA84Lb/GnYcnzdYjQcm8RT0XNOifVb9QRX2WUTgEY5hgxftudiY6Vb11N xxyEXtjKhlDRbGvhYdzUNCo9xJXMPPCEWXEct2A2SFPDCFb4mJSCDVKctysEBRnRlWD89LS8MIT oIt3cvQKoDhyx4aJY9KmaV X-Received: by 2002:a05:600d:8489:20b0:485:3812:36dc with SMTP id 5b1f17b1804b1-485566d9068mr59603325e9.9.1773435524238; Fri, 13 Mar 2026 13:58:44 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.58.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:58:43 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:32 -0300 Subject: [PATCH 1/8] selftests: livepatch: test-syscall: Check for ARCH_HAS_SYSCALL_WRAPPER 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: <20260313-lp-tests-old-fixes-v1-1-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=1173; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=8jRkvxxvT99z3b+LG2vpiz3TQlNMu0g+HY9wzZ0lZRw=; b=kOkiJw1y1W4Nogu0138hwjYMxSp1GgsM6j987tFoG/Ck+s5vwr5Phe55spvzVJy88qTDJIB+p CLzBjIkGSlnCRP4IRl2JxRUjeZDSJTZS+UXo8Bhs57aT5qGKgPcgLxs X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= Instead of checking if the architecture running the test was powerpc, check if CONF_ARCH_HAS_SYSCALL_WRAPPER is defined or not. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/test_modules/test_klp_syscall.c | 7 +++-= --- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/livepatch/test_modules/test_klp_syscal= l.c b/tools/testing/selftests/livepatch/test_modules/test_klp_syscall.c index dd802783ea849..c01a586866304 100644 --- a/tools/testing/selftests/livepatch/test_modules/test_klp_syscall.c +++ b/tools/testing/selftests/livepatch/test_modules/test_klp_syscall.c @@ -12,15 +12,14 @@ #include #include =20 -#if defined(__x86_64__) +#if !defined(CONFIG_ARCH_HAS_SYSCALL_WRAPPER) +#define FN_PREFIX +#elif defined(__x86_64__) #define FN_PREFIX __x64_ #elif defined(__s390x__) #define FN_PREFIX __s390x_ #elif defined(__aarch64__) #define FN_PREFIX __arm64_ -#else -/* powerpc does not select ARCH_HAS_SYSCALL_WRAPPER */ -#define FN_PREFIX #endif =20 /* Protects klp_pids */ --=20 2.52.0 From nobody Tue Apr 7 09:16:08 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 B61A2381B1B for ; Fri, 13 Mar 2026 20:58:50 +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=1773435532; cv=none; b=Gdw/yvw9ZGsErXIpWQN33lsXLwYsmEG4p813VqS29BvvcTw9tEjfj6zUxvonMFvJuxKWGi3XRMQM78izCi3GlMGdxT7KLFzpbebviw/xSf1G52PgLARXYqpzXe4gWJb8Ve/ukus4jsk311uJdsLGPHlyNO9fbR4avcoLGSDC9p4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435532; c=relaxed/simple; bh=1RfbEstq7Ctycg2Jjjbdik5k6wt6QjUzw7dgsIUK4B0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=sE6R/0M31ZMAiuRuqDjG0MZPOJTiaxirrS0aC+PrpM5r1+cSqLu+uKEyMRwaPBC4k2ci/1ztppAQIuyEaokewp0AX6MmvRM9eXzNMSr4BlJ1t+951FrEq9J4dVO8LtFeuVHCYaeehG1il40HYG6j4rTmGLWPRKBMDliVzaVUqdg= 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=Gh01QykV; 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="Gh01QykV" Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-4852c9b4158so22271375e9.0 for ; Fri, 13 Mar 2026 13:58:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435529; x=1774040329; 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=iETlcb04uVTRpZaVmkcYa5KMez1NknEs+5aPJ6reEiA=; b=Gh01QykVHQt/Jmjc8t4Jh+wE9xEjnw99M9n3Yu2B0QxzcwDWP8AO8ZyKFJ9jxw5Sjn 39//qw5978H0u1V+IR6BFQbpsiaoar1SWHOAM2y/Zq1IOsvROMeQIENZ7VA7/aXoyD56 YNnDZR5WcdgCNvLg7J4TaTFqOqZNp5QGxdPW/k12DQ6fMb7KFxGmXmARFpRWR1mh/4cv GQ6a43Ag9JsK5bO2C3fWtsdYM8BYNgsTsYhg/2lrxKa0zs7YKPqMFnINYDSUTap9q8eS JrD0CBLviiJC1UQugSLEbN/vxFE0qUdwvmoVvLar7cLZLaSuYrwriS+IiDypwFZKmAtw LQtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435529; x=1774040329; 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=iETlcb04uVTRpZaVmkcYa5KMez1NknEs+5aPJ6reEiA=; b=FhmS2b5PVJ7UW20LypCqNMtMhj+dPieHBcFIY3bOW7wese9mxgSZHdxQ/Y7Qy4amez dowtM9V0EQuSkHT383RubZJIeSUev49lTdIbpB9rh/SDPSBsOI9zD6yloIdhj+msrd3C RfKuKRzTD6xzck1HdS956fVPcMf1xROHNWt1OkYgApaGgt7+DsVRC7PF8IyZpb6HyvW0 G8ZTqhzMd47Ge8R+Cy4XZgtaH9h0ml73pTPWlU1uP+GUgbzM8rsQYvXJ05LeO0HyhQWi PW5rkXMkoX3pwKZ/9mOE11jSyceYOR+tdEimHTb0/cKM6YzleXYc5ovGF0qzYR6pZjG3 q4BQ== X-Forwarded-Encrypted: i=1; AJvYcCV39giB0YQvwEViGuhGcbJePb6JqVfH08rVDwV7I1gwkfSQwwlUfI2+fbH4ELlkJvtn9zzCSNwlNRLLaAQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxY1Aa6EJwzxv5PCBnIkHLPXXBBDl66ptXpDIH5ykMEDt4Jc9fs UWSerUD0Tfb7Re0ham6SrS/sBotAjnmMMy2knnwUAALtNhStJwPqU9/flMf0G8IFlAQ= X-Gm-Gg: ATEYQzy+iNPbRl0ajO1h/+kWkHB8RT6n74OsuKkK0x2J3u2y05Kf6T6cYUhHpVfGXev hDcl9rM3A9h5Z94OHbVY8LUwhBTv4G2Dr6eUbjueSa+iw1zgZq2yrkSJa+86WRA34ptXkQM0HBS DujocpbT2kFPcKv0DsdrnUo5IJ+wdIMRTFf88FFMRuHjAZm/KAaysa32COZFy9NVnlLjgr4cztr fMgrY6q3iiLySSPh/b4N1Rqb/A8AANxSA7nNcT3RlLKeGmfeCBPDw2X+CCUtKGFICgLqcFtpbnF C6rbUQ/HH+hZkMasnOIG0q4xR0Q/4HDAKIxZ/cG3BUI3jbuf5QBQxTxEAiCJFxTdhtV7Tq8EILI 4SdyGauv5adYS+Byzq4FfJSWowUnlDm7JnMeuzyVFqV0bw/ZTItD99F+ow6zgpHyEgQJ+9Oa10B 8kdyIF58SxGymu5xvcXqHL X-Received: by 2002:a05:600c:a45:b0:485:4006:960c with SMTP id 5b1f17b1804b1-48556702a7dmr80842015e9.16.1773435528862; Fri, 13 Mar 2026 13:58:48 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.58.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:58:47 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:33 -0300 Subject: [PATCH 2/8] selftests: livepatch: test-kprobe: Replace true/false mod param by 1/0 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: <20260313-lp-tests-old-fixes-v1-2-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=2034; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=1RfbEstq7Ctycg2Jjjbdik5k6wt6QjUzw7dgsIUK4B0=; b=R/GLdILhXCj8zr9ANzfi18u0WJVrCq1VW4lQo+ZqgoW+db89pYy4Iz86oJs/y0P/+VEgo2FKf LOOHZgWkIL8Dsc4KGGsnzlUUdTL2ENdD52Z9KhNOzQydZXdxZIg7thn X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= Older kernels don't support true/false for boolean module parameters because they lack commit 0d6ea3ac94ca ("lib/kstrtox.c: add "false"/"true" support to kstrtobool()"). Replace true/false by 1/0 so the test module can be loaded on older kernels. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/test-kprobe.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/livepatch/test-kprobe.sh b/tools/testi= ng/selftests/livepatch/test-kprobe.sh index b67dfad03d97f..cdf31d0e51955 100755 --- a/tools/testing/selftests/livepatch/test-kprobe.sh +++ b/tools/testing/selftests/livepatch/test-kprobe.sh @@ -20,11 +20,11 @@ start_test "livepatch interaction with kprobed function= with post_handler" =20 echo 1 > "$SYSFS_KPROBES_DIR/enabled" =20 -load_mod $MOD_KPROBE has_post_handler=3Dtrue +load_mod $MOD_KPROBE has_post_handler=3D1 load_failing_mod $MOD_LIVEPATCH unload_mod $MOD_KPROBE =20 -check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D= true +check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D1 % insmod test_modules/$MOD_LIVEPATCH.ko livepatch: enabling patch '$MOD_LIVEPATCH' livepatch: '$MOD_LIVEPATCH': initializing patching transition @@ -39,14 +39,14 @@ insmod: ERROR: could not insert module test_modules/$MO= D_LIVEPATCH.ko: Device or =20 start_test "livepatch interaction with kprobed function without post_handl= er" =20 -load_mod $MOD_KPROBE has_post_handler=3Dfalse +load_mod $MOD_KPROBE has_post_handler=3D0 load_lp $MOD_LIVEPATCH =20 unload_mod $MOD_KPROBE disable_lp $MOD_LIVEPATCH unload_lp $MOD_LIVEPATCH =20 -check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D= false +check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D0 % insmod test_modules/$MOD_LIVEPATCH.ko livepatch: enabling patch '$MOD_LIVEPATCH' livepatch: '$MOD_LIVEPATCH': initializing patching transition --=20 2.52.0 From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 7BA7D3822B0 for ; Fri, 13 Mar 2026 20:58:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435539; cv=none; b=bj+ExQXSoyUyxP8xCnyUAe1IoEztDV3Z43iOwb0q4Ppse4Zqcm6uzT1Tg7N0qhO7Y8oTNcAZOWCuqUwBybTZefJyYgGAvBS+101LCi6o+hQcNmqLYwdVZTId5hBZvm4h2JBoqGceN1OMHyvA173eKDbDkzZdYqngmyWu8CZ7atM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435539; c=relaxed/simple; bh=EjlOG59djdew0+CoAm6FPU4BQF51f7/++vwrXk3pauQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BJtNdVIh2bNd/rdFSKJQRLnNi61SspRuh5+ixVljiD3ujkyBtg/GIzSbu7JMaQMCu9dJVk6F4sz+xt+ph6AS0mkMjf8V/Qsk0P5QInD1FEmVUlVWgiVs+HgtoVLuVrV7mTj89hmO02zpavUefZf61lsLo9z0jW47XDoZry5Xtc4= 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=Tgj2ykcK; arc=none smtp.client-ip=209.85.128.41 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="Tgj2ykcK" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-4852f8ac7e9so30091325e9.1 for ; Fri, 13 Mar 2026 13:58:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435533; x=1774040333; 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=IyL9HjXlVtkM7LllEkbV4aKNC8jKN7b938wPwskLBwc=; b=Tgj2ykcKd1OSqQFNk4hDh7KMoxqVRSAWfBcZVvhLM8l9BIqsYpsU1g/F9Pm8I7eQa6 SSf9XOHc6a7ggClEKdwYe8AyJHw3eYp6y7wcyU3rs9LsEELyi3T7/zWPx4D8tdycRHyB nmm54VymCoSEVyFehwk+VyNN0lMezpdlbUryNzAUr2G7G9beCKimcftcgUxvCqJjsIFW ATwz7PGZyvsgbrJjW0uz7E3m/sWf2cy+oin1eQ4jtQbrWPRSeyAZjYhJsGGH7TUlxJI2 YUsVGWn6fBjJkfxPhZ6o8mIs4T88YL8V4Q8MQsYTfKjp+xKcKeM5OxS4pEEgZDy+6pGj ZHHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435533; x=1774040333; 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=IyL9HjXlVtkM7LllEkbV4aKNC8jKN7b938wPwskLBwc=; b=G0gwiIzHSQ3qW34NU5nlfJW0W2XYQPH5yOdWVBPipRkVD0RpAo5tLlmq8kLdm6X2a9 Go97rDhuyku5DdeaeekqZaqlRYsS2KU4NJHtMu1PLiVNSFBF1DQn5fIcAeeh+rQO4Via 8gFXKgII6OXm6E3KZ4vGyDlCzlDUpCwakx3oiKjl4TtHKkXm2tMYxJRnhXLmWNCENYOj snZNbBv82LykK3eqK5Cuy1XoB5CXxLYS6AXCCesNNJIaOdSI6nxpHM3JyWGy/eVpjG71 KJdgm8HwMRK41zdoojwjsXfoUyU3KoLqDTIIpjpy2n8MSfuUGUgr41mMLDBpKYiKp1KL IUbQ== X-Forwarded-Encrypted: i=1; AJvYcCUqZF7Qu736TqeuuOOwt0Qw4D//3aOJC2+Rp8lPZD+2U7OUMH/Z6B5W1tSLSOQvUABX/rx82qRMQ8Opfp4=@vger.kernel.org X-Gm-Message-State: AOJu0YzH9ESOHbFzm5g5kS0/Q2RYpqz+TYOkFyCjwgcwTTCyl8WHNSx+ ggGN17eqHNuqAZr9UbXjmtBQYGgog7mmWCuxAKjS+f8Li6z/8rd/gEUqc5KjXA1dOPA= X-Gm-Gg: ATEYQzw9UX2IJFdbsdq3TKVIIVPCAJjAWlCv5NHts+7S/g/3ch7IRoRigsqCWs1DKpx srjGDL/zOpSkj4f9HvBOSpqYB/aujOqFGsUYozjVaPUostRDiapwBBlacTuR/1+gK/3FM705wiY Cc5xkMGKD4UGKWypv9c1TivLhM86Lqs/dLcHlqBHdykpbmL1LXLjK4CSCYfSLeXw2LjocTOJjm0 KcA/+Y0HQaNrOdjnGsgNTBFOYpwh7iwga08jgnjCYhOEctRBcmMZ/1L5SjelHZ0VIM53NsqpxGg FoXGJc3ZV9MJ396BWFMGzQaDSkDK87VhEzG+VkhkdzVIFQv85KJwwRRVY+bD3+Qk+mXNQ32qLeo 8RLDp17yL5fxtxTDNyGlPpZjp09Hb6x3qEZNPfAuEzo8a2SBMsBn7sFRsLzbaJ+gHCGZBK829yB qr9jC25Ie9nwww+HmakSS2 X-Received: by 2002:a05:600c:3106:b0:485:3ae3:b394 with SMTP id 5b1f17b1804b1-48556711ec9mr93938275e9.31.1773435533423; Fri, 13 Mar 2026 13:58:53 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.58.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:58:52 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:34 -0300 Subject: [PATCH 3/8] selftests: livepatch: test-kprobe: Check if kprobes can work with livepatches 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: <20260313-lp-tests-old-fixes-v1-3-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=4054; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=EjlOG59djdew0+CoAm6FPU4BQF51f7/++vwrXk3pauQ=; b=xZN725oHRhRMUg03sM0SZCOuYCUu9nt2V0hUx489e2bRu67lftT7q8cyHkbL3lWbpZa14HSz7 hFuv+iFkRw+Ayny0g91NJzaN2GfJQ55AD558wEgqL6bGe6yz0o0MgOi X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= Running the upstream selftests on older kernels can presente some issues regarding features being not present. One of such issues if the missing capability of having both kprobes and livepatches on the same function. The support was introduced in commit 0bc11ed5ab60c ("kprobes: Allow kprobes coexist with livepatch"), which means that older kernels may lack this change. The lack of this feature can be checked when a kprobe without a post_handler is loaded and checking that the enabled_function's file shows the flag "I". A kernel with the proper support for kprobes and livepatches would presente the flag only when a post_handler is registered. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/test-kprobe.sh | 52 ++++++++++++++------= ---- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/tools/testing/selftests/livepatch/test-kprobe.sh b/tools/testi= ng/selftests/livepatch/test-kprobe.sh index cdf31d0e51955..44cd16156dbd4 100755 --- a/tools/testing/selftests/livepatch/test-kprobe.sh +++ b/tools/testing/selftests/livepatch/test-kprobe.sh @@ -16,30 +16,19 @@ setup_config # when it uses a post_handler since only one IPMODIFY maybe be registered # to any given function at a time. =20 -start_test "livepatch interaction with kprobed function with post_handler" - -echo 1 > "$SYSFS_KPROBES_DIR/enabled" - -load_mod $MOD_KPROBE has_post_handler=3D1 -load_failing_mod $MOD_LIVEPATCH -unload_mod $MOD_KPROBE - -check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D1 -% insmod test_modules/$MOD_LIVEPATCH.ko -livepatch: enabling patch '$MOD_LIVEPATCH' -livepatch: '$MOD_LIVEPATCH': initializing patching transition -livepatch: failed to register ftrace handler for function 'cmdline_proc_sh= ow' (-16) -livepatch: failed to patch object 'vmlinux' -livepatch: failed to enable patch '$MOD_LIVEPATCH' -livepatch: '$MOD_LIVEPATCH': canceling patching transition, going to unpat= ch -livepatch: '$MOD_LIVEPATCH': completing unpatching transition -livepatch: '$MOD_LIVEPATCH': unpatching complete -insmod: ERROR: could not insert module test_modules/$MOD_LIVEPATCH.ko: Dev= ice or resource busy -% rmmod test_klp_kprobe" - start_test "livepatch interaction with kprobed function without post_handl= er" =20 load_mod $MOD_KPROBE has_post_handler=3D0 + +# Check if commit 0bc11ed5ab60c ("kprobes: Allow kprobes coexist with live= patch") +# is missing, meaning that livepatches and kprobes can't be used together. +# When the commit is missing, kprobes always set IPMODIFY (the I flag), ev= en +# when the post handler is missing. +if grep --quiet ") R I" "$SYSFS_DEBUG_DIR/tracing/enabled_functions"; then + unload_mod $MOD_KPROBE + skip "Running kernel doesn't support kprobes along livepatches" +fi + load_lp $MOD_LIVEPATCH =20 unload_mod $MOD_KPROBE @@ -61,4 +50,25 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching trans= ition livepatch: '$MOD_LIVEPATCH': unpatching complete % rmmod $MOD_LIVEPATCH" =20 +start_test "livepatch interaction with kprobed function with post_handler" + +echo 1 > "$SYSFS_KPROBES_DIR/enabled" + +load_mod $MOD_KPROBE has_post_handler=3D1 +load_failing_mod $MOD_LIVEPATCH +unload_mod $MOD_KPROBE + +check_result "% insmod test_modules/test_klp_kprobe.ko has_post_handler=3D1 +% insmod test_modules/$MOD_LIVEPATCH.ko +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: failed to register ftrace handler for function 'cmdline_proc_sh= ow' (-16) +livepatch: failed to patch object 'vmlinux' +livepatch: failed to enable patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': canceling patching transition, going to unpat= ch +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +insmod: ERROR: could not insert module test_modules/$MOD_LIVEPATCH.ko: Dev= ice or resource busy +% rmmod test_klp_kprobe" + exit 0 --=20 2.52.0 From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 32F69382F16 for ; Fri, 13 Mar 2026 20:58:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435543; cv=none; b=tFTJ91twAoGMAE7/5f3GbKTm49inDr9AqMqPbma4aijbBNf5W3tQy8xKLSZkTufJEW490cle3iLFiwwxRieOt1Z/FUIfgFXE1tx3jGbUZilHyUmiYm233xsiqD3fdTfP+Nt93cN3E7rvf1RxNXiA1J4EatKID47yYEuYfzfVEEk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435543; c=relaxed/simple; bh=VRVN7RkiGrgm69aDuMpcOshBDCo1eHbzdD2OnFzwxC8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=XZiVT84DBP2cyQK6uTcetRqpyxwddOc3WAyMKj/yoAw7LYduGXQ3OGViRnisqKifnITpg+j8YbKa/AOzz4ECSn71N6gaVAnDYpNmpXJZnMRrA2tRl3Mcfs9o5EBykT/iH5U+OL1V2M78VNTJISTG4VkO+nzohluUe1jAK3J2HOE= 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=Xg/259g9; arc=none smtp.client-ip=209.85.128.53 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="Xg/259g9" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4852a9c6309so21248375e9.0 for ; Fri, 13 Mar 2026 13:58:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435538; x=1774040338; 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=YSXSOnbGFJdo6hwFszubEP6hGZ4DJRtieMzbVIvPjZM=; b=Xg/259g9Ew2Fi/sRw8BaWvyPSe4FmFyRaDqWQ7GNS5i9uoS2bPqInTy9CAT75DnKX1 4pDzT9b8oo4UskjRuJkORsGlkQNsQ+0N/ZHBcpT6bJaqoCIIqXG+IAWBotGKp/UQJlQg leXUq1leggs5NjmrO5Jy9T1bBUPpj92MIi7VNcH0TZIMGdrQ+z9GJTGcda0sW4C+IIDE ihRZWM0cY7KMVhqOz/iZXTB1szOY+MOvclwDnnAo1LyvYBmTfwdnLpw9sHFb/zXCRrpb MmBXUFyNcoHKSQBrZRsjMCRGBbydJ7hvMjFIwm3tLlnucisb3UVwrYriPEubCxeVSw4Y ZK0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435538; x=1774040338; 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=YSXSOnbGFJdo6hwFszubEP6hGZ4DJRtieMzbVIvPjZM=; b=V6rJTtLNxMPdSxVW8GgVFqb6QX8uq2t4olSu2H7NaHUDA8SEscwofNFcAprjvcbdJQ 7zVvD/XcbWMEq+J5zqve9SDchhC24rmqeD6YKCqqAl3wbWzhiunmgwDFrItD+j5N0yhh d7+5oTwqw0sOfbgdkVXzgkYCIj2Bq78u5xbmtJITkxZ8BBgvF8viqMzEbnOTqgN32Khq 5zDbZ50ZlRk4TUNEEuRI7bz+EuINqZFGA4WmP8sqdRYSftohsuAWA5Gpm1xvuPM6vlUQ Br/T/pUaiuVxgBXqQCbFSHmWPwypm/WEYcIDVBjaBJqdxLI69iN3KZjlu9FMYPW4HBta fZXQ== X-Forwarded-Encrypted: i=1; AJvYcCUMqzGqCFzSjARZYSur/HyDaQ+ehMsi2nPDdXjTDPdckD1ZzDbSTfb1k3+NA7/0sdA1Z1lj6c4aRGpjUmI=@vger.kernel.org X-Gm-Message-State: AOJu0YyentwKNWG257AiMFbt+d5RzuD2PRornPYTjWPF/DJcQkt4HjZR OQtMoMMx4VBu+RHZnyM6ecdGxdrb2W4k7DQal7Eavqkv3Ds7RC/iLCAoeKxo30IEwkY= X-Gm-Gg: ATEYQzwkeiXCHrWVpVOXTn+Qe7SB4QkBkXoGzhWqHXmGe/4+uB+f9igwIRhP0t9go0I okU7RdEBin0gvBBj/a4K+QPKxwr9c1oxIfUW997/FhJVXmVuOshF2da++YA+4cXPeqmOYIOucFL ySdFLohRPgZAvdw1eiK9DaefsX30tIBElvEj3slordluVLZVUeVLzycx/ll6FZVrQNdHIcMdxZc HnFbVNZEvk+bP23MDwf3RCMSFWpdoZw2RBlAZ5VwONH60ZXAmRTKcZdtxQeIC5EalmXylOwtxGL RLhWMOApOwMWybP5PqXSJQYsOlIGhjqzaz+lhEhoyklFf9dzIWsBJrLlU5GbXhvz8prrz3Iv6Fn MIyGHffHqBLTbiLPyW9F09WxcfkdBr4iJPddVwKV27dWVLw0/FTxNjsXE1hdDqwGsUa2Vuh35kn 6eBlS92HcYr4M1ZSfJYNFQ X-Received: by 2002:a05:600c:1f8d:b0:477:7af8:c8ad with SMTP id 5b1f17b1804b1-48556711419mr77064255e9.31.1773435538040; Fri, 13 Mar 2026 13:58:58 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.58.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:58:56 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:35 -0300 Subject: [PATCH 4/8] selftests: livepatch: functions: Introduce check_sysfs_exists 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: <20260313-lp-tests-old-fixes-v1-4-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=1140; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=VRVN7RkiGrgm69aDuMpcOshBDCo1eHbzdD2OnFzwxC8=; b=j44w73MHAVUmex0H1jUYBDxUa2M7EmxhvQ7ovZCyWcxRTXhf661foGU7zlt8GToTphwQO3QH+ 9qbyHFqgc/mCDhnhbX2ucfZhx1+sGhqjDLZRV/6h3nOQKdO9mPtiBNM X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= Return 0 if the livepatch sysfs attribute don't exists, and 1 otherwise. This new function will be used in the next patches. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/functions.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tools/testing/selftests/livepatch/functions.sh b/tools/testing= /selftests/livepatch/functions.sh index 8ec0cb64ad94a..781346d6e94e0 100644 --- a/tools/testing/selftests/livepatch/functions.sh +++ b/tools/testing/selftests/livepatch/functions.sh @@ -339,6 +339,20 @@ function check_result { fi } =20 +# check_sysfs_exists(modname, attr) - check sysfs attribute existence +# modname - livepatch module creating the sysfs interface +# attr - attribute name to be checked +function check_sysfs_exists() { + local mod=3D"$1"; shift + local attr=3D"$1"; shift + + if [[ ! -f "$SYSFS_KLP_DIR/$mod/$attr" ]]; then + return 0 + fi + + return 1 +} + # check_sysfs_rights(modname, rel_path, expected_rights) - check sysfs # path permissions # modname - livepatch module creating the sysfs interface --=20 2.52.0 From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 B5B2B382F1E for ; Fri, 13 Mar 2026 20:59:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435549; cv=none; b=MEhtFkyC7y+wD/UP5QCfJufUJrf6B3+tcyO+K31lVuukxlZnCsEr8nIN2u/U+stJYn581W7rQNHGLF+JWi5pNo3W5ZdnG7on3UQPnjgSb1FFlaszaAzBa9WlGjFUvw/+3BNfTJxhaiZfKHEZsuO+tN2JYDE8H+lwsNflXA3Nb4Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435549; c=relaxed/simple; bh=5yfrb4REjla72hyuadKvBD65CovUyvEY7fUSzyt+1JE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WZbxHg5W83zros/ulGtWs0fl+CctUtxzQRuosUJXOgdp30a/BFNifk5Qn2hqbrvXkPh/UOH4aKLKkTT1SYKQV8UFXLp8JF74MMwdkE1iLANAVIfjfoNCzqRvUkYjUBnfjwLPrxuCM+y3VbnEfOA7jYydfSNyHVw6s2Jhl4XMek8= 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=Tdb07EKE; arc=none smtp.client-ip=209.85.128.46 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="Tdb07EKE" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-48334ee0aeaso24421825e9.1 for ; Fri, 13 Mar 2026 13:59:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435543; x=1774040343; 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=JUlmk5Uej4Q4zAW57SpQCMgrWe47+shWlWuNt0RZn1k=; b=Tdb07EKEWDRIoh1bQToLzd4cD8nKezLZqPgVgGVxU1NuWDRNK57GQuUNtija/U1p28 ePlcdg5WNMV7cl3/HIjHMIrY+ye8NkaskvMGLNezYTfAtRdpS9yuTZ9R1uXgrChyN4E/ yR5FZkzL3qs2RXUmY+lu9PX+FM4VG7A6fVw+GcXfxYtex46TCv5ZOQlGmi2PFKhOzhUB 4+/hWNqoG/HZGvUj8dy2k5nPlF0y5hRrHTRR5N83bpya3KKFDFZMr9nxBs9z3IpxmiE/ d8L25cnL/iA23W5t7M8yy3uBe+KFPfQATMIfEL2pKZCNaXt0grrGZWJdo7pRQBhYHB0T dk9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435543; x=1774040343; 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=JUlmk5Uej4Q4zAW57SpQCMgrWe47+shWlWuNt0RZn1k=; b=KaZ1J7UfVQwVKaH+12cWxTkyP9OTnQyogZbiuJLnTqwF+KuCqe87XwLf9tpXpL0USW 3z9fSx6d0k9uvJtNz5S+WI2f8SWGSBkr2rmN6qhIC2fDVQaqtUwDwSEO/Vb6U4I94mv6 FBsqtgc+npwfiUW+prMuuHCoGzUIlZifQxoVVDfnQyObG7IlzP8zSwJBAwTYZ3kmmqAJ 1pUcXkLKNAP0byAOaxn0RCkJoZVt5RslQpsU3EtD7XqKNJdi2W1sVZ+FtYyspTJH7HBS 55f7iJ5YMXY5CgifdA6zsf5pRMXo9/C5uxD9KknVygf+O0sNVNfSkmnAEdX0XlCMPN6M SXZg== X-Forwarded-Encrypted: i=1; AJvYcCWqsA8GtdtP2DasKM2PV9VT/anzRlRMBZPCWJtwz7hnqGr+6TDgmES+1mWwzCa3mIv1/EY7TY+Ga6RK47k=@vger.kernel.org X-Gm-Message-State: AOJu0Yz2Nqu/T+x+2hJYOqqGa570Zhn3cQ4VEJ2yHoEcXYueG+1lBZeC ON9G4/cxX8K7sKwyb37qnrYLL+aoyeaRIjSHi0u6OwIe5zEFYDvwubbnPLAUwDQdZF5Ap96Z2sJ z96geGvw= X-Gm-Gg: ATEYQzxkG274VsLR8y+/o1lukzzqT0TBirUATQ2NvP/eARQ8bs01BFlz3Sej8QKN/l2 SckGevxPJLxo5/8cEKlAn92UE6yKvoNEgFl6cFCHssUycptUObln0BHUYORTpV9uo1LF4CMpHx/ eg8fZQwgT7/G8kZKICOOKsXOl2M0lGcHI8e6ZmXth2/ys+EUqpc/BfPoMz3sR6lBr4Xn5YNzV+o jSIE91+undW6z0GeVNwVJrevyF/ZIyLt3hUoj8rZUt7Ety+OfghB1CkLfJ8kqWtcR5aiUJ7Yafh rwX/SlvLcjZCqXfoPSLLbZ4sG3pKDyR3kWmkT3xtw01h63t/UO8oJM3f3GvALKg521im5wWcZUT By9V3X9AW/KwUEOxBJ3C/1ni7uAqRr20LHE/PrkzmAa/wtsU2TiE/gT4uiP+hpmH5SP6TEoh7Na 28fKgkUrVdhtennaMl1zkq X-Received: by 2002:a05:600c:3b90:b0:485:345b:ccb1 with SMTP id 5b1f17b1804b1-48556720f86mr72676115e9.27.1773435542687; Fri, 13 Mar 2026 13:59:02 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.58.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:59:01 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:36 -0300 Subject: [PATCH 5/8] selftests: livepatch: sysfs: Split tests of replace attribute 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: <20260313-lp-tests-old-fixes-v1-5-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=6599; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=5yfrb4REjla72hyuadKvBD65CovUyvEY7fUSzyt+1JE=; b=IqJehXZ8pHnYEfwizMu/gVOB6kUw2ak2avpUcTUa8h9svETYAo3obiieKHnthJ1fojDANuMtN UEnxmJijSNAATMeixB7B1zX3mHBE87dfSXPfQcl7GdNhlH2MQbBDTHS X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= In order to run the selftests on older kernels, split the sysfs tests to another file, making it able to skip the tests when the attributes don't exists. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/Makefile | 1 + .../selftests/livepatch/test-sysfs-replace-attr.sh | 75 ++++++++++++++++++= ++++ tools/testing/selftests/livepatch/test-sysfs.sh | 48 -------------- 3 files changed, 76 insertions(+), 48 deletions(-) diff --git a/tools/testing/selftests/livepatch/Makefile b/tools/testing/sel= ftests/livepatch/Makefile index a080eb54a215d..b95aa6e78a273 100644 --- a/tools/testing/selftests/livepatch/Makefile +++ b/tools/testing/selftests/livepatch/Makefile @@ -10,6 +10,7 @@ TEST_PROGS :=3D \ test-state.sh \ test-ftrace.sh \ test-sysfs.sh \ + test-sysfs-replace-attr.sh \ test-syscall.sh \ test-kprobe.sh =20 diff --git a/tools/testing/selftests/livepatch/test-sysfs-replace-attr.sh b= /tools/testing/selftests/livepatch/test-sysfs-replace-attr.sh new file mode 100755 index 0000000000000..d1051211fe320 --- /dev/null +++ b/tools/testing/selftests/livepatch/test-sysfs-replace-attr.sh @@ -0,0 +1,75 @@ +#!/bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2022 Song Liu + +. $(dirname $0)/functions.sh + +MOD_LIVEPATCH=3Dtest_klp_livepatch + +setup_config + +# - load a livepatch and verifies the sysfs replace attribute exists + +start_test "check sysfs replace attribute" + +load_lp $MOD_LIVEPATCH + +check_sysfs_exists "$MOD_LIVEPATCH" "replace" +file_exists=3D$? + +disable_lp $MOD_LIVEPATCH + +unload_lp $MOD_LIVEPATCH + +if [[ "$file_exists" =3D=3D "0" ]]; then + skip "sysfs attribute doesn't exists." +fi + +start_test "sysfs test replace enabled" + +MOD_LIVEPATCH=3Dtest_klp_atomic_replace +load_lp $MOD_LIVEPATCH replace=3D1 + +check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--" +check_sysfs_value "$MOD_LIVEPATCH" "replace" "1" + +disable_lp $MOD_LIVEPATCH +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/$MOD_LIVEPATCH.ko replace=3D1 +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: '$MOD_LIVEPATCH': starting patching transition +livepatch: '$MOD_LIVEPATCH': completing patching transition +livepatch: '$MOD_LIVEPATCH': patching complete +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled +livepatch: '$MOD_LIVEPATCH': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH': starting unpatching transition +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +% rmmod $MOD_LIVEPATCH" + +start_test "sysfs test replace disabled" + +load_lp $MOD_LIVEPATCH replace=3D0 + +check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--" +check_sysfs_value "$MOD_LIVEPATCH" "replace" "0" + +disable_lp $MOD_LIVEPATCH +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/$MOD_LIVEPATCH.ko replace=3D0 +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: '$MOD_LIVEPATCH': starting patching transition +livepatch: '$MOD_LIVEPATCH': completing patching transition +livepatch: '$MOD_LIVEPATCH': patching complete +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled +livepatch: '$MOD_LIVEPATCH': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH': starting unpatching transition +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +% rmmod $MOD_LIVEPATCH" + +exit 0 diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testin= g/selftests/livepatch/test-sysfs.sh index 58fe1d96997cd..0865a7959496a 100755 --- a/tools/testing/selftests/livepatch/test-sysfs.sh +++ b/tools/testing/selftests/livepatch/test-sysfs.sh @@ -20,7 +20,6 @@ check_sysfs_rights "$MOD_LIVEPATCH" "" "drwxr-xr-x" check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--" check_sysfs_value "$MOD_LIVEPATCH" "enabled" "1" check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------" -check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--" check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--" check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--" @@ -88,53 +87,6 @@ test_klp_callbacks_demo: post_unpatch_callback: vmlinux livepatch: 'test_klp_callbacks_demo': unpatching complete % rmmod test_klp_callbacks_demo" =20 -start_test "sysfs test replace enabled" - -MOD_LIVEPATCH=3Dtest_klp_atomic_replace -load_lp $MOD_LIVEPATCH replace=3D1 - -check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--" -check_sysfs_value "$MOD_LIVEPATCH" "replace" "1" - -disable_lp $MOD_LIVEPATCH -unload_lp $MOD_LIVEPATCH - -check_result "% insmod test_modules/$MOD_LIVEPATCH.ko replace=3D1 -livepatch: enabling patch '$MOD_LIVEPATCH' -livepatch: '$MOD_LIVEPATCH': initializing patching transition -livepatch: '$MOD_LIVEPATCH': starting patching transition -livepatch: '$MOD_LIVEPATCH': completing patching transition -livepatch: '$MOD_LIVEPATCH': patching complete -% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled -livepatch: '$MOD_LIVEPATCH': initializing unpatching transition -livepatch: '$MOD_LIVEPATCH': starting unpatching transition -livepatch: '$MOD_LIVEPATCH': completing unpatching transition -livepatch: '$MOD_LIVEPATCH': unpatching complete -% rmmod $MOD_LIVEPATCH" - -start_test "sysfs test replace disabled" - -load_lp $MOD_LIVEPATCH replace=3D0 - -check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--" -check_sysfs_value "$MOD_LIVEPATCH" "replace" "0" - -disable_lp $MOD_LIVEPATCH -unload_lp $MOD_LIVEPATCH - -check_result "% insmod test_modules/$MOD_LIVEPATCH.ko replace=3D0 -livepatch: enabling patch '$MOD_LIVEPATCH' -livepatch: '$MOD_LIVEPATCH': initializing patching transition -livepatch: '$MOD_LIVEPATCH': starting patching transition -livepatch: '$MOD_LIVEPATCH': completing patching transition -livepatch: '$MOD_LIVEPATCH': patching complete -% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled -livepatch: '$MOD_LIVEPATCH': initializing unpatching transition -livepatch: '$MOD_LIVEPATCH': starting unpatching transition -livepatch: '$MOD_LIVEPATCH': completing unpatching transition -livepatch: '$MOD_LIVEPATCH': unpatching complete -% rmmod $MOD_LIVEPATCH" - start_test "sysfs test stack_order value" =20 load_lp $MOD_LIVEPATCH --=20 2.52.0 From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 56B3C382362 for ; Fri, 13 Mar 2026 20:59:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435554; cv=none; b=mo9qQDJagBZpp2RqgzLwCbINdtZW9rNe40qHhkEYsvkgtpCmga8a90UPVTpC3FKH2Fi5NQmfUHSGd/dqSu3Llb9MJII2RxYseES3lqY1LhkYgaL2I9cknlHvLz6x2Mmj68xbLxobXp+IHh+BjXo4xGwoJMRWTr/kV9a0S7OmePs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435554; c=relaxed/simple; bh=dAnCHBD0kYfQriAqJYl89NUP2OzkcdbdI/rMejo7qBM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=EG3ZNHLCAta0+in117NhkHtbLyZIQVJ8HtQ2sFbwQSQPv7J6q9Wbzjzr2JRGufMjgJFjNfEeA4YGYk/JtxIq7XF0jezWk3xUvoPmhG/IOcqgq5ZnEPg85Ey4WZ011IwVNQo54p+/yBm2d7bQpe0U9vzk3Teo48JrkpswpQ0pH5g= 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=IWnbu5K5; arc=none smtp.client-ip=209.85.128.53 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="IWnbu5K5" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-48374014a77so25194955e9.3 for ; Fri, 13 Mar 2026 13:59:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435547; x=1774040347; 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=g0feFC5vZEgNUR6jUa/fsGovJx254Pm7zg4y/sKLrFg=; b=IWnbu5K5RB5JUI23fOhqonepbrdEEmwrhmKDGrDOBJuWQLxPKP6//rSazNjM24ceoE qkvJKhpNZ7zAlppSfdj7chn7H3LQ93Q9MtzZThIX5K/aanQF+p77YhliOYJ+TqGGC4ai eagyYOOEOsHuhKvDlmZh34L+FHOJowxL0HVHoDAWXj/tZ477WY1vcQaGC//8kIYxjh7N 4zvfh14lfSgTsGuc8R/xYJZDgl0PRKQiwSx7xgSAelXpRfn6hdcs4A3gO4DaxcecA9jl kNC+7d7OllFiom2G5iXbPvbg6bYnVBxJiuZdo8/N+HCC5VNPWSnwkNarkfty25leqsn3 d8nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435547; x=1774040347; 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=g0feFC5vZEgNUR6jUa/fsGovJx254Pm7zg4y/sKLrFg=; b=fT9NLozDN9JRBWZ/okaANUf+OFSI1EggDzbgUPcMEL5n3eMg/9KHmPGZ6TZm4c+Ecj iJbTQdvLQjsK1kbd+veKstk7fF0FjLowouHEUEaS3HtN5/7jTI6Dg4+iBx7IXnfzeg16 YV8Bko/2n45uX0h91IiI/h7DUZxJx1282rAggdjP1nekgYi10mQr7J1JvQh1wi05j/E/ cMifkIYsg3zNh4uqzaWHn9HOviOl2GgBYg2JGUWd3fzHIgusbTy9kvNMkLxLGc7l7tDN UWYpfn3WQNLA/goG2dNYL9WFiMFNp/TGVeCXV2tiCGg+Y67D/7/CYtmUD0GgHuNLPshl BMqg== X-Forwarded-Encrypted: i=1; AJvYcCWR0PYMjSDodOk8quImmsaaYmPBR2lb+9mbiuj4X4Pvj/slJe37DNbbXsMcAufSGdkUQkvaTvdlEfCJ7ts=@vger.kernel.org X-Gm-Message-State: AOJu0YxNM0dPNG6oQoWuX4Tky0xeHAINZJsn9Do1UHNS0w75WcJkPoLH qzuEG7zgm1BltS/3QdwW1mOpFQzggbPaJ0gItb7WxfpQtdCEn/rCNO958J9woaDrXjk= X-Gm-Gg: ATEYQzxkMQm3lxgc6s26cO73DEiE1UwlLR+XT4MqnI1AVkyo+RzITg0jxKt/Jo/l2HX tzG09ahJOFGH7P5lJmGQQGl/hbFuQZ5tIHcfYp+EOZhbxzNf/vGkekDGlM0WCYxvWo2e5yU86wc ZjlNcwJeueimScqjJl5cE91yh8/cTJsYazuNqn2YZXs+M/DJlSmDZN/cXINxj3F/lWWb5+rVE+Q QroiJh9DkZMyMnry5Xe4Yv/WqGZ8oxZHAWy82eNnK3twG3lWGCIOmU/bD7v1DQLd1voFzMov6TB j24SJeg6FcDDuePrapDVpa46ATEz32CKNp6En2tPzWsgfe+2/HL7vq6rvXrLoJqsA49T+wNmZWJ s1oFgnDFdgCA1n+PBm+N2/V3ducRNdspxYZtyhUj5KrPtmgzjF89NczmBcvX/9HUw/z944JMDqy Z0fP+u7RujSc0Jza3T7IRj X-Received: by 2002:a05:600c:8286:b0:485:34b3:8585 with SMTP id 5b1f17b1804b1-485566d6dffmr72119545e9.8.1773435547219; Fri, 13 Mar 2026 13:59:07 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.59.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:59:06 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:37 -0300 Subject: [PATCH 6/8] selftests: livepatch: sysfs: Split tests of stack_order attribute 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: <20260313-lp-tests-old-fixes-v1-6-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=9545; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=dAnCHBD0kYfQriAqJYl89NUP2OzkcdbdI/rMejo7qBM=; b=Y2RmJfSytx/PBjCk0gfL7cla8FAo0I3qGVTE6GweDQkji0rgmqZI4CkeR9tTXN5bQdiDwtSx5 HvSmNp/yxRkBBruCGlnxky4fqPa/Uk/q0q0W7KinJthXgb0Tj4eBLB9 X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= In order to run the selftests on older kernels, split the sysfs tests to another file, making it able to skip the tests when the attributes don't exists. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/Makefile | 1 + .../selftests/livepatch/test-sysfs-stack-attr.sh | 121 +++++++++++++++++= ++++ tools/testing/selftests/livepatch/test-sysfs.sh | 71 ------------ 3 files changed, 122 insertions(+), 71 deletions(-) diff --git a/tools/testing/selftests/livepatch/Makefile b/tools/testing/sel= ftests/livepatch/Makefile index b95aa6e78a273..1982056670fc2 100644 --- a/tools/testing/selftests/livepatch/Makefile +++ b/tools/testing/selftests/livepatch/Makefile @@ -11,6 +11,7 @@ TEST_PROGS :=3D \ test-ftrace.sh \ test-sysfs.sh \ test-sysfs-replace-attr.sh \ + test-sysfs-stack-attr.sh \ test-syscall.sh \ test-kprobe.sh =20 diff --git a/tools/testing/selftests/livepatch/test-sysfs-stack-attr.sh b/t= ools/testing/selftests/livepatch/test-sysfs-stack-attr.sh new file mode 100755 index 0000000000000..2b8b72fe1f6dc --- /dev/null +++ b/tools/testing/selftests/livepatch/test-sysfs-stack-attr.sh @@ -0,0 +1,121 @@ +#!/bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2022 Song Liu + +. $(dirname $0)/functions.sh + +MOD_LIVEPATCH=3Dtest_klp_livepatch +MOD_LIVEPATCH2=3Dtest_klp_callbacks_demo +MOD_LIVEPATCH3=3Dtest_klp_syscall + +setup_config + +# - load a livepatch and verifies the sysfs stack_order attribute exists + +start_test "check sysfs stack_order attribute" + +load_lp $MOD_LIVEPATCH + +check_sysfs_exists "$MOD_LIVEPATCH" "stack_order" +file_exists=3D$? + +disable_lp $MOD_LIVEPATCH + +unload_lp $MOD_LIVEPATCH + +if [[ "$file_exists" =3D=3D "0" ]]; then + skip "sysfs attribute doesn't exists." +fi + +start_test "check sysfs stack_order permissions" + +load_lp $MOD_LIVEPATCH + +check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--" +check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" + +disable_lp $MOD_LIVEPATCH + +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/$MOD_LIVEPATCH.ko +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: '$MOD_LIVEPATCH': starting patching transition +livepatch: '$MOD_LIVEPATCH': completing patching transition +livepatch: '$MOD_LIVEPATCH': patching complete +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled +livepatch: '$MOD_LIVEPATCH': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH': starting unpatching transition +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +% rmmod $MOD_LIVEPATCH" + +start_test "sysfs test stack_order value" + +load_lp $MOD_LIVEPATCH + +check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" + +load_lp $MOD_LIVEPATCH2 + +check_sysfs_value "$MOD_LIVEPATCH2" "stack_order" "2" + +load_lp $MOD_LIVEPATCH3 + +check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "3" + +disable_lp $MOD_LIVEPATCH2 +unload_lp $MOD_LIVEPATCH2 + +check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" +check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "2" + +disable_lp $MOD_LIVEPATCH3 +unload_lp $MOD_LIVEPATCH3 + +disable_lp $MOD_LIVEPATCH +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/$MOD_LIVEPATCH.ko +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: '$MOD_LIVEPATCH': starting patching transition +livepatch: '$MOD_LIVEPATCH': completing patching transition +livepatch: '$MOD_LIVEPATCH': patching complete +% insmod test_modules/$MOD_LIVEPATCH2.ko +livepatch: enabling patch '$MOD_LIVEPATCH2' +livepatch: '$MOD_LIVEPATCH2': initializing patching transition +$MOD_LIVEPATCH2: pre_patch_callback: vmlinux +livepatch: '$MOD_LIVEPATCH2': starting patching transition +livepatch: '$MOD_LIVEPATCH2': completing patching transition +$MOD_LIVEPATCH2: post_patch_callback: vmlinux +livepatch: '$MOD_LIVEPATCH2': patching complete +% insmod test_modules/$MOD_LIVEPATCH3.ko +livepatch: enabling patch '$MOD_LIVEPATCH3' +livepatch: '$MOD_LIVEPATCH3': initializing patching transition +livepatch: '$MOD_LIVEPATCH3': starting patching transition +livepatch: '$MOD_LIVEPATCH3': completing patching transition +livepatch: '$MOD_LIVEPATCH3': patching complete +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH2/enabled +livepatch: '$MOD_LIVEPATCH2': initializing unpatching transition +$MOD_LIVEPATCH2: pre_unpatch_callback: vmlinux +livepatch: '$MOD_LIVEPATCH2': starting unpatching transition +livepatch: '$MOD_LIVEPATCH2': completing unpatching transition +$MOD_LIVEPATCH2: post_unpatch_callback: vmlinux +livepatch: '$MOD_LIVEPATCH2': unpatching complete +% rmmod $MOD_LIVEPATCH2 +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH3/enabled +livepatch: '$MOD_LIVEPATCH3': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH3': starting unpatching transition +livepatch: '$MOD_LIVEPATCH3': completing unpatching transition +livepatch: '$MOD_LIVEPATCH3': unpatching complete +% rmmod $MOD_LIVEPATCH3 +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled +livepatch: '$MOD_LIVEPATCH': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH': starting unpatching transition +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +% rmmod $MOD_LIVEPATCH" + +exit 0 diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testin= g/selftests/livepatch/test-sysfs.sh index 0865a7959496a..3327bde59e73d 100755 --- a/tools/testing/selftests/livepatch/test-sysfs.sh +++ b/tools/testing/selftests/livepatch/test-sysfs.sh @@ -5,8 +5,6 @@ . $(dirname $0)/functions.sh =20 MOD_LIVEPATCH=3Dtest_klp_livepatch -MOD_LIVEPATCH2=3Dtest_klp_callbacks_demo -MOD_LIVEPATCH3=3Dtest_klp_syscall =20 setup_config =20 @@ -20,8 +18,6 @@ check_sysfs_rights "$MOD_LIVEPATCH" "" "drwxr-xr-x" check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--" check_sysfs_value "$MOD_LIVEPATCH" "enabled" "1" check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------" -check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--" -check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--" check_sysfs_value "$MOD_LIVEPATCH" "transition" "0" check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--" @@ -87,71 +83,4 @@ test_klp_callbacks_demo: post_unpatch_callback: vmlinux livepatch: 'test_klp_callbacks_demo': unpatching complete % rmmod test_klp_callbacks_demo" =20 -start_test "sysfs test stack_order value" - -load_lp $MOD_LIVEPATCH - -check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" - -load_lp $MOD_LIVEPATCH2 - -check_sysfs_value "$MOD_LIVEPATCH2" "stack_order" "2" - -load_lp $MOD_LIVEPATCH3 - -check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "3" - -disable_lp $MOD_LIVEPATCH2 -unload_lp $MOD_LIVEPATCH2 - -check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1" -check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "2" - -disable_lp $MOD_LIVEPATCH3 -unload_lp $MOD_LIVEPATCH3 - -disable_lp $MOD_LIVEPATCH -unload_lp $MOD_LIVEPATCH - -check_result "% insmod test_modules/$MOD_LIVEPATCH.ko -livepatch: enabling patch '$MOD_LIVEPATCH' -livepatch: '$MOD_LIVEPATCH': initializing patching transition -livepatch: '$MOD_LIVEPATCH': starting patching transition -livepatch: '$MOD_LIVEPATCH': completing patching transition -livepatch: '$MOD_LIVEPATCH': patching complete -% insmod test_modules/$MOD_LIVEPATCH2.ko -livepatch: enabling patch '$MOD_LIVEPATCH2' -livepatch: '$MOD_LIVEPATCH2': initializing patching transition -$MOD_LIVEPATCH2: pre_patch_callback: vmlinux -livepatch: '$MOD_LIVEPATCH2': starting patching transition -livepatch: '$MOD_LIVEPATCH2': completing patching transition -$MOD_LIVEPATCH2: post_patch_callback: vmlinux -livepatch: '$MOD_LIVEPATCH2': patching complete -% insmod test_modules/$MOD_LIVEPATCH3.ko -livepatch: enabling patch '$MOD_LIVEPATCH3' -livepatch: '$MOD_LIVEPATCH3': initializing patching transition -livepatch: '$MOD_LIVEPATCH3': starting patching transition -livepatch: '$MOD_LIVEPATCH3': completing patching transition -livepatch: '$MOD_LIVEPATCH3': patching complete -% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH2/enabled -livepatch: '$MOD_LIVEPATCH2': initializing unpatching transition -$MOD_LIVEPATCH2: pre_unpatch_callback: vmlinux -livepatch: '$MOD_LIVEPATCH2': starting unpatching transition -livepatch: '$MOD_LIVEPATCH2': completing unpatching transition -$MOD_LIVEPATCH2: post_unpatch_callback: vmlinux -livepatch: '$MOD_LIVEPATCH2': unpatching complete -% rmmod $MOD_LIVEPATCH2 -% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH3/enabled -livepatch: '$MOD_LIVEPATCH3': initializing unpatching transition -livepatch: '$MOD_LIVEPATCH3': starting unpatching transition -livepatch: '$MOD_LIVEPATCH3': completing unpatching transition -livepatch: '$MOD_LIVEPATCH3': unpatching complete -% rmmod $MOD_LIVEPATCH3 -% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled -livepatch: '$MOD_LIVEPATCH': initializing unpatching transition -livepatch: '$MOD_LIVEPATCH': starting unpatching transition -livepatch: '$MOD_LIVEPATCH': completing unpatching transition -livepatch: '$MOD_LIVEPATCH': unpatching complete -% rmmod $MOD_LIVEPATCH" - exit 0 --=20 2.52.0 From nobody Tue Apr 7 09:16:08 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 BCA233D5667 for ; Fri, 13 Mar 2026 20:59:13 +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=1773435557; cv=none; b=GlhZvpP3OcMEqJXhx0hGv21/2D90v7WEabxlNtaKIF254e1st4XJr6/uVyWrb+UBHR52Xepavf1gtq9ho1WHAOAS09xZNQGnyoKVG820KFOwKMPkFxrYByTlvxWEvOfM2HAazkrW07yl2rsj37VjNIuDRarqhMqmQL5Yx0nWzR0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435557; c=relaxed/simple; bh=7miD+iiagzq5C2pRyxmlazC6IojzoSp0vrZTCyoeCrc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CpF7uUfiatCKKmzdLeQBrW0iHgfURRF+GES9KEDxnMcp/NijgOF4HMDD46qjAq3P4568EqhwW/Q9zfoBWXhxQVAcuRQOnLqg4StviBCafD+qc125CBHEY+V3aroMPhxxsMwaW+48EPfT3cnNOe7Q3O/RNjHskMtXXWbOTP0nNMc= 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=RzDVTsBb; 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="RzDVTsBb" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4853f2826f7so26128005e9.1 for ; Fri, 13 Mar 2026 13:59:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435552; x=1774040352; 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=CtpindbIzqkRgW7Z2vVcHsOf0RGWeyCQynvMr4lGYeE=; b=RzDVTsBb4+kQ4+bDTyzmjLlcHSSoP9B8q6WireKq4OM1N4oQzwSYLdL3HhfbM9H+Qz eKbEfuH2DJss0wJE/k6OWjZbW4ECo2LFRBWPFsW7EQf+37BbAAz8Ki2buija+fWMPv01 niOV7riQGMzsPK7IP7p+YKqhD3QRH8H1YJc+oBta5t9+jutVY2VEjh4X900fmz917FMX w5sh/LzNxXQT3U4fvnV3U7EiZhhM3l1tzBmkLo/FDBd3Fc8f7D8GluJ380UFAJ2KB+21 6MncctgOPIrpzrP0QJ8fKkXkrQE3fF3c51mDCoGVGVWkfe+qUzhSxA/8vJ8gaAgtBU+g dshQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435552; x=1774040352; 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=CtpindbIzqkRgW7Z2vVcHsOf0RGWeyCQynvMr4lGYeE=; b=Et3PPUcB3nr5vmD2W99EASbkmZDVcIGL6lgzJInYNbx1/glNZE7P/OilfmWEM6Zty7 F7GRToZs5BMJi4hAZWnHbXFO/h6rFUVlaCgLxKVG+zwD7sJV/wc7AJpD9VIrGRlXEZTQ XA2p3NKC7GVObQ5WFpbzANnWCiMCkgkdMWNECHpuGx8YR6oPs543J+qLYNt0u+oE1xnH ily3HwZFnGVD+n5z0ovVwk9AlQZLD2ZKshXCes8lKuRNn/1gw6QsKTZNuHF52BfWPghN S8nXaMXaAypc6pIRJUxTurayWHF6oSChLnLQ+NQwArmWtdNJ6o9yLww7O/X10IeMfUYy ZwMw== X-Forwarded-Encrypted: i=1; AJvYcCVeoTP+ed2ujHnKY8ykAxSGrHCfO8qaev+YOAwfgOg2j09XWTSx6MamZV6kNJv7D8WJTKygMoDvHRBFZPc=@vger.kernel.org X-Gm-Message-State: AOJu0Yyy55xLJuedgwF/q1Khgtm1uZgE+7s+f5WtUvls4Oy/5X8cYWyX 68Mj2wEEgOSYWB4ufKJXkiDELRzQS2NWrspNSV/anQKyZ3a3JgC139Nw2lXzloQIG0Q= X-Gm-Gg: ATEYQzx8PQGQ2WUIdYCALyU28VpJHbWoFMT9Q5IjT1yE+9l1OXMshOjdr8kJ10ZETMF wq9Avym2vKVrEnohh7MBW0aUNxafMSDzT3QWFQzlaFC/s5KjEluxTN2xGt8aIZdkm7vorNKrglX Yme3AKSb4DEKfa5rnA3JLRghbtOhymVhyLCt2F7CBS5c5XBNJkEK/yyHYn5pcuxq6novKAo6TXp 8SkqoV5ZHauIzTL0KHpC55nUHEiV5W3Pc3mPCmRzR3Co94zbcgtXdhZFcgeE6lFZJ4JHPPHMd5B Nt4dpas6t4I3+P4s/HlEYkp9thRWtYmUShl/l2QYjy176nVGCVzwpp+l6Jw6QelrlSgeKMZYM+X mBroUSCsiVYcXLm8PzCTsO+RAWTFXRiUq89QOAhVea+ksKi3KgP2+sBsByTMb3tjI7sPzABEvjZ fEJmiokeZu53nZ4hqI5ucm X-Received: by 2002:a05:600c:4f8f:b0:485:40c6:f507 with SMTP id 5b1f17b1804b1-48556711c6cmr83526535e9.30.1773435551766; Fri, 13 Mar 2026 13:59:11 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.59.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:59:10 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:38 -0300 Subject: [PATCH 7/8] selftests: livepatch: sysfs: Split tests of patched attribute 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: <20260313-lp-tests-old-fixes-v1-7-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=8340; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=7miD+iiagzq5C2pRyxmlazC6IojzoSp0vrZTCyoeCrc=; b=uqFFQEX3HHu+zZW7rPQBC5tgv3eZjksDN3DnrZZTJSoo2WkJagFHOjl28pWkfB32qKuM46tb1 cUCGhosNsX3CVCG+M5/SA0H3NlXSuYSkLfbexViZpdixDx9EgM6z4Gi X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= In order to run the selftests on older kernels, split the sysfs tests to another file, making it able to skip the tests when the attributes don't exists. No functional changes. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/Makefile | 1 + .../selftests/livepatch/test-sysfs-patched-attr.sh | 95 ++++++++++++++++++= ++++ tools/testing/selftests/livepatch/test-sysfs.sh | 45 ---------- 3 files changed, 96 insertions(+), 45 deletions(-) diff --git a/tools/testing/selftests/livepatch/Makefile b/tools/testing/sel= ftests/livepatch/Makefile index 1982056670fc2..31ca4669b6ae7 100644 --- a/tools/testing/selftests/livepatch/Makefile +++ b/tools/testing/selftests/livepatch/Makefile @@ -12,6 +12,7 @@ TEST_PROGS :=3D \ test-sysfs.sh \ test-sysfs-replace-attr.sh \ test-sysfs-stack-attr.sh \ + test-sysfs-patched-attr.sh \ test-syscall.sh \ test-kprobe.sh =20 diff --git a/tools/testing/selftests/livepatch/test-sysfs-patched-attr.sh b= /tools/testing/selftests/livepatch/test-sysfs-patched-attr.sh new file mode 100755 index 0000000000000..2cefd1159fb11 --- /dev/null +++ b/tools/testing/selftests/livepatch/test-sysfs-patched-attr.sh @@ -0,0 +1,95 @@ +#!/bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2022 Song Liu + +. $(dirname $0)/functions.sh + +MOD_LIVEPATCH=3Dtest_klp_livepatch + +setup_config + +# - load a livepatch and verifies the sysfs patched attribute + +start_test "check sysfs patched attribute" + +load_lp $MOD_LIVEPATCH + +check_sysfs_exists "$MOD_LIVEPATCH" "vmlinux/patched" +file_exists=3D$? + +disable_lp $MOD_LIVEPATCH + +unload_lp $MOD_LIVEPATCH + +if [[ "$file_exists" =3D=3D "0" ]]; then + skip "sysfs attribute doesn't exists." +fi + +start_test "check sysfs patched values" + +load_lp $MOD_LIVEPATCH + +check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--" +check_sysfs_value "$MOD_LIVEPATCH" "vmlinux/patched" "1" + +disable_lp $MOD_LIVEPATCH + +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/$MOD_LIVEPATCH.ko +livepatch: enabling patch '$MOD_LIVEPATCH' +livepatch: '$MOD_LIVEPATCH': initializing patching transition +livepatch: '$MOD_LIVEPATCH': starting patching transition +livepatch: '$MOD_LIVEPATCH': completing patching transition +livepatch: '$MOD_LIVEPATCH': patching complete +% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled +livepatch: '$MOD_LIVEPATCH': initializing unpatching transition +livepatch: '$MOD_LIVEPATCH': starting unpatching transition +livepatch: '$MOD_LIVEPATCH': completing unpatching transition +livepatch: '$MOD_LIVEPATCH': unpatching complete +% rmmod $MOD_LIVEPATCH" + +start_test "sysfs test object/patched" + +MOD_LIVEPATCH=3Dtest_klp_callbacks_demo +MOD_TARGET=3Dtest_klp_callbacks_mod +load_lp $MOD_LIVEPATCH + +# check the "patch" file changes as target module loads/unloads +check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "0" +load_mod $MOD_TARGET +check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "1" +unload_mod $MOD_TARGET +check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "0" + +disable_lp $MOD_LIVEPATCH +unload_lp $MOD_LIVEPATCH + +check_result "% insmod test_modules/test_klp_callbacks_demo.ko +livepatch: enabling patch 'test_klp_callbacks_demo' +livepatch: 'test_klp_callbacks_demo': initializing patching transition +test_klp_callbacks_demo: pre_patch_callback: vmlinux +livepatch: 'test_klp_callbacks_demo': starting patching transition +livepatch: 'test_klp_callbacks_demo': completing patching transition +test_klp_callbacks_demo: post_patch_callback: vmlinux +livepatch: 'test_klp_callbacks_demo': patching complete +% insmod test_modules/test_klp_callbacks_mod.ko +livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'tes= t_klp_callbacks_mod' +test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MO= DULE_STATE_COMING] Full formed, running module_init +test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [M= ODULE_STATE_COMING] Full formed, running module_init +test_klp_callbacks_mod: test_klp_callbacks_mod_init +% rmmod test_klp_callbacks_mod +test_klp_callbacks_mod: test_klp_callbacks_mod_exit +test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [= MODULE_STATE_GOING] Going away +livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module '= test_klp_callbacks_mod' +test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> = [MODULE_STATE_GOING] Going away +% echo 0 > $SYSFS_KLP_DIR/test_klp_callbacks_demo/enabled +livepatch: 'test_klp_callbacks_demo': initializing unpatching transition +test_klp_callbacks_demo: pre_unpatch_callback: vmlinux +livepatch: 'test_klp_callbacks_demo': starting unpatching transition +livepatch: 'test_klp_callbacks_demo': completing unpatching transition +test_klp_callbacks_demo: post_unpatch_callback: vmlinux +livepatch: 'test_klp_callbacks_demo': unpatching complete +% rmmod test_klp_callbacks_demo" + +exit 0 diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testin= g/selftests/livepatch/test-sysfs.sh index 3327bde59e73d..d24c13ad86124 100755 --- a/tools/testing/selftests/livepatch/test-sysfs.sh +++ b/tools/testing/selftests/livepatch/test-sysfs.sh @@ -20,8 +20,6 @@ check_sysfs_value "$MOD_LIVEPATCH" "enabled" "1" check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------" check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--" check_sysfs_value "$MOD_LIVEPATCH" "transition" "0" -check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--" -check_sysfs_value "$MOD_LIVEPATCH" "vmlinux/patched" "1" =20 disable_lp $MOD_LIVEPATCH =20 @@ -40,47 +38,4 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching trans= ition livepatch: '$MOD_LIVEPATCH': unpatching complete % rmmod $MOD_LIVEPATCH" =20 -start_test "sysfs test object/patched" - -MOD_LIVEPATCH=3Dtest_klp_callbacks_demo -MOD_TARGET=3Dtest_klp_callbacks_mod -load_lp $MOD_LIVEPATCH - -# check the "patch" file changes as target module loads/unloads -check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "0" -load_mod $MOD_TARGET -check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "1" -unload_mod $MOD_TARGET -check_sysfs_value "$MOD_LIVEPATCH" "$MOD_TARGET/patched" "0" - -disable_lp $MOD_LIVEPATCH -unload_lp $MOD_LIVEPATCH - -check_result "% insmod test_modules/test_klp_callbacks_demo.ko -livepatch: enabling patch 'test_klp_callbacks_demo' -livepatch: 'test_klp_callbacks_demo': initializing patching transition -test_klp_callbacks_demo: pre_patch_callback: vmlinux -livepatch: 'test_klp_callbacks_demo': starting patching transition -livepatch: 'test_klp_callbacks_demo': completing patching transition -test_klp_callbacks_demo: post_patch_callback: vmlinux -livepatch: 'test_klp_callbacks_demo': patching complete -% insmod test_modules/test_klp_callbacks_mod.ko -livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'tes= t_klp_callbacks_mod' -test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MO= DULE_STATE_COMING] Full formed, running module_init -test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [M= ODULE_STATE_COMING] Full formed, running module_init -test_klp_callbacks_mod: test_klp_callbacks_mod_init -% rmmod test_klp_callbacks_mod -test_klp_callbacks_mod: test_klp_callbacks_mod_exit -test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [= MODULE_STATE_GOING] Going away -livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module '= test_klp_callbacks_mod' -test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> = [MODULE_STATE_GOING] Going away -% echo 0 > $SYSFS_KLP_DIR/test_klp_callbacks_demo/enabled -livepatch: 'test_klp_callbacks_demo': initializing unpatching transition -test_klp_callbacks_demo: pre_unpatch_callback: vmlinux -livepatch: 'test_klp_callbacks_demo': starting unpatching transition -livepatch: 'test_klp_callbacks_demo': completing unpatching transition -test_klp_callbacks_demo: post_unpatch_callback: vmlinux -livepatch: 'test_klp_callbacks_demo': unpatching complete -% rmmod test_klp_callbacks_demo" - exit 0 --=20 2.52.0 From nobody Tue Apr 7 09:16:08 2026 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (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 02405381B0B for ; Fri, 13 Mar 2026 20:59:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435560; cv=none; b=BAj9p4UUEsE4OqUPo8Ofm4KQSNx+lFtsa84Z2oXOnujNZvszXte5ivpY3OkCaisKbIzRSKaHXvi+IvMlp5kbLPg2AdgDdAPVP25sLLDRklTaly/NnnqjvV4hp1vLewFUsvHK9bs6Arf3uDY5eJdi9K8inBWLNl0SI6g1thZq7MA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773435560; c=relaxed/simple; bh=csQBdTnyzr0JSm7zjXTuth96BuITEbEVBybFpbpIwyk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BqKCWuj+l1mdvV9Ebx7iZKsUB6cI4cy2z7yAp6nsRj5iSi1l4Vqz14ZqitQX5W64iy3UHHi9SmImhEOAlbUxVdAntNpcAjw7xMaXDAsJeFNLKkGAEVoOU2EJlYCFCfVsJ3VuenC+9n1Aw55GLKqZyrhzlVNoLNYK7Ai1E0DqJD8= 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=D3Uwbq4C; arc=none smtp.client-ip=209.85.128.50 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="D3Uwbq4C" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-48374014a77so25195695e9.3 for ; Fri, 13 Mar 2026 13:59:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773435556; x=1774040356; 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=/dCEg0dd6B9Tjl1kgEu3NhdDbbVSDX6h4iOv2b5vp0o=; b=D3Uwbq4CEtNyw1GcsJQB8sOGJX5Fa4kmaGYo+SHnQeb4vdlB7BV+VhAunyHWi7tNce qGpgY1sX67tu1JoeRP5NPeTBhX3JjzsJQLo9ehbGEnsBPI3rKdJsQKqOHdvxHVrbH2rU mYQJ2o817IsuNWxZIeVpevWdOS/BSOaGVd/yTX5nwurbhLIIt7hdWolBDfuoIXuPxSW0 lz3Gn6UWzhNQoHJPKYS1Vw802Wb8u3QKqIFQIDdkCcWvpRVbbBq1DiUCLzrWnSokyHv7 V9kibxIjF9XJzb84MvGw/zR2fDjUF+bUZ0QX4zRqrVhfUAoApGwbreaALFrGp+foEMX0 Jrgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773435556; x=1774040356; 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=/dCEg0dd6B9Tjl1kgEu3NhdDbbVSDX6h4iOv2b5vp0o=; b=WupYL84n7ORHAjUpextmQcisRmfKOcg3zsJAbhgiQ0dIEh6/eOgjYi2BeC7lR7uhro PguS0wFJeYW3ldMvCX0iEpb2JC3T77BPj9PrON9N812fNrzX/oPco3U29DyZ9/Mx/1+k AIm/7o5r0SxEkvRf3lWGpxPRE6aK0SIfN2WeoW5TEf/rRXSk1ZVS6cwt3MwWDMx1k6Rb 8Q5I8EpmLkeUFYstY63N67b8ICDl6JJxmE0YoIshbq4zDPPUuA3ndWs1nimUoFpzXCog Kppq/EL7gI0p92U6Oyoib/ynpQC+TJeykmkVAN47RvmdXHqcm1vVf8fO4g/BynMliAd0 Me4w== X-Forwarded-Encrypted: i=1; AJvYcCV4SH3vqmu0JKZAPgSIsShOjYIQo2m5YkOq2Js9GPAUYyFQ74VesimbsZsw2B/eOeR4CHFPh8D19IKKtqM=@vger.kernel.org X-Gm-Message-State: AOJu0YwyL28yiK/MHz3b64xwvSjCRYD7sxUecra+UZ1pRmlfjEdsgk7b i/A7jwlysD9/3eFAVIR99CUAN1+DiwNgmngoMUc/B5K5xSf7PjtM5sxMq8QoTbpOVSg= X-Gm-Gg: ATEYQzyUzPmaBvJDNzWfG4TzscSl0qP5c7B7SIUa+IIhKf15qNXQnfCIPDJ4Be6Uhcf Io75qCO5nm0jlXvUBCVf7EDJVKNJhlrD/yxKHhSDoh1b2fSS2W6WXsnwq5nTLR+wE3MqvQHr4pP JJLxaVhZ1WcrQF1Swg8KZgv55mZ4w/CqhMs4V0VZxo1Yz1d9gqqTI21tGVD5vLByVRxYEXnXYt7 DxuePag0cFZNdEP/b/oRCt2u6UjGqisn0ar/76uFapshB9xqtZCC37TkvqR/enOAb/+1Skg0M+f vGZKx7amw0fuX/TJHqevYyES5ADwi+cuRJv5Nfv4bri4ogOkiGF4OT20cRvLT1FwhGMeKG4Y0HI 0PMoAd2GA6OX0lfZ0mzJp+xTk34GZUmqS1Aptf3C62uH3VZtxSCko+/LdO3pAkDjQmoFVARiI9x qSCCEMSDy9c8ljNwSS+DRC X-Received: by 2002:a05:600c:c0c3:20b0:485:5981:1411 with SMTP id 5b1f17b1804b1-4855981166bmr45853985e9.23.1773435556207; Fri, 13 Mar 2026 13:59:16 -0700 (PDT) Received: from [127.0.0.1] ([2804:5078:834:1300:58f2:fc97:371f:3]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab526d3csm4042611eec.18.2026.03.13.13.59.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 13:59:15 -0700 (PDT) From: Marcos Paulo de Souza Date: Fri, 13 Mar 2026 17:58:39 -0300 Subject: [PATCH 8/8] selftests: livepatch: functions.sh: Extend check for taint flag kernel message 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: <20260313-lp-tests-old-fixes-v1-8-71ac6dfb3253@suse.com> References: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> In-Reply-To: <20260313-lp-tests-old-fixes-v1-0-71ac6dfb3253@suse.com> To: Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan Cc: live-patching@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Marcos Paulo de Souza X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1773435515; l=1115; i=mpdesouza@suse.com; s=20231031; h=from:subject:message-id; bh=csQBdTnyzr0JSm7zjXTuth96BuITEbEVBybFpbpIwyk=; b=GZFkqsGQmRtJSxuKY0Pl1xY69C7WZjWhDrYyBHAZcepdSz5AAxV1bkP9VYtsNctvJ/lXx7vQA zFraRerPgyFCgu8ZkptriwDws9SBHSt1Pf6+hqhdMjA4CoGvDgEyv7+ X-Developer-Key: i=mpdesouza@suse.com; a=ed25519; pk=/Ni/TsKkr69EOmdZXkp1Q/BlzDonbOBRsfPa18ySIwU= On SLE kernels there is a warning when a livepatch is disabled: livepatch: attempt to disable live patch test_klp_livepatch, setting NO_SUPPORT taint flag Extend lightly the detection of messages when a livepatch is disabled to cover this case as well. Signed-off-by: Marcos Paulo de Souza --- tools/testing/selftests/livepatch/functions.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/livepatch/functions.sh b/tools/testing= /selftests/livepatch/functions.sh index 781346d6e94e0..73a1d4e6acaeb 100644 --- a/tools/testing/selftests/livepatch/functions.sh +++ b/tools/testing/selftests/livepatch/functions.sh @@ -324,7 +324,7 @@ function check_result { # - filter out dmesg timestamp prefixes result=3D$(dmesg | awk -v last_dmesg=3D"$LAST_DMESG" 'p; $0 =3D=3D last_d= mesg { p=3D1 }' | \ grep -e 'livepatch:' -e 'test_klp' | \ - grep -v '\(tainting\|taints\) kernel' | \ + grep -v '\(tainting\|taints\|taint\) \(kernel\|flag\)' | \ sed 's/^\[[ 0-9.]*\] //' | \ sed 's/^\[[ ]*[CT][0-9]*\] //') =20 --=20 2.52.0