From 66ed8c93cbcbb311f1e526e1abc40a372028e611 Mon Sep 17 00:00:00 2001 From: phil Date: Mon, 15 Dec 2003 04:39:38 +0000 Subject: [PATCH] - fix iopentest*.c to produce error messages with filenames - remove sanity test 55 --- lustre/tests/iopentest1.c | 38 +++++++++++----- lustre/tests/iopentest2.c | 107 ++++++++++++++++++++++++++++++---------------- lustre/tests/sanity.sh | 16 ------- 3 files changed, 99 insertions(+), 62 deletions(-) diff --git a/lustre/tests/iopentest1.c b/lustre/tests/iopentest1.c index 25ad401..107970e 100644 --- a/lustre/tests/iopentest1.c +++ b/lustre/tests/iopentest1.c @@ -1,3 +1,7 @@ +/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- + * vim:expandtab:shiftwidth=8:tabstop=8: + */ + #include #include #include @@ -33,16 +37,24 @@ static char *get_iname(char *fname, const char *mtpt) CHECK_IT(iname, "malloc() failed"); fd = open(fname, O_CREAT, 0644); - CHECK_IT(fd >= 0 || errno == EISDIR, "open(fname) failed"); + if (fd < 0 && errno != EISDIR) { + fprintf(stderr, "%s:%d: open(%s) failed: %s\n", __FILE__, + __LINE__, fname, strerror(errno)); + exit(1); + } if (fd >= 0) close(fd); rc = stat(fname, &buf); - CHECK_IT(rc == 0, "stat(fname) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: stat(%s) failed: %s\n", __FILE__, + __LINE__, fname, strerror(errno)); + exit(1); + } rc = snprintf(iname, INAME_LEN, - "%s/__iopen__/%lu", mtpt, buf.st_ino); + "%s/__iopen__/%lu", mtpt, (unsigned long)buf.st_ino); CHECK_SNPRINTF(rc, INAME_LEN); return iname; @@ -67,16 +79,22 @@ int main(int argc, char *argv[]) mtpt = argv[2]; iname = get_iname(fname, mtpt); - i=10000; - printf("%s:started...\n",argv[0]); - do { + printf("%s:started...\n", argv[0]); + for (i = 0; i < 10000; i++) { rc = stat(fname, &buf); - CHECK_IT(rc == 0, "stat(fname) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: stat(%s) failed: %s\n", + __FILE__, __LINE__, fname, strerror(errno)); + exit(1); + } rc = stat(iname, &buf); - CHECK_IT(rc == 0, "stat(iname) failed"); - i--; - } while (i>=1); + if (rc != 0) { + fprintf(stderr, "%s:%d: stat(%s) failed: %s\n", + __FILE__, __LINE__, iname, strerror(errno)); + exit(1); + } + } return 0; } diff --git a/lustre/tests/iopentest2.c b/lustre/tests/iopentest2.c index dfa0b82..6f95f95 100644 --- a/lustre/tests/iopentest2.c +++ b/lustre/tests/iopentest2.c @@ -1,3 +1,7 @@ +/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- + * vim:expandtab:shiftwidth=8:tabstop=8: + */ + #include #include #include @@ -9,9 +13,9 @@ #include #include +const char *progname; const char usage_fmt[] = "Usage: %s \n"; #define INAME_LEN (PATH_MAX + 1) -const char *progname; #define CHECK_IT(exp, pstr) \ if (!(exp)) { \ @@ -33,16 +37,24 @@ static char *get_iname(char *fname, const char *mtpt) CHECK_IT(iname, "malloc() failed"); fd = open(fname, O_CREAT, 0644); - CHECK_IT(fd >= 0 || errno == EISDIR, "open(fname) failed"); + if (fd < 0 && errno != EISDIR) { + fprintf(stderr, "%s:%d: open(%s) failed: %s\n", __FILE__, + __LINE__, fname, strerror(errno)); + exit(1); + } if (fd >= 0) close(fd); rc = stat(fname, &buf); - CHECK_IT(rc == 0, "stat(fname) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: stat(%s) failed: %s\n", __FILE__, + __LINE__, fname, strerror(errno)); + exit(1); + } rc = snprintf(iname, INAME_LEN, - "%s/__iopen__/%lu", mtpt, buf.st_ino); + "%s/__iopen__/%lu", mtpt, (unsigned long)buf.st_ino); CHECK_SNPRINTF(rc, INAME_LEN); return iname; @@ -51,40 +63,33 @@ static char *get_iname(char *fname, const char *mtpt) int main(int argc, char *argv[]) { char *fname, *mtpt, *pname; - int rc, fd; char *fname_iname, *dir; char *dir_iname = NULL, *foo = NULL, *bar = NULL; - - int i,j; - int thread=0; + int rc, fd, i, thread = 0; pname = strdup(argv[0]); progname = basename(argv[0]); - + if (argc != 2) { fprintf(stderr, usage_fmt, progname); return 1; } - for(i=1;i<=10;i++) { - rc=fork(); + for (i = 1; i <= 10; i++) { + rc = fork(); if (rc < 0) { - fprintf(stderr, "error: %s: #%ld - %s\n", argv[0], i, + fprintf(stderr, "error: %s: #%d - %s\n", argv[0], i, strerror(rc = errno)); break; } else if (rc == 0) { thread = i; break; - } else { - printf("%s: thread #%ld (PID %d) started\n", - argv[0], i, rc); } + printf("%s: thread #%d (PID %d) started\n", argv[0], i, rc); rc = 0; } - if (thread!=0){ - j=1000; - + if (thread != 0) { mtpt = argv[1]; fname = malloc(INAME_LEN); CHECK_IT(fname, "malloc() failed"); @@ -94,15 +99,18 @@ int main(int argc, char *argv[]) CHECK_SNPRINTF(rc, INAME_LEN); rc = mkdir(fname, 0644); - CHECK_IT(rc == 0, "mkdir(fname) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: mkdir(%s) failed: %s\n", + __FILE__, __LINE__, fname, strerror(errno)); + exit(1); + } fname_iname = get_iname(fname, mtpt); dir = malloc(INAME_LEN); CHECK_IT(dir, "malloc() failed"); - rc = snprintf(dir, INAME_LEN, - "%s/dir", fname_iname); + rc = snprintf(dir, INAME_LEN, "%s/dir", fname_iname); CHECK_SNPRINTF(rc, INAME_LEN); foo = malloc(INAME_LEN); @@ -111,35 +119,62 @@ int main(int argc, char *argv[]) bar = malloc(INAME_LEN); CHECK_IT(bar, "malloc() failed"); - do { + for (i = 0; i < 1000; i++) { rc = mkdir(dir, 0644); - CHECK_IT(rc == 0, "mkdir() failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: mkdir(%s) failed: %s\n", + __FILE__, __LINE__, dir, + strerror(errno)); + exit(1); + } dir_iname = get_iname(dir, mtpt); - - rc = snprintf(foo, INAME_LEN, - "%s/bar", dir_iname); + + rc = snprintf(foo, INAME_LEN, "%s/bar", dir_iname); CHECK_SNPRINTF(rc, INAME_LEN); - - rc = snprintf(bar, INAME_LEN, - "%s/bar", dir_iname); + + rc = snprintf(bar, INAME_LEN, "%s/bar", dir_iname); CHECK_SNPRINTF(rc, INAME_LEN); fd = open(foo, O_CREAT, 0644); - CHECK_IT(fd >= 0, "open(foo) failed"); - close(fd); + if (fd < 0) { + fprintf(stderr, "%s:%d: open(%s) failed: %s\n", + __FILE__, __LINE__, foo, + strerror(errno)); + exit(1); + } + rc = close(fd); + if (rc != 0) { + fprintf(stderr, "%s:%d: close() failed: %s\n", + __FILE__, __LINE__, strerror(errno)); + exit(1); + } rc = rename(foo, bar); - CHECK_IT(rc == 0, "rename(foo, bar) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: rename(%s, %s) failed: " + "%s\n", __FILE__, __LINE__, foo, bar, + strerror(errno)); + exit(1); + } rc = unlink(bar); - CHECK_IT(rc == 0, "unlink(bar) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: unlink(%s) failed: " + "%s\n", __FILE__, __LINE__, bar, + strerror(errno)); + exit(1); + } rc = rmdir(dir); - CHECK_IT(rc == 0, "rmdir(dir) failed"); + if (rc != 0) { + fprintf(stderr, "%s:%d: rmdir(%s) failed: %s\n", + __FILE__, __LINE__, dir, + strerror(errno)); + exit(1); + } free(dir_iname); - j--; - } while (j>=1); + } } return 0; } diff --git a/lustre/tests/sanity.sh b/lustre/tests/sanity.sh index 5026f66..dab7b6d 100644 --- a/lustre/tests/sanity.sh +++ b/lustre/tests/sanity.sh @@ -1546,22 +1546,6 @@ test_54d() { } run_test 54d "fifo device works in lustre" -test_55() { - for i in `ls $TMP|grep -E 'mds|ost'` ; do - rm -rf $DIR/d55 - mkdir $DIR/d55 - mount -o loop,iopen $TMP/$i $DIR/d55 - touch $DIR/d55/foo - $IOPENTEST1 $DIR/d55/foo $DIR/d55 - $IOPENTEST2 $DIR/d55 - echo "check for $TMP/$i. Please wait..." - sleep 6 - rm -rf $DIR/d55/* - umount $DIR/d55 - done -} -run_test 55 "check iopen_connect_dentry()=======================" - test_59() { echo "touch 130 files" for i in `seq 1 130` ; do -- 1.8.3.1