[GIT PULL] ktest.pl: Updates for 6.12

Steven Rostedt posted 1 patch 2 months, 1 week ago
tools/testing/ktest/ktest.pl | 28 +++++++++++++++++++---------
1 file changed, 19 insertions(+), 9 deletions(-)
[GIT PULL] ktest.pl: Updates for 6.12
Posted by Steven Rostedt 2 months, 1 week ago

Linus,

ktest.pl updates for 6.12:

- Add notification of build warnings for all tests

  Currently, the build will only fail on warnings if the ktest config file
  states that it should fail or if the compile is done with -Werror. This
  has allowed warnings to sneak in if it doesn't fail. Add a notification at
  the end of the test that will state that warnings were found in the build
  so that the developer will be aware of it.

- Fix the grub2 parser to not return the wrong kernel index

  ktest.pl can read the grub.cfg file to know what kernel to boot to via
  grub-reboot. This requires knowing the index that the kernel is referenced
  by in the grub.cfg file. Some distros have logic to determine the
  menuentry that can cause the ktest.pl to come up with the wrong index and
  boot the wrong kernel.


Please pull the latest ktest-v6.12 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest.git
ktest-v6.12

Tag SHA1: 3224d5d52aef011ccbbb82a8f52e51f1c4f1ba52
Head SHA1: 2351e8c65404aabc433300b6bf90c7a37e8bbc4d


Daniel Jordan (1):
      ktest.pl: Avoid false positives with grub2 skip regex

Steven Rostedt (1):
      ktest.pl: Always warn on build warnings

----
 tools/testing/ktest/ktest.pl | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)
---------------------------
diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl
index eb31cd9c977b..dacad94e2be4 100755
--- a/tools/testing/ktest/ktest.pl
+++ b/tools/testing/ktest/ktest.pl
@@ -222,6 +222,8 @@ my $install_time;
 my $reboot_time;
 my $test_time;
 
+my $warning_found = 0;
+
 my $pwd;
 my $dirname = $FindBin::Bin;
 
@@ -729,11 +731,18 @@ sub print_times {
 	show_time($test_time);
 	doprint "\n";
     }
+    if ($warning_found) {
+	doprint "\n*** WARNING";
+	doprint "S" if ($warning_found > 1);
+	doprint " found in build: $warning_found ***\n\n";
+    }
+
     # reset for iterations like bisect
     $build_time = 0;
     $install_time = 0;
     $reboot_time = 0;
     $test_time = 0;
+    $warning_found = 0;
 }
 
 sub get_mandatory_configs {
@@ -2047,7 +2056,7 @@ sub get_grub_index {
     } elsif ($reboot_type eq "grub2") {
 	$command = "cat $grub_file";
 	$target = '^\s*menuentry.*' . $grub_menu_qt;
-	$skip = '^\s*menuentry';
+	$skip = '^\s*menuentry\s';
 	$submenu = '^\s*submenu\s';
     } elsif ($reboot_type eq "grub2bls") {
 	$command = $grub_bls_get;
@@ -2460,8 +2469,6 @@ sub process_warning_line {
 # Returns 1 if OK
 #         0 otherwise
 sub check_buildlog {
-    return 1 if (!defined $warnings_file);
-
     my %warnings_list;
 
     # Failed builds should not reboot the target
@@ -2482,18 +2489,21 @@ sub check_buildlog {
 	close(IN);
     }
 
-    # If warnings file didn't exist, and WARNINGS_FILE exist,
-    # then we fail on any warning!
-
     open(IN, $buildlog) or dodie "Can't open $buildlog";
     while (<IN>) {
 	if (/$check_build_re/) {
 	    my $warning = process_warning_line $_;
 
 	    if (!defined $warnings_list{$warning}) {
-		fail "New warning found (not in $warnings_file)\n$_\n";
-		$no_reboot = $save_no_reboot;
-		return 0;
+		$warning_found++;
+
+		# If warnings file didn't exist, and WARNINGS_FILE exist,
+		# then we fail on any warning!
+		if (defined $warnings_file) {
+		    fail "New warning found (not in $warnings_file)\n$_\n";
+		    $no_reboot = $save_no_reboot;
+		    return 0;
+		}
 	    }
 	}
     }
Re: [GIT PULL] ktest.pl: Updates for 6.12
Posted by pr-tracker-bot@kernel.org 2 months, 1 week ago
The pull request you sent on Sun, 22 Sep 2024 02:38:05 -0400:

> git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest.git ktest-v6.12

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/dd609b8a3a1fc087df1f136686df77ad42f79a7d

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html