[PATCH RESEND v1] ktest: Fix Test Failures Due to Missing LOG_FILE Directories

From: Ayush Jain
Date: Tue Jan 28 2025 - 00:15:06 EST


Handle missing parent directories for LOG_FILE path to prevent test
failures. If the parent directories don't exist, create them to ensure
the tests proceed successfully.

Signed-off-by: Ayush Jain <Ayush.jain3@xxxxxxx>
---
tools/testing/ktest/ktest.pl | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl
index 8c8da966c641..be707cbc56a7 100755
--- a/tools/testing/ktest/ktest.pl
+++ b/tools/testing/ktest/ktest.pl
@@ -4303,6 +4303,13 @@ if (defined($opt{"LOG_FILE"})) {
if ($opt{"CLEAR_LOG"}) {
unlink $opt{"LOG_FILE"};
}
+ if (! -e $opt{"LOG_FILE"}) {
+ my ($dir) = $opt{"LOG_FILE"} =~ m|^(.*/)|;
+ if ($dir && !-d $dir) {
+ mkpath($dir) or die "Failed to create directories '$dir': $!";
+ print "\nThe log directory $dir did not exist, so it was created.\n";
+ }
+ }
open(LOG, ">> $opt{LOG_FILE}") or die "Can't write to $opt{LOG_FILE}";
LOG->autoflush(1);
}
--
2.34.1