public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
* [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment
@ 2024-12-22  7:51 Li Wang
  2024-12-22  7:51 ` [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs Li Wang
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Li Wang @ 2024-12-22  7:51 UTC (permalink / raw)
  To: ltp

I just polished some things preventing me from understanding the
test logic. Hopefully, it makes things easier to read.

Signed-off-by: Li Wang <liwang@redhat.com>
---
 lib/newlib_tests/tst_fuzzy_sync01.c | 22 ++++++------
 lib/newlib_tests/tst_fuzzy_sync02.c | 53 ++++++++++++++++++++++++-----
 2 files changed, 55 insertions(+), 20 deletions(-)

diff --git a/lib/newlib_tests/tst_fuzzy_sync01.c b/lib/newlib_tests/tst_fuzzy_sync01.c
index d0748958c..d510bd2dd 100644
--- a/lib/newlib_tests/tst_fuzzy_sync01.c
+++ b/lib/newlib_tests/tst_fuzzy_sync01.c
@@ -10,7 +10,7 @@
  *
  * We make the simplifying assumptions that:
  * - Each thread contains a single contiguous critical section.
- * - The threads only interact through a single variable.
+ * - The threads only interact through a single variable(H: Hit).
  * - The various timings are constant except for variations introduced
  *   by the environment.
  *
@@ -50,9 +50,9 @@
  * range is required.
  *
  * When entering their critical sections, both threads increment the
- * 'c' counter variable atomically. They both also increment it when
- * leaving their critical sections. We record the value of 'c' when A
- * increments it. From the recorded values of 'c' we can deduce if the
+ * 'H' counter variable atomically. They both also increment it when
+ * leaving their critical sections. We record the value of 'H' when A
+ * increments it. From the recorded values of 'H' we can deduce if the
  * critical sections overlap and their ordering.
  *
  * 	Start (cs)	| End (ct)	| Ordering
@@ -90,7 +90,7 @@ struct race {
 	const struct window b;
 };
 
-static int c;
+static int H;
 static struct tst_fzsync_pair pair;
 
 static const struct race races[] = {
@@ -162,15 +162,15 @@ static void *worker(void *v)
 	const struct window b = races[i].b;
 
 	while (tst_fzsync_run_b(&pair)) {
-		if (tst_atomic_load(&c))
+		if (tst_atomic_load(&H))
 			tst_brk(TBROK, "Counter should now be zero");
 
 		tst_fzsync_start_race_b(&pair);
 		delay(b.critical_s);
 
-		tst_atomic_add_return(1, &c);
+		tst_atomic_add_return(1, &H);
 		delay(b.critical_t);
-		tst_atomic_add_return(1, &c);
+		tst_atomic_add_return(1, &H);
 
 		delay(b.return_t);
 		tst_fzsync_end_race_b(&pair);
@@ -192,9 +192,9 @@ static void run(unsigned int i)
 		tst_fzsync_start_race_a(&pair);
 		delay(a.critical_s);
 
-		cs = tst_atomic_add_return(1, &c);
+		cs = tst_atomic_add_return(1, &H);
 		delay(a.critical_t);
-		ct = tst_atomic_add_return(1, &c);
+		ct = tst_atomic_add_return(1, &H);
 
 		delay(a.return_t);
 		tst_fzsync_end_race_a(&pair);
@@ -206,7 +206,7 @@ static void run(unsigned int i)
 		else
 			critical++;
 
-		r = tst_atomic_add_return(-4, &c);
+		r = tst_atomic_add_return(-4, &H);
 		if (r)
 			tst_brk(TBROK, "cs = %d, ct = %d, r = %d", cs, ct, r);
 
diff --git a/lib/newlib_tests/tst_fuzzy_sync02.c b/lib/newlib_tests/tst_fuzzy_sync02.c
index afe4973b5..f95394371 100644
--- a/lib/newlib_tests/tst_fuzzy_sync02.c
+++ b/lib/newlib_tests/tst_fuzzy_sync02.c
@@ -11,7 +11,7 @@
  * We make the simplifying assumptions that:
  * - There is one data race we want to hit and one to avoid.
  * - Each thread contains two contiguous critical sections. One for each race.
- * - The threads only interact through two variables, one for each race.
+ * - The threads only interact through two variables(H: Hit, D: Avoid), one for each race.
  * - If we hit the race we want to avoid then it causes thread A to exit early.
  *
  * We don't consider more complicated dynamic interactions between the
@@ -63,14 +63,35 @@ struct race {
 	const struct window b;
 };
 
-static int c, d;
+static int H, D;
 static struct tst_fzsync_pair pair;
 
+/**
+ * Race 1:
+ *  Thread A:   |---(1)--|[1]|---(1)---|
+ *  Thread B:   |---(1)--|[1]|---(1)---|
+ *  ad (A):     |---(0)|[1]|(0)---|
+ *  bd (B):     |---(0)|[1]|(0)---|
+ *
+ * Race 2:
+ *  Thread A:   |------------------(30)------------------|[1]|---(1)---|
+ *  Thread B:   |---(1)--|[1]|---(1)---|
+ *  ad (A):     |---(0)|[1]|--(0)---|
+ *  bd (B):     |---(0)|[20]|--(0)---|
+ *
+ * Race 3:
+ *  Thread A:   |--------------------(40)--------------------|[1]|---(0)---|
+ *  Thread B:   |---(1)--|[1]|------------------(20)------------------|
+ *  ad (A):     |---(1)--|[10]|--(0)---|
+ *  bd (B):     |---(1)--|[10]|--(0)---|
+ */
 static const struct race races[] = {
 	{ .a =  { 1, 1, 1 }, .b =  { 1, 1, 1 },
 	  .ad = { 0, 1, 0 }, .bd = { 0, 1, 0 } },
+
 	{ .a =  { 30, 1, 1 }, .b =  { 1, 1,  1 },
 	  .ad = { 0,  1, 0 }, .bd = { 0, 20, 0 } },
+
 	{ .a =  { 40, 1,  0 }, .b =  { 1, 1,  20 },
 	  .ad = { 1,  10, 0 }, .bd = { 1, 10, 0 } },
 };
@@ -87,6 +108,20 @@ static void setup(void)
 	tst_fzsync_pair_init(&pair);
 }
 
+/**
+ * to_abs() - Convert relative time intervals to absolute time points
+ * @w: The input window structure containing relative time intervals
+ *
+ * This function converts relative time intervals (represented in the
+ * struct window) into absolute time points, where:
+ *
+ * - The start of the critical section is `critical_s`.
+ * - The end of the critical section is calculated as `critical_s + critical_t`.
+ * - The end of execution is calculated as `critical_s + critical_t + return_t`.
+ *
+ * Return:
+ * A new window structure (`wc`) with absolute time points.
+ */
 static struct window to_abs(const struct window w)
 {
 	const struct window wc = {
@@ -109,9 +144,9 @@ static void *worker(void *v)
 		tst_fzsync_start_race_b(&pair);
 		for (now = 0; now <= fin; now++) {
 			if (now == b.critical_s || now == b.critical_t)
-				tst_atomic_add_return(1, &c);
+				tst_atomic_add_return(1, &H);
 			if (now == bd.critical_s || now == bd.critical_t)
-				tst_atomic_add_return(1, &d);
+				tst_atomic_add_return(1, &D);
 
 			sched_yield();
 		}
@@ -132,19 +167,19 @@ static void run(unsigned int i)
 	SAFE_PTHREAD_CREATE(&pair.thread_b, 0, worker, &i);
 
 	while (tst_fzsync_run_a(&pair)) {
-		c = 0;
-		d = 0;
+		H = 0;
+		D = 0;
 		fin = a.return_t;
 
 		tst_fzsync_start_race_a(&pair);
 		for (now = 0; now <= fin; now++) {
 			if (now >= ad.critical_s &&
-			    now <= ad.critical_t && tst_atomic_load(&d) > 0)
+			    now <= ad.critical_t && tst_atomic_load(&D) > 0)
 				fin = ad.return_t;
 
 			if (now >= a.critical_s &&
-			    now <= a.critical_t && tst_atomic_load(&c) == 1) {
-				tst_atomic_add_return(1, &c);
+			    now <= a.critical_t && tst_atomic_load(&H) == 1) {
+				tst_atomic_add_return(1, &H);
 				critical++;
 			}
 
-- 
2.47.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs
  2024-12-22  7:51 [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Li Wang
@ 2024-12-22  7:51 ` Li Wang
  2025-01-02 14:50   ` Petr Vorel
  2024-12-22  7:51 ` [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests Li Wang
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Li Wang @ 2024-12-22  7:51 UTC (permalink / raw)
  To: ltp

This patch updates the behavior of tst_fuzzy_sync tests to address
scenarios where test results may be unreliable due to resource constraints.

Specifically, if pair->exit is set (indicating exceeded loop termination),
the test result is ignored, and a TCONF status is returned. This ensures
invalid results are not falsely reported as failures or successes.

  tst_fuzzy_sync.h:654: TINFO: Exceeded execution loops, requesting exit
  /lib/newlib_tests/tst_fuzzy_sync02.c:164: TFAIL: 2| =:15

Signed-off-by: Li Wang <liwang@redhat.com>
---
 lib/newlib_tests/tst_fuzzy_sync01.c | 21 +++++++++++++++++++++
 lib/newlib_tests/tst_fuzzy_sync02.c | 21 +++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/lib/newlib_tests/tst_fuzzy_sync01.c b/lib/newlib_tests/tst_fuzzy_sync01.c
index d510bd2dd..c8c195859 100644
--- a/lib/newlib_tests/tst_fuzzy_sync01.c
+++ b/lib/newlib_tests/tst_fuzzy_sync01.c
@@ -212,10 +212,31 @@ static void run(unsigned int i)
 
 		if (critical > 100) {
 			tst_fzsync_pair_cleanup(&pair);
+			tst_atomic_store(0, &pair.exit);
 			break;
 		}
 	}
 
+	/*
+	 * If `pair->exit` is true, the test may fail to meet expected
+	 * results due to resource constraints in shared CI environments
+	 * (e.g., GitHub Actions). Limited control over CPU allocation
+	 * can cause delays or interruptions in CPU time slices due to
+	 * contention with other jobs.
+	 *
+	 * Binding the test to a single CPU core (e.g., via `taskset -c 0`)
+	 * can worsen this by increasing contention, leading to performance
+	 * degradation and premature loop termination.
+	 *
+	 * To ensure valid and reliable results in scenarios (e.g., HW, VM, CI),
+	 * it is best to ingore test result when loop termination occurs,
+	 * avoiding unnecessary false postive.
+	 */
+	if (pair.exit) {
+		tst_res(TCONF, "Test may not be able to generate a valid result");
+		return;
+	}
+
 	tst_res(critical > 50 ? TPASS : TFAIL,
 		"acs:%-2d act:%-2d art:%-2d | =:%-4d -:%-4d +:%-4d",
 		a.critical_s, a.critical_t, a.return_t,
diff --git a/lib/newlib_tests/tst_fuzzy_sync02.c b/lib/newlib_tests/tst_fuzzy_sync02.c
index f95394371..ad19a675e 100644
--- a/lib/newlib_tests/tst_fuzzy_sync02.c
+++ b/lib/newlib_tests/tst_fuzzy_sync02.c
@@ -192,10 +192,31 @@ static void run(unsigned int i)
 
 		if (critical > 100) {
 			tst_fzsync_pair_cleanup(&pair);
+			tst_atomic_store(0, &pair.exit);
 			break;
 		}
 	}
 
+	/*
+	 * If `pair->exit` is true, the test may fail to meet expected
+	 * results due to resource constraints in shared CI environments
+	 * (e.g., GitHub Actions). Limited control over CPU allocation
+	 * can cause delays or interruptions in CPU time slices due to
+	 * contention with other jobs.
+	 *
+	 * Binding the test to a single CPU core (e.g., via `taskset -c 0`)
+	 * can worsen this by increasing contention, leading to performance
+	 * degradation and premature loop termination.
+	 *
+	 * To ensure valid and reliable results in scenarios (e.g., HW, VM, CI),
+	 * it is best to ingore test result when loop termination occurs,
+	 * avoiding unnecessary false postive.
+	 */
+	if (pair.exit) {
+		tst_res(TCONF, "Test may not be able to generate a valid result");
+		return;
+	}
+
 	tst_res(critical > 50 ? TPASS : TFAIL, "%d| =:%-4d", i, critical);
 }
 
-- 
2.47.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests
  2024-12-22  7:51 [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Li Wang
  2024-12-22  7:51 ` [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs Li Wang
@ 2024-12-22  7:51 ` Li Wang
  2025-01-02 14:53   ` Petr Vorel
  2025-01-02 14:38 ` [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Petr Vorel
  2025-01-02 14:41 ` Petr Vorel
  3 siblings, 1 reply; 8+ messages in thread
From: Li Wang @ 2024-12-22  7:51 UTC (permalink / raw)
  To: ltp

Signed-off-by: Li Wang <liwang@redhat.com>
---

Notes:
    This patch based on Peter's work:
    Message-ID: <20241210225753.381770-1-pvorel@suse.cz>
    
    CI: https://github.com/wangli5665/ltp/actions/runs/12452324779/

 lib/newlib_tests/runtest.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/newlib_tests/runtest.sh b/lib/newlib_tests/runtest.sh
index 66aaa9361..b00965b16 100755
--- a/lib/newlib_tests/runtest.sh
+++ b/lib/newlib_tests/runtest.sh
@@ -2,7 +2,7 @@
 # Copyright (c) 2021-2024 Petr Vorel <pvorel@suse.cz>
 
 # TODO "unknown failure, exit code": test_assert test08 tst_cgroup01 tst_cgroup02 tst_res_flags variant
-# TODO TFAIL: tst_fuzzy_sync01 tst_fuzzy_sync02 test_macros0[1-6] test23 test26
+# TODO TFAIL: test_macros0[1-6] test23 test26
 # TODO TBROK: test_exec_child test_kconfig01 test_kconfig02 tst_needs_cmds04 tst_needs_cmds05 test_runtime02 test01 test02 test03 test04 test06 test11 test13 test22 test25 tst_safe_fileops
 # TODO TWARN: test_guarded_buf test14 tst_capability01 tst_print_result
 LTP_C_API_TESTS="${LTP_C_API_TESTS:-
@@ -20,6 +20,8 @@ tst_bool_expr
 tst_capability02
 tst_device
 tst_expiration_timer
+tst_fuzzy_sync01
+tst_fuzzy_sync02
 tst_fuzzy_sync03
 tst_needs_cmds0[1-36-8]
 tst_res_hexd
-- 
2.47.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment
  2024-12-22  7:51 [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Li Wang
  2024-12-22  7:51 ` [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs Li Wang
  2024-12-22  7:51 ` [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests Li Wang
@ 2025-01-02 14:38 ` Petr Vorel
  2025-01-02 14:41 ` Petr Vorel
  3 siblings, 0 replies; 8+ messages in thread
From: Petr Vorel @ 2025-01-02 14:38 UTC (permalink / raw)
  To: Li Wang; +Cc: ltp

Hi Li,

> I just polished some things preventing me from understanding the
> test logic. Hopefully, it makes things easier to read.

LGTM, thanks!
Reviewed-by: Petr Vorel <pvorel@suse.cz>

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment
  2024-12-22  7:51 [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Li Wang
                   ` (2 preceding siblings ...)
  2025-01-02 14:38 ` [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Petr Vorel
@ 2025-01-02 14:41 ` Petr Vorel
  2025-01-08  2:45   ` Li Wang
  3 siblings, 1 reply; 8+ messages in thread
From: Petr Vorel @ 2025-01-02 14:41 UTC (permalink / raw)
  To: Li Wang; +Cc: ltp

Hi Li,

would you mind to change before merge trailing "\*/" to "*/"
(removing "/") in both files and extra blank line with "*" in
tst_fuzzy_sync02.c?

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs
  2024-12-22  7:51 ` [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs Li Wang
@ 2025-01-02 14:50   ` Petr Vorel
  0 siblings, 0 replies; 8+ messages in thread
From: Petr Vorel @ 2025-01-02 14:50 UTC (permalink / raw)
  To: Li Wang; +Cc: ltp

Hi Li,

> This patch updates the behavior of tst_fuzzy_sync tests to address
> scenarios where test results may be unreliable due to resource constraints.

> Specifically, if pair->exit is set (indicating exceeded loop termination),
> the test result is ignored, and a TCONF status is returned. This ensures
> invalid results are not falsely reported as failures or successes.

>   tst_fuzzy_sync.h:654: TINFO: Exceeded execution loops, requesting exit
>   /lib/newlib_tests/tst_fuzzy_sync02.c:164: TFAIL: 2| =:15

LGTM, good catch.

Reviewed-by: Petr Vorel <pvorel@suse.cz>

Below are noted typos, could you please fix them before merge?

> Signed-off-by: Li Wang <liwang@redhat.com>
> ---
>  lib/newlib_tests/tst_fuzzy_sync01.c | 21 +++++++++++++++++++++
>  lib/newlib_tests/tst_fuzzy_sync02.c | 21 +++++++++++++++++++++
>  2 files changed, 42 insertions(+)

> diff --git a/lib/newlib_tests/tst_fuzzy_sync01.c b/lib/newlib_tests/tst_fuzzy_sync01.c
> index d510bd2dd..c8c195859 100644
> --- a/lib/newlib_tests/tst_fuzzy_sync01.c
> +++ b/lib/newlib_tests/tst_fuzzy_sync01.c
> @@ -212,10 +212,31 @@ static void run(unsigned int i)

>  		if (critical > 100) {
>  			tst_fzsync_pair_cleanup(&pair);
> +			tst_atomic_store(0, &pair.exit);
>  			break;
>  		}
>  	}

> +	/*
> +	 * If `pair->exit` is true, the test may fail to meet expected
> +	 * results due to resource constraints in shared CI environments
> +	 * (e.g., GitHub Actions). Limited control over CPU allocation
> +	 * can cause delays or interruptions in CPU time slices due to
> +	 * contention with other jobs.
> +	 *
> +	 * Binding the test to a single CPU core (e.g., via `taskset -c 0`)
> +	 * can worsen this by increasing contention, leading to performance
> +	 * degradation and premature loop termination.
> +	 *
> +	 * To ensure valid and reliable results in scenarios (e.g., HW, VM, CI),
> +	 * it is best to ingore test result when loop termination occurs,
s/ingore/ignore/
> +	 * avoiding unnecessary false postive.
s/postive/positive/

> +	 */
> +	if (pair.exit) {
> +		tst_res(TCONF, "Test may not be able to generate a valid result");
> +		return;
> +	}
> +
>  	tst_res(critical > 50 ? TPASS : TFAIL,
>  		"acs:%-2d act:%-2d art:%-2d | =:%-4d -:%-4d +:%-4d",
>  		a.critical_s, a.critical_t, a.return_t,
> diff --git a/lib/newlib_tests/tst_fuzzy_sync02.c b/lib/newlib_tests/tst_fuzzy_sync02.c
> index f95394371..ad19a675e 100644
> --- a/lib/newlib_tests/tst_fuzzy_sync02.c
> +++ b/lib/newlib_tests/tst_fuzzy_sync02.c
> @@ -192,10 +192,31 @@ static void run(unsigned int i)

>  		if (critical > 100) {
>  			tst_fzsync_pair_cleanup(&pair);
> +			tst_atomic_store(0, &pair.exit);
>  			break;
>  		}
>  	}

> +	/*
> +	 * If `pair->exit` is true, the test may fail to meet expected
> +	 * results due to resource constraints in shared CI environments
> +	 * (e.g., GitHub Actions). Limited control over CPU allocation
> +	 * can cause delays or interruptions in CPU time slices due to
> +	 * contention with other jobs.
> +	 *
> +	 * Binding the test to a single CPU core (e.g., via `taskset -c 0`)
> +	 * can worsen this by increasing contention, leading to performance
> +	 * degradation and premature loop termination.
> +	 *
> +	 * To ensure valid and reliable results in scenarios (e.g., HW, VM, CI),
> +	 * it is best to ingore test result when loop termination occurs,
s/ingore/ignore/
> +	 * avoiding unnecessary false postive.
s/postive/positive/

Also there is original typo from Richie:
s/Emperically/Empirically/

Kind regards,
Petr

> +	 */
> +	if (pair.exit) {
> +		tst_res(TCONF, "Test may not be able to generate a valid result");
> +		return;
> +	}

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests
  2024-12-22  7:51 ` [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests Li Wang
@ 2025-01-02 14:53   ` Petr Vorel
  0 siblings, 0 replies; 8+ messages in thread
From: Petr Vorel @ 2025-01-02 14:53 UTC (permalink / raw)
  To: Li Wang; +Cc: ltp

Hi Li,

Reviewed-by: Petr Vorel <pvorel@suse.cz>

> Notes:
>     This patch based on Peter's work:
>     Message-ID: <20241210225753.381770-1-pvorel@suse.cz>

>     CI: https://github.com/wangli5665/ltp/actions/runs/12452324779/

>  lib/newlib_tests/runtest.sh | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)

> diff --git a/lib/newlib_tests/runtest.sh b/lib/newlib_tests/runtest.sh
> index 66aaa9361..b00965b16 100755
> --- a/lib/newlib_tests/runtest.sh
> +++ b/lib/newlib_tests/runtest.sh
> @@ -2,7 +2,7 @@
>  # Copyright (c) 2021-2024 Petr Vorel <pvorel@suse.cz>

>  # TODO "unknown failure, exit code": test_assert test08 tst_cgroup01 tst_cgroup02 tst_res_flags variant
> -# TODO TFAIL: tst_fuzzy_sync01 tst_fuzzy_sync02 test_macros0[1-6] test23 test26
Ah, I should have mark it as tst_fuzzy_sync0[12]

Anyway, feel free to merge before I merge my patchset, I have no problem to
rebase mine.

Kind regards,
Petr

> +# TODO TFAIL: test_macros0[1-6] test23 test26
>  # TODO TBROK: test_exec_child test_kconfig01 test_kconfig02 tst_needs_cmds04 tst_needs_cmds05 test_runtime02 test01 test02 test03 test04 test06 test11 test13 test22 test25 tst_safe_fileops
>  # TODO TWARN: test_guarded_buf test14 tst_capability01 tst_print_result
>  LTP_C_API_TESTS="${LTP_C_API_TESTS:-
> @@ -20,6 +20,8 @@ tst_bool_expr
>  tst_capability02
>  tst_device
>  tst_expiration_timer
> +tst_fuzzy_sync01
> +tst_fuzzy_sync02
>  tst_fuzzy_sync03
>  tst_needs_cmds0[1-36-8]
>  tst_res_hexd

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment
  2025-01-02 14:41 ` Petr Vorel
@ 2025-01-08  2:45   ` Li Wang
  0 siblings, 0 replies; 8+ messages in thread
From: Li Wang @ 2025-01-08  2:45 UTC (permalink / raw)
  To: Petr Vorel; +Cc: ltp

On Thu, Jan 2, 2025 at 10:41 PM Petr Vorel <pvorel@suse.cz> wrote:

> Hi Li,
>
> would you mind to change before merge trailing "\*/" to "*/"
> (removing "/") in both files and extra blank line with "*" in
> tst_fuzzy_sync02.c?
>

Thanks for the review, I merge the patch set (with your suggestions).


-- 
Regards,
Li Wang

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-01-08  2:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-22  7:51 [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Li Wang
2024-12-22  7:51 ` [LTP] [PATCH 2/3] tst_fuzzy_sync: ingnore test result if loop termination occurs Li Wang
2025-01-02 14:50   ` Petr Vorel
2024-12-22  7:51 ` [LTP] [PATCH 3/3] newlib_test: enable all tst_fuzzy_sync tests Li Wang
2025-01-02 14:53   ` Petr Vorel
2025-01-02 14:38 ` [LTP] [PATCH 1/3] tst_fuzzy_sync: refine code and comment Petr Vorel
2025-01-02 14:41 ` Petr Vorel
2025-01-08  2:45   ` Li Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox