[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130531172456.GB6915@gmail.com>
Date: Sat, 1 Jun 2013 01:24:56 +0800
From: Zheng Liu <gnehzuil.liu@...il.com>
To: Eric Sandeen <sandeen@...hat.com>
Cc: xfs-oss <xfs@....sgi.com>,
ext4 development <linux-ext4@...r.kernel.org>
Subject: Re: [PATCH] xfstests: fix seek_sanity_test for fs w/o fallocate
On Fri, May 31, 2013 at 10:45:31AM -0500, Eric Sandeen wrote:
> currently the seek_sanity_test (generic/285) fails on ext3
> or ext2 due to fallocate() failures. Just ignore that test
> if the fs doesn't support fallocate.
Hi Eric,
I remember that my patch had been applied [1]. But stranger I couldn't
find it in xfstests tree. However, I think that your patch is better.
1. http://oss.sgi.com/archives/xfs/2013-05/msg00534.html
- Zheng
>
> Signed-off-by: Eric Sandeen <sandeen@...hat.com>
> ---
>
> diff --git a/src/seek_sanity_test.c b/src/seek_sanity_test.c
> index cd3b1ee..fbf5a8c 100644
> --- a/src/seek_sanity_test.c
> +++ b/src/seek_sanity_test.c
> @@ -96,9 +96,13 @@ static int do_fallocate(int fd, off_t offset, off_t length, int mode)
> int ret;
>
> ret = fallocate(fd, mode, offset, length);
> - if (ret)
> + if (ret) {
> + /* Don't warn about a filesystem w/o fallocate support */
> + if (errno == EOPNOTSUPP)
> + return ret;
> fprintf(stderr, " ERROR %d: Failed to preallocate "
> "space to %ld bytes\n", errno, (long) length);
> + }
>
> return ret;
> }
> @@ -290,8 +294,14 @@ static int test09(int fd, int testnum)
>
> /* preallocate 8M space to file */
> ret = do_fallocate(fd, 0, filsz, 0);
> - if (ret < 0)
> + if (ret < 0) {
> + /* Report success if fs doesn't support fallocate */
> + if (errno == EOPNOTSUPP) {
> + fprintf(stdout, "Test skipped as fs doesn't support fallocate.\n");
> + ret = 0;
> + }
> goto out;
> + }
>
> ret = do_pwrite(fd, buf, bufsz, bufsz * 10);
> if (!ret) {
> @@ -336,8 +346,14 @@ static int test08(int fd, int testnum)
>
> /* preallocate 4M space to file */
> ret = do_fallocate(fd, 0, filsz, 0);
> - if (ret < 0)
> + if (ret < 0) {
> + /* Report success if fs doesn't support fallocate */
> + if (errno == EOPNOTSUPP) {
> + fprintf(stdout, "Test skipped as fs doesn't support fallocate.\n");
> + ret = 0;
> + }
> goto out;
> + }
>
> ret = do_pwrite(fd, buf, bufsz, bufsz * 10);
> if (ret)
> @@ -379,8 +395,14 @@ static int test07(int fd, int testnum)
>
> /* preallocate 4M space to file */
> ret = do_fallocate(fd, 0, filsz, 0);
> - if (ret < 0)
> + if (ret < 0) {
> + /* Report success if fs doesn't support fallocate */
> + if (errno == EOPNOTSUPP) {
> + fprintf(stdout, "Test skipped as fs doesn't support fallocate.\n");
> + ret = 0;
> + }
> goto out;
> + }
>
> ret = do_pwrite(fd, buf, bufsz, bufsz * 10);
> if (ret)
>
> _______________________________________________
> xfs mailing list
> xfs@....sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists