From nobody Thu Apr 9 15:23:29 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 64B0237EFFF for ; Sat, 7 Mar 2026 22:08:19 +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=1772921300; cv=none; b=TcnFgIsoHgTRkyVoM/vgjcS3ba+QMcW2JyniXRjAPDbwIQs3ZbNYhFJeQkvsd2wSuIA5QwhNGBaP4SRCJk42Cq/Lb072dlPiKKwREFCrHtfIaj26l9at3SKAILp5JVpM4Rh/vBIA2O0LcLqKB1Njnod66jfC/JytSGB4hrASrBY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772921300; c=relaxed/simple; bh=69/U90k4rCh2SrZteEHZoVOuBxAGQijE60VsS9rJG0Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dqo3ngpyKieRk/O59bW8kTdSnRqIemaQ6D/TdVfII4d37dhO/UTa6ntiY5WbHbG0d6XEMctHyvgYKrjSbCp4NUBsbRStMc/avWd5x0BEfRM/baxjLo19Yh4R7PgVmlyDi1KjYm4hN5NjnFqMszY7PrcZJ6BvWWeIwzKcsB0P8wM= 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=GD5sCKuj; 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="GD5sCKuj" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-4806cc07ce7so120276205e9.1 for ; Sat, 07 Mar 2026 14:08:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1772921298; x=1773526098; 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=i2BnybNkIXw4T9ujw46pnGWpf6OsUSeRwJcYWoYDq64=; b=GD5sCKuj0UnE05SihgqJUZM6Dl6JuD+t5YcZtdM/rg7d3/6/0DbTWIoYRbiPa3kvGx K3XBOLg4HuOpDNKh9qnKoFEN0ufLqDlVAIStRDEqaYtyKEcg5FXzHVtBPnqZ2ejoKwCh v7wmz0AAgvmFVyJMrqZF2vfWa7+e9b3+DXhV1TeRxM84HWeEDApcxh6TSFpXuNn+R4JR dCAtEaZsng00nG4enYQwKT4spxoiXSWFpRdDXw7dK3iaE35TdrBMBM22PnWezjEAC6fD k9Jshnb+6pd3CVwENgcMxxUWkBAfYLMvJ7b3F/b84AI4STaxRR02JPif/oPMUl84iZl/ ghsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772921298; x=1773526098; 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=i2BnybNkIXw4T9ujw46pnGWpf6OsUSeRwJcYWoYDq64=; b=CmPO9UM+WeFFgLwobAcETUSEokJx3VnS3TwCTq187crBYhsianekndTR3B5AeHxuLI nuP7Cb7yyDteI0X8T/cy2g0FeSMv8tqIbUW2xGgwqX4DyhFSxX9Xgjyrfihva2IopXq8 st3Ce1uvIJLxTleNszaTpTILXi4igGMGj66bZ8Y3t+wcco22lVSuKdnBi3ZupiHm2zXb xdJYPNj2ie+QZAY7PBeG5sb01cdyjGAJbDPvyWfTgNh6umEp72+/iAuTv9nXhegRE7gV JCNCKRmoTmp1CV+c1mFRBzOvM37Vrx5U3X+gKrt7JCBnNXMxrBX1yuagbUvIUaVQJ/sr PcVw== X-Forwarded-Encrypted: i=1; AJvYcCWWBHU3iGwJs1OfWXd+BsRC/oJRan93cKPBJpxfafixyQigplM/V/Iq1qyEhBnoNgWKNWBQaTAsYW01JaM=@vger.kernel.org X-Gm-Message-State: AOJu0YwOQBA0CfAYT+oXOx9oPXPaqUEnK6BAdlr8GFVhUk5E2/zUKzC3 iReDb73MNXeEWmycj/aVrX4cSG8yd3p40d7g55vTBwWwqyEHQt2AE0l8PVI2MiygbFI= X-Gm-Gg: ATEYQzzqpRhrCnvEiV3J83CRR5k2X9bVac46lNKyY3hG3YVNRaAXiP0Aoh8pnbDXl/c n3FXej0CInYlEM8mhX9knnWjm3UiK8opphaNbCpYhji4x+DkNkde+AR/3QTBLkRCUkvk5BIYR1v jyGp/QtRnkkH7ymdHmCunnDcgmzFacuu/LHIFXnTWmc2dqaBrEDcAuJ2yGSQcAkp9lVlhsKY/Qo wNnVavnfmkAzfPmvPGOI17Sqy8Huazzq7fZ04bOt6iq8jdTGhQA01IpNqTFMySTx+7TSZkUPnlK elbKPeKB8+YVcIwLZbojXgJo6q7QjRvZFwWuuCsdjLKv1wByc1c8GHJVbGzu+jTDSK4B2OORDqb bIQ3q5xahGwlC4HNglPnkO5njJOyUxMd3nld7VgXLUx9FMYukREvfvQlkxc+KzyboUhkNWmvSWC IcjSzeSb+50g== X-Received: by 2002:a05:600c:8b01:b0:477:9814:6882 with SMTP id 5b1f17b1804b1-485269198bdmr109887885e9.5.1772921297708; Sat, 07 Mar 2026 14:08:17 -0800 (PST) Received: from localhost ([189.99.238.164]) by smtp.gmail.com with ESMTPSA id a1e0cc1a2514c-94e7b355238sm5397421241.4.2026.03.07.14.08.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 07 Mar 2026 14:08:16 -0800 (PST) From: =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= Date: Sat, 07 Mar 2026 19:07:59 -0300 Subject: [PATCH 4/9] ktest: Honor empty per-test option overrides 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: <20260307-ktest-fixes-v1-4-565d412f4925@suse.com> References: <20260307-ktest-fixes-v1-0-565d412f4925@suse.com> In-Reply-To: <20260307-ktest-fixes-v1-0-565d412f4925@suse.com> To: Steven Rostedt , John Hawley Cc: Andrea Righi , Marcos Paulo de Souza , Matthieu Baerts , Fernando Fernandez Mancera , Pedro Falcato , linux-kernel@vger.kernel.org, Steven Rostedt , =?utf-8?q?Ricardo_B=2E_Marli=C3=A8re?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openssh-sha256; t=1772921280; l=1734; i=rbm@suse.com; h=from:subject:message-id; bh=69/U90k4rCh2SrZteEHZoVOuBxAGQijE60VsS9rJG0Y=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgguRCc5X8/UX9M40lkMnr//aFGOhce x5ezt8MFNUFlqYAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QIkzxQAZ9NPP1ctnhewdo448uowkaEGToUfjyKovDDHS79inuyl9Xtam2j+DThVOrIA/k5Vo7pB gIcptmWBzTgg= X-Developer-Key: i=rbm@suse.com; a=openssh; fpr=SHA256:pzhe0fJpYLz+3cZ33FFPhIfaUElk9CXPFFXmalIH+1g A per-test override can clear an inherited default option by assigning an empty value, but __set_test_option() still used option_defined() to decide whether a per-test key existed. That turned an empty per-test assignment back into "fall back to the default", so tests still could not clear inherited settings. For example: DEFAULTS (...) LOG_FILE =3D /tmp/ktest-empty-override.log CLEAR_LOG =3D 1 ADD_CONFIG =3D /tmp/.config TEST_START TEST_TYPE =3D build BUILD_TYPE =3D nobuild ADD_CONFIG =3D This would run the test with ADD_CONFIG[1] =3D /tmp/.config Fix by checking whether the per-test key exists before falling back. If it does exist but is empty, treat it as unset for that test and stop the fallback chain there. Fixes: 22c37a9ac49d ("ktest: Allow tests to undefine default options") Signed-off-by: Ricardo B. Marli=C3=A8re --- tools/testing/ktest/ktest.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl index b8fcdabffffe..42bc505e14cb 100755 --- a/tools/testing/ktest/ktest.pl +++ b/tools/testing/ktest/ktest.pl @@ -4191,7 +4191,8 @@ sub __set_test_option { =20 my $option =3D "$name\[$i\]"; =20 - if (option_defined($option)) { + if (exists($opt{$option})) { + return undef if (!option_defined($option)); return $opt{$option}; } =20 @@ -4199,7 +4200,8 @@ sub __set_test_option { if ($i >=3D $test && $i < $test + $repeat_tests{$test}) { $option =3D "$name\[$test\]"; - if (option_defined($option)) { + if (exists($opt{$option})) { + return undef if (!option_defined($option)); return $opt{$option}; } } --=20 2.53.0