From: Eric Whitney Date: Tue, 26 Feb 2013 21:03:22 +0000 (+0000) Subject: xfstests: use native definition of O_DIRECT flag X-Git-Tag: v2022.05.01~3526 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5825ecd3b99ed8c177895d5e6a830133fed384ea;p=xfstests-dev.git xfstests: use native definition of O_DIRECT flag The definition of O_DIRECT in src/trunc.c causes xfstest 125 to fail when run on a Pandaboard. On ARM, the value used (0x040000) is O_DIRECTORY rather than O_DIRECT as it is on x86. Prefer the platform's native definition of O_DIRECT supplied by fcntl.h if available. Also, fix a couple of error messages to properly reflect their context. Signed-off-by: Eric Whitney Reviewed-by: Dave Chinner Signed-off-by: Rich Johnston --- diff --git a/src/trunc.c b/src/trunc.c index 75395322..38fb21f6 100644 --- a/src/trunc.c +++ b/src/trunc.c @@ -26,7 +26,9 @@ #include #include +#ifndef O_DIRECT #define O_DIRECT 040000 +#endif #define WAITTIME 60 #define BUFSIZE 4096 @@ -82,7 +84,7 @@ while((c=getopt(argc,argv,"f:"))!=EOF) { printf("direct write of 1's into file\n"); err = write(fd, buf, BUFSIZE); - if (err < 0) perror("buffered write failed"); + if (err < 0) perror("direct write failed"); close(fd); @@ -96,7 +98,7 @@ while((c=getopt(argc,argv,"f:"))!=EOF) { printf("buffered write of 2's into file\n"); err = write(fd, buf, BUFSIZE); - if (err < 0) perror("direct write failed"); + if (err < 0) perror("buffered write failed"); /* 1 now on disk, but 2 data is buffered */