Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
b=5494
[fs/lustre-release.git]
/
lustre
/
tests
/
test_brw.c
diff --git
a/lustre/tests/test_brw.c
b/lustre/tests/test_brw.c
index
54126a0
..
fe18021
100644
(file)
--- a/
lustre/tests/test_brw.c
+++ b/
lustre/tests/test_brw.c
@@
-3,7
+3,9
@@
*/
/* for O_DIRECT */
*/
/* for O_DIRECT */
-#define _GNU_SOURCE
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <string.h>
@@
-15,17
+17,7
@@
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/stat.h>
-#define CERROR(fmt, arg...) fprintf(stderr, fmt, ## arg)
-#ifndef __u64
-#define __u64 long long
-#define cpu_to_le64(v) (v)
-#define le64_to_cpu(v) (v)
-#endif
-
-#ifndef LPU64
-#define LPU64 "%Lu"
-#define LPX64 "%#Lx"
-#endif
+#include <liblustre.h>
#define READ 1
#define WRITE 2
#define READ 1
#define WRITE 2
@@
-93,7
+85,7
@@
int main(int argc, char **argv)
char *buf;
long long count, last, offset;
long pg_vec, len;
char *buf;
long long count, last, offset;
long pg_vec, len;
-
long long
objid;
+
__u64
objid;
struct stat st;
int flags = 0;
int cmd = 0;
struct stat st;
int flags = 0;
int cmd = 0;
@@
-118,13
+110,26
@@
int main(int argc, char **argv)
flags = O_RDWR | O_CREAT;
}
if (strchr(argv[3], 'd')) {
flags = O_RDWR | O_CREAT;
}
if (strchr(argv[3], 'd')) {
+#ifdef O_DIRECT
flags |= O_DIRECT;
flags |= O_DIRECT;
+#else
+ fprintf(stderr,
+ "%s: O_DIRECT not supported in this build\n",
+ argv[0]);
+ exit(1);
+#endif
}
if (!cmd)
usage(argv[0]);
} else {
cmd = READ | WRITE;
}
if (!cmd)
usage(argv[0]);
} else {
cmd = READ | WRITE;
- flags = O_RDWR | O_CREAT | O_DIRECT;
+ flags = O_RDWR | O_CREAT;
+#ifdef O_DIRECT
+ flags |= O_DIRECT;
+#else
+ fprintf(stderr, "%s: warning: not setting O_DIRECT\n",
+ argv[0]);
+#endif
}
if (argc >= 5) {
}
if (argc >= 5) {
@@
-149,8
+154,13
@@
int main(int argc, char **argv)
objid = 3;
}
objid = 3;
}
- printf("%s: %s on %s(objid "LPX64") for "LPU64"x%ld pages \n",
- argv[0], flags & O_DIRECT ? "directio" : "i/o",
+ printf("%s: %s on %s(objid "LPX64") for %llux%ld pages \n",
+ argv[0],
+#ifdef O_DIRECT
+ flags & O_DIRECT ? "directio" : "i/o",
+#else
+ "i/o",
+#endif
argv[1], objid, count, pg_vec);
fd = open(argv[1], flags | O_LARGEFILE);
argv[1], objid, count, pg_vec);
fd = open(argv[1], flags | O_LARGEFILE);