Hi!
On 05/18/2015 01:14 PM, Zeng Linggang wrote:
> SEEK_HOLE is only supported since version 3.1. Check the specified
> range blocks are zeroed while the kernel does not supported SEEK_HOLE.
>
> Signed-off-by: Zeng Linggang <[email protected]>
> ---
>   testcases/kernel/syscalls/fallocate/fallocate04.c | 49 
> ++++++++++++++++++-----
>   1 file changed, 39 insertions(+), 10 deletions(-)
>
> diff --git a/testcases/kernel/syscalls/fallocate/fallocate04.c 
> b/testcases/kernel/syscalls/fallocate/fallocate04.c
> index 911bbe8..9d9587b 100644
> --- a/testcases/kernel/syscalls/fallocate/fallocate04.c
> +++ b/testcases/kernel/syscalls/fallocate/fallocate04.c
> @@ -50,6 +50,8 @@ static const option_t options[] = {
>       {NULL, NULL, NULL}
>   };
>   
> +static off_t check_file_hole(int, off_t, off_t);
> +
>   static void help(void)
>   {
>       printf("  -v      Verbose\n");
> @@ -150,17 +152,12 @@ static void test02(void)
>       }
>   
>       tst_resm(TINFO, "check that file has a hole with lseek(,,SEEK_HOLE)");
> -     off_t ret = lseek(fd, 0, SEEK_HOLE);
>   
> -     if (ret != (ssize_t)block_size) {
> -             /* exclude error when kernel doesn't have SEEK_HOLE support */
> -             if (errno != EINVAL) {
> -                     tst_brkm(TFAIL | TERRNO, cleanup,
> -                              "fallocate() or lseek() failed");
> -             }
> -             tst_resm(TWARN | TERRNO, "lseek() doesn't support SEEK_HOLE");
> -     }
> -     tst_resm(TINFO, "found a hole at '%ld' offset", ret);
> +     off_t ret = check_file_hole(fd, block_size, block_size);
> +     if (ret != (ssize_t)block_size)
> +             tst_resm(TWARN | TERRNO, "No file hole found");
> +     else
> +             tst_resm(TINFO, "found a hole at '%ld' offset", ret);

'check_file_data' function read the file and check for zeroes (a few 
lines after lseek), so 'check_file_hole' seems pointless here.

Best regards,
Alexey


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to