[LTP] [PATCH v5 5/6] lib: Merge functionality of LTP_QUIET into LTP_REPRODUCIBLE_OUTPUT

Petr Vorel pvorel@suse.cz
Thu Apr 23 10:41:21 CEST 2026


LTP_REPRODUCIBLE_OUTPUT=1 environment variable was added in 5894abc5f to
help valgrind to use LTP for testing. It discards the actual content of
the messages printed by the test (removes everything after printing
TINFO/TPASS/TFAIL/... flag).

Later LTP_QUIET=1 was added which suppresses printing TCONF, TINFO, and
TDEBUG messages.

Valgrind project uses both variables but no need to handle them
separately. Therefore merge functionality of LTP_QUIET into
LTP_REPRODUCIBLE_OUTPUT.

LTP_QUIET was not even documented in HTML doc.

Also fix help description, because TWARN was not skipped, although doc
claimed to do.

Implements: https://github.com/linux-test-project/ltp/issues/1306
Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
Changes v4->v5:
* Remove wrongly stated TWARN (error on code on master)
* Fix missing new lines in help (AI)
* Use single fprintf (Li)

 doc/users/setup_tests.rst |  5 +++--
 lib/tst_test.c            | 16 +++++-----------
 2 files changed, 8 insertions(+), 13 deletions(-)

diff --git a/doc/users/setup_tests.rst b/doc/users/setup_tests.rst
index 6f1d996e18..491a5b003a 100644
--- a/doc/users/setup_tests.rst
+++ b/doc/users/setup_tests.rst
@@ -43,8 +43,9 @@ users.
        Shell language: ``TST_NEEDS_DEVICE=1``.
 
    * - LTP_REPRODUCIBLE_OUTPUT
-     - When set to ``1`` or ``y`` discards the actual content of the messages
-       printed by the test (suitable for a reproducible output).
+     - When set to ``1`` or ``y`` uppress printing TCONF, TINFO and TDEBUG
+       messages and discards the actual content of the other messages printed
+       by the test (suitable for a reproducible output).
 
    * - LTP_SINGLE_FS_TYPE
      - Specifies single filesystem to run the test on instead all supported
diff --git a/lib/tst_test.c b/lib/tst_test.c
index 12f7489d4e..a0b55049ff 100644
--- a/lib/tst_test.c
+++ b/lib/tst_test.c
@@ -68,7 +68,6 @@ static int iterations = 1;
 static float duration = -1;
 static float timeout_mul = -1;
 static int reproducible_output;
-static int quiet_output;
 
 struct context {
 	int32_t lib_pid;
@@ -307,7 +306,7 @@ static void print_result(const char *file, const int lineno, int ttype,
 		res = "TBROK";
 	break;
 	case TCONF:
-		if (quiet_output)
+		if (reproducible_output)
 			return;
 		res = "TCONF";
 	break;
@@ -315,12 +314,12 @@ static void print_result(const char *file, const int lineno, int ttype,
 		res = "TWARN";
 	break;
 	case TINFO:
-		if (quiet_output)
+		if (reproducible_output)
 			return;
 		res = "TINFO";
 	break;
 	case TDEBUG:
-		if (quiet_output)
+		if (reproducible_output)
 			return;
 		res = "TDEBUG";
 	break;
@@ -676,8 +675,8 @@ static void print_help(void)
 	fprintf(stderr, "LTP_DEV                  Path to the block device to be used (for .needs_device)\n");
 	fprintf(stderr, "LTP_DEV_FS_TYPE          Filesystem used for testing (default: %s)\n", DEFAULT_FS_TYPE);
 	fprintf(stderr, "LTP_DEBUG                Print debug messages (set 1(y) or 2)\n");
-	fprintf(stderr, "LTP_REPRODUCIBLE_OUTPUT  Values 1 or y discard the actual content of the messages printed by the test\n");
-	fprintf(stderr, "LTP_QUIET                Values 1 or y will suppress printing TCONF, TWARN, TINFO, and TDEBUG messages\n");
+	fprintf(stderr, "LTP_REPRODUCIBLE_OUTPUT  Values 1 or y suppress printing TCONF, TINFO and TDEBUG messages and\n"
+			"                         discards the actual content of all other messages\n");
 	fprintf(stderr, "LTP_SINGLE_FS_TYPE       Specifies filesystem instead all supported (for .all_filesystems)\n");
 	fprintf(stderr, "LTP_FORCE_SINGLE_FS_TYPE Testing only. The same as LTP_SINGLE_FS_TYPE but ignores test skiplist.\n");
 	fprintf(stderr, "LTP_TIMEOUT_MUL          Timeout multiplier (must be a number >=1)\n");
@@ -1398,7 +1397,6 @@ static void do_setup(int argc, char *argv[])
 {
 	char *tdebug_env = getenv("LTP_DEBUG");
 	char *reproducible_env = getenv("LTP_REPRODUCIBLE_OUTPUT");
-	char *quiet_env = getenv("LTP_QUIET");
 
 	if (!tst_test)
 		tst_brk(TBROK, "No tests to run");
@@ -1429,10 +1427,6 @@ static void do_setup(int argc, char *argv[])
 	    (!strcmp(reproducible_env, "1") || !strcmp(reproducible_env, "y")))
 		reproducible_output = 1;
 
-	if (quiet_env &&
-	    (!strcmp(quiet_env, "1") || !strcmp(quiet_env, "y")))
-		quiet_output = 1;
-
 	assert_test_fn();
 
 	TCID = tcid = get_tcid(argv);
-- 
2.53.0



More information about the ltp mailing list