diff mbox series

[5/5] syscalls/readahead02: fail test if readahead did not use any cache

Message ID 20180929094432.30197-1-amir73il@gmail.com
State Superseded
Headers show
Series None | expand

Commit Message

Amir Goldstein Sept. 29, 2018, 9:44 a.m. UTC
The heuristic of failing the test only if not saving any io has false
negatives with overlayfs readahead() bug, but readahead() with overlayfs
always warns on "using less cache then expected", when actually, it is
using no cache at all.

Add another condition to fail the test if readahead did not use any
cache at all, which always detected the overlayfs bug.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---

Cyril,

This is a followup for the overlayfs readahead series.
With the patches already posted, the test fails sometimes, but
most of the times it just gets a warning.

With this additional patch test fails reliably.
Note that test only fails between these upstream commits:
  good  b833a3660394 ("ovl: add ovl_fadvise()")
  bad   5b910bd615ba ("ovl: fix GPF in swapfile_activate...")

I have a few more minor fixes for the v2 series, but I will hold
them back until v1 is reviewed.

Thanks,
Amir.

 testcases/kernel/syscalls/readahead/readahead02.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Jan Stancek Oct. 3, 2018, 12:50 p.m. UTC | #1
----- Original Message -----
> The heuristic of failing the test only if not saving any io has false
> negatives with overlayfs readahead() bug, but readahead() with overlayfs
> always warns on "using less cache then expected", when actually, it is
> using no cache at all.
> 
> Add another condition to fail the test if readahead did not use any
> cache at all, which always detected the overlayfs bug.

ack, explicit FAIL here looks reasonable

> 
> Signed-off-by: Amir Goldstein <amir73il@gmail.com>
> ---
> 
> Cyril,
> 
> This is a followup for the overlayfs readahead series.
> With the patches already posted, the test fails sometimes, but
> most of the times it just gets a warning.
> 
> With this additional patch test fails reliably.
> Note that test only fails between these upstream commits:
>   good  b833a3660394 ("ovl: add ovl_fadvise()")
>   bad   5b910bd615ba ("ovl: fix GPF in swapfile_activate...")
> 
> I have a few more minor fixes for the v2 series, but I will hold
> them back until v1 is reviewed.
> 
> Thanks,
> Amir.
> 
>  testcases/kernel/syscalls/readahead/readahead02.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/testcases/kernel/syscalls/readahead/readahead02.c
> b/testcases/kernel/syscalls/readahead/readahead02.c
> index b497fb5db..fbcae1df8 100644
> --- a/testcases/kernel/syscalls/readahead/readahead02.c
> +++ b/testcases/kernel/syscalls/readahead/readahead02.c
> @@ -341,6 +341,8 @@ static void test_readahead(unsigned int n)
>  		 */
>  		if (cached_ra * 1024 > testfile_size / 2)
>  			tst_res(TPASS, "using cache as expected");
> +		else if (!cached_ra)
> +			tst_res(TFAIL, "readahead failed to use any cache");
>  		else
>  			tst_res(TWARN, "using less cache than expected");
>  	} else {
> --
> 2.17.1
> 
> 
> --
> Mailing list info: https://lists.linux.it/listinfo/ltp
>
diff mbox series

Patch

diff --git a/testcases/kernel/syscalls/readahead/readahead02.c b/testcases/kernel/syscalls/readahead/readahead02.c
index b497fb5db..fbcae1df8 100644
--- a/testcases/kernel/syscalls/readahead/readahead02.c
+++ b/testcases/kernel/syscalls/readahead/readahead02.c
@@ -341,6 +341,8 @@  static void test_readahead(unsigned int n)
 		 */
 		if (cached_ra * 1024 > testfile_size / 2)
 			tst_res(TPASS, "using cache as expected");
+		else if (!cached_ra)
+			tst_res(TFAIL, "readahead failed to use any cache");
 		else
 			tst_res(TWARN, "using less cache than expected");
 	} else {