Fix compile warnings/error due to recent lustre-build.m4 commit of _GNU_SOURCE.
Remove some obsolete tests that now had compile warnings.
b=12348
noinst_DATA =
noinst_SCRIPTS = leak_finder.pl llecho.sh llmount.sh llmountcleanup.sh test-framework.sh
-noinst_SCRIPTS += runfailure-mds runvmstat runfailure-net
-noinst_SCRIPTS += runfailure-ost runiozone runregression-net.sh runtests
+noinst_SCRIPTS += runvmstat runiozone runtests
noinst_SCRIPTS += sanity.sh rundbench
noinst_SCRIPTS += cfg/local.sh
acl/inheritance.test
if TESTS
-noinst_PROGRAMS = openunlink testreq truncate directio openme writeme
+noinst_PROGRAMS = openunlink truncate directio openme writeme
noinst_PROGRAMS += tchmod toexcl fsx test_brw openclose createdestroy
noinst_PROGRAMS += stat createmany chownmany statmany multifstat createtest mlink utime
noinst_PROGRAMS += opendirunlink opendevunlink unlinkmany fchdir_test checkstat
/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
* vim:expandtab:shiftwidth=8:tabstop=8:
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <string.h>
#include <unistd.h>
}
}
-int
+int
get_fd(void)
{
struct test_file *tf = get_tf();
return tf->fd;
}
-static const char *basename(const char *path)
+static const char *my_basename(const char *path)
{
char *c = strrchr(path, '/');
return c ? c++ : path;
}
-void
+void
open_test_files(char **argv, int argc)
{
struct test_file *tf;
open_test_files(argv, argc);
- strncat(goodfile, dirpath ? basename(fname) : fname, 256);
+ strncat(goodfile, dirpath ? my_basename(fname) : fname, 256);
strcat (goodfile, ".fsxgood");
fsxgoodfd = open(goodfile, O_RDWR|O_CREAT|O_TRUNC, 0666);
if (fsxgoodfd < 0) {
prterr(goodfile);
exit(92);
}
- strncat(logfile, dirpath ? basename(fname) : fname, 256);
+ strncat(logfile, dirpath ? my_basename(fname) : fname, 256);
strcat (logfile, ".fsxlog");
fsxlogf = fopen(logfile, "w");
if (fsxlogf == NULL) {
/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
* vim:expandtab:shiftwidth=8:tabstop=8:
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
* vim:expandtab:shiftwidth=8:tabstop=8:
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE /* pull in O_DIRECTORY in bits/fcntl.h */
+#endif
#include <stdio.h>
#include <fcntl.h>
#include <string.h>
*/
/* for O_DIRECTORY */
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <fcntl.h>
#include <unistd.h>
*/
/* for O_DIRECT */
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdlib.h>
#include <stdio.h>
* vim:expandtab:shiftwidth=8:tabstop=8:
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <errno.h>
*/
/* for O_DIRECTORY */
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <stdlib.h>
#endif
/* for O_DIRECTORY and O_DIRECT */
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <sys/types.h>
*/
/* for O_DIRECTORY */
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <stdlib.h>
+++ /dev/null
-#!/bin/sh
-
-SRCDIR="`dirname $0`"
-. $SRCDIR/common.sh
-
-. $SRCDIR/llmount.sh
-
-MNT="setup_mount"
-
-test_fail() {
- echo $1 > /proc/sys/lustre/fail_loc
- shift
- echo "Running '$*'"
- $*
-
- echo "Cleaning up and restarting MDS"
- umount /mnt/lustre || fail "unable to unmount"
- $OBDCTL <<- EOF
- name2dev MDSDEV
- cleanup
- detach
- quit
- EOF
-
- echo 0 > /proc/sys/lustre/fail_loc
-
- $OBDCTL <<- EOF
- newdev
- attach mds MDSDEV
- setup ${MDS} ${MDSFS}
- quit
- EOF
- $MNT
-}
-
-#set -vx
-
-touch /mnt/lustre/foo
-chmod a+x /mnt/lustre/foo
-sync
-
-# OBD_FAIL_MDS_REINT_SETATTR_WRITE - MDS will discard data from setattr
-test_fail 0x10a chmod 000 /mnt/lustre/foo
-ls -l /mnt/lustre/foo
-[ ! -x /mnt/lustre/foo ] && fail "/mnt/lustre/foo is not executable!"
-
-# OBD_FAIL_MDS_REINT_CREATE_WRITE - MDS will not create the file
-test_fail 0x10c touch /mnt/lustre/bar
-ls /mnt/lustre/bar
-[ $? -eq 0 ] && fail "/mnt/lustre/bar was created!"
-
-# OBD_FAIL_MDS_REINT_UNLINK_WRITE - MDS will discard data from unlink
-test_fail 0x10e rm /mnt/lustre/foo
-ls /mnt/lustre/foo
-[ $? -eq 1 ] && fail "/mnt/lustre/foo has been removed!"
-
-# OBD_FAIL_MDS_REINT_RENAME_WRITE - MDS will discard data from rename
-test_fail 0x112 mv /mnt/lustre/foo /mnt/lustre/bar
-ls /mnt/lustre/foo /mnt/lustre/bar
-[ ! -f /mnt/lustre/foo -o -f /mnt/lustre/bar ] && \
- fail "/mnt/lustre/foo has been renamed to bar!"
-
-echo "Done."
+++ /dev/null
-#!/bin/sh
-
-fail() {
- echo "ERROR: $1" 1>&2
- [ $2 ] && RC=$2 || RC=1
- exit $RC
-}
-
-test_fail() {
- oldtimeout=`cat /proc/sys/lustre/timeout`
- echo $TIMEOUT > /proc/sys/lustre/timeout
- echo $1 > /proc/sys/lustre/fail_loc
- shift
- $* &
- sleep $TIMEOUT
- sleep 2 # fudge
- kill -9 $!
-
- echo $oldtimeout > /proc/sys/lustre/timeout
- echo 0 > /proc/sys/lustre/fail_loc
- umount -f /mnt/lustre || fail "cannot unmount /mnt/lustre"
- mount -t lustre_lite -o "osc=$OSC,mdc=$MDC" none /mnt/lustre || \
- fail "cannot remount $OSC/$MDC on /mnt/lustre"
-}
-
-set -vx
-
-LCTL=../utils/lctl
-OSC=OSC_`hostname`_UUID
-MDC=MDC_client1_UUID
-TIMEOUT=5 # complete in finite time
-
-[ "`mount | grep /mnt/lustre`" ] || echo | sh llmount.sh || exit -1
-
-# GETATTR_NET - ls will hang on the getattr
-# test_fail 0x102 ls -l /mnt/lustre
-
-# READPAGE_NET - ls will hang reading in new pages (lost+found is not in cache)
-test_fail 0x104 ls /mnt/lustre
-
-sleep 1
-
-# REINT_NET - touch will hang on setattr
-test_fail 0x107 touch /mnt/lustre
-
-# REINT_NET - touch will hang on create
-test_fail 0x107 touch /mnt/lustre/tt
-
-# REINT_NET - mv will hang on rename
-touch /mnt/lustre/foo
-test_fail 0x107 mv /mnt/lustre/foo /mnt/lustre/bar
-
-# REINT_NET - rm will hang on unlink
-touch /mnt/lustre/salmon
-test_fail 0x107 rm /mnt/lustre/salmon
-
-# OPEN_NET - touch will hang on open
-touch /mnt/lustre/foo
-test_fail 0x113 cat /mnt/lustre/foo
-
-# CLOSE_NET - ls will hang on close
-test_fail 0x115 ./testreq --close junk_file_handle
-
-echo 0 > /proc/sys/lustre/fail_loc
-
-echo "Done."
+++ /dev/null
-#!/bin/sh
-
-SRCDIR="`dirname $0`"
-. $SRCDIR/common.sh
-
-setup_opts "$@"
-
-set -vx
-
-test_fail() {
- echo $1 > /proc/sys/lustre/fail_loc
- shift
- echo "Running '$*'"
- $* &
- sleep 1
- kill -9 $!
-
- echo 0 > /proc/sys/lustre/fail_loc
- umount /mnt/lustre || fail "cannot unmount /mnt/lustre"
- setup_mount || fail "cannot remount /mnt/lustre"
-}
-
-[ "`mount | grep /mnt/lustre`" ] || . llsetup.sh "$@" || exit -1
-
-# OBD_FAIL_OST_OPEN_NET: OST will discard open request packet
-touch /mnt/lustre/foo
-test_fail 0x208 cat /mnt/lustre/foo
-
-# OBD_FAIL_OST_CLOSE_NET: OST will discard close request packet
-test_fail 0x209 cat /mnt/lustre/foo
-
-# OBD_FAIL_OST_CREATE_NET: OST will discard create request packet
-test_fail 0x204 touch /mnt/lustre/bar
-
-# OBD_FAIL_OST_DESTROY_NET: OST will discard destroy request packet
-test_fail 0x205 rm /mnt/lustre/foo
-
-# OBD_FAIL_OST_BRW_NET: OST will discard read request packet
-echo foo >> /mnt/lustre/foo
-test_fail 0x20a cat /mnt/lustre/foo
-
-# OBD_FAIL_OST_BRW_NET: OST will discard write request packet
-test_fail 0x20a "echo bar >> /mnt/lustre/foo"
-
-# OBD_FAIL_OST_PUNCH_NET: OST will discard truncate request packet
-test_fail 0x208 "echo bar > /mnt/lustre/foo"
-
-# OBD_FAIL_OST_STATFS_NET: OST will discard statfs request packet
-test_fail 0x208 df /mnt/lustre
-
-echo "Done."
+++ /dev/null
-#!/bin/sh
-SRCDIR="`dirname $0`/"
-export PATH=/sbin:/usr/sbin:$SRCDIR/../utils:$PATH
-
-LOOPS=${LOOPS:-1}
-COUNT=${COUNT:-100000}
-COUNT_10=`expr $COUNT / 10`
-COUNT_100=`expr $COUNT / 100`
-
-ENDRUN=endrun-`hostname`
-
-ECHONAME="`lctl device_list 2> /dev/null | awk '/ echo_client / { print $4 }' | tail -n 1`"
-
-if [ -z "$ECHONAME" ]; then
- echo "$0: needs an ECHO_CLIENT set up first" 1>&2
- exit 1
-fi
-
-cleanup () {
- lctl --device \$$ECHONAME destroy $OID
-}
-
-runthreads() {
- THR=$1
- DO=$2
- CNT=$3
- V=$4
- PGS=$5
-
- case $DO in
- test_getattr)
- RW=
- ;;
- test_brw_write)
- DO=test_brw
- RW=w
- ;;
- test_brw_read)
- DO=test_brw
- RW=r
- ;;
- esac
-
- lctl --threads $THR v \$$ECHONAME $DO $CNT $RW $V $PGS $OID || exit 1
-
- if [ -e $ENDRUN ]; then
- rm $ENDRUN
- echo "exiting because $ENDRUN file was found"
- cleanup
- fi
-}
-
-[ -z "$OID" ] && OID=`lctl --device \\$$ECHONAME create 1 | awk '/is object id/ { print $6 }'` && echo "created object $OID"
-[ -z "$OID" ] && echo "error creating object" 1>&2 && exit 1
-
-# TODO: obdctl needs to check on the progress of each forked thread
-# (IPC SHM, sockets?) to see if it hangs.
-for i in `seq $LOOPS`; do
- PG=1
- PGVW=${PGVW:-16}
- PGVR=${PGVR:-16}
-
- # We use '--threads 1 X' instead of '--device X' so that
- # obdctl can monitor the forked thread for progress (TODO).
- debug_server_off
- debug_client_off
- runthreads 1 test_brw_write 1000 -30 $PG
- runthreads 1 test_brw_read 1000 -30 $PG
-
- [ "$PGVW" ] && runthreads 1 test_brw_write 100 -30 $PGVW
- [ "$PGVW" ] && runthreads 1 test_brw_read 1600 -30 $PG
- [ "$PGVR" ] && runthreads 1 test_brw_read 100 -30 $PGVR
-
- runthreads 1 test_brw_write $COUNT -30 $PG
- runthreads 1 test_brw_read $COUNT -30 $PG
-
- [ "$PGVW" ] && runthreads 1 test_brw_write $COUNT_10 -30 $PGVW
- [ "$PGVR" ] && runthreads 1 test_brw_read $COUNT_10 -30 $PGVR
-
- runthreads 2 test_brw_write $COUNT -30 $PG
- runthreads 2 test_brw_read $COUNT -30 $PG
-
- [ "$PGVW" ] && runthreads 2 test_brw_write $COUNT_10 -30 $PGVW
- [ "$PGVR" ] && runthreads 2 test_brw_read $COUNT_10 -30 $PGVR
-
- runthreads 10 test_brw_write $COUNT_10 -30 $PG
- runthreads 10 test_brw_read $COUNT_10 -30 $PG
-
- [ "$PGVW" ] && runthreads 10 test_brw_write $COUNT_100 -60 $PGVW
- [ "$PGVR" ] && runthreads 10 test_brw_read $COUNT_100 -60 $PGVR
-
- runthreads 32 test_brw_write $COUNT_10 -30 $PG
- runthreads 32 test_brw_read $COUNT_10 -30 $PG
-
- [ "$PGVW" ] && runthreads 32 test_brw_write $COUNT_100 -60 $PGVW
- [ "$PGVR" ] && runthreads 32 test_brw_read $COUNT_100 -60 $PGVR
-
- runthreads 64 test_brw_write $COUNT_10 -30 $PG
- runthreads 64 test_brw_read $COUNT_10 -30 $PG
-
- [ "$PGVW" ] && runthreads 64 test_brw_write $COUNT_100 -60 $PGVW
- [ "$PGVR" ] && runthreads 64 test_brw_read $COUNT_100 -60 $PGVR
-
- runthreads 100 test_brw_write $COUNT_100 -60 $PG
- runthreads 100 test_brw_read $COUNT_100 -60 $PG
-
- [ "$PGVW" ] && runthreads 100 test_brw_write $COUNT_100 -60 $PGVW
- [ "$PGVR" ] && runthreads 100 test_brw_read $COUNT_100 -60 $PGVR
-done
-
-cleanup
+++ /dev/null
-#!/bin/sh
-SRCDIR="`dirname $0`/"
-export PATH=/sbin:/usr/sbin:$SRCDIR/../utils:$PATH
-
-COUNT=${COUNT:-100000}
-COUNT_10=`expr $COUNT / 10`
-COUNT_100=`expr $COUNT / 100`
-COUNT_1000=`expr $COUNT / 1000`
-
-ENDRUN=endrun-`hostname`
-
-ECHONAME="`lctl device_list 2> /dev/null | awk '/ echo_client / { print $4 }' | tail -n 1`"
-
-if [ -z "$ECHONAME" ]; then
- echo "$0: needs an ECHO_CLIENT set up first" 1>&2
- exit 1
-fi
-
-cleanup () {
- lctl --device \$$ECHONAME destroy $OID
-}
-
-runthreads() {
- THR=$1
- DO=$2
- CNT=$3
- V=$4
- PGS=$5
-
- case $DO in
- test_getattr)
- RW=
- ;;
- test_brw_write)
- DO=test_brw
- RW=w
- ;;
- test_brw_read)
- DO=test_brw
- RW=r
- ;;
- esac
-
- lctl --threads $THR v \$$ECHONAME $DO $CNT $RW $V $PGS $OID || exit 1
-
- if [ -e $ENDRUN ]; then
- rm $ENDRUN
- echo "exiting because $ENDRUN file was found"
- cleanup
- fi
-}
-
-[ -z "$OID" ] && OID=`lctl --device \\$$ECHONAME create 1 | awk '/is object id/ { print $6 }'` && echo "created object $OID"
-[ -z "$OID" ] && echo "error creating object" 1>&2 && exit 1
-
-# TODO: obdctl needs to check on the progress of each forked thread
-# (IPC SHM, sockets?) to see if it hangs.
-for CMD in test_getattr test_brw_write test_brw_read; do
- case $CMD in
- test_getattr)
- PG=
- PGV=
- ;;
- test_brw_write)
- PG=1
- PGV=${PGV:-16}
- ;;
- test_brw_read)
- PG=1
- PGV=${PGV:-16}
- ;;
- esac
-
- # We use '--threads 1 X' instead of '--device X' so that
- # obdctl can monitor the forked thread for progress (TODO).
- runthreads 1 $CMD 1 1 $PG
- runthreads 1 $CMD 100 1 $PG
-
- echo 0 > /proc/sys/lnet/debug
- runthreads 1 $CMD $COUNT_100 -10 $PG
- [ "$PGV" ] && runthreads 1 $CMD $COUNT_1000 -10 $PGV
-
- runthreads 1 $CMD $COUNT -30 $PG
- [ "$PGV" ] && runthreads 1 $CMD $COUNT_10 -30 $PGV
-
- runthreads 2 $CMD $COUNT_100 -30 $PG
- [ "$PGV" ] && runthreads 2 $CMD $COUNT_1000 -30 $PGV
-
- runthreads 2 $CMD $COUNT -30 $PG
- [ "$PGV" ] && runthreads 2 $CMD $COUNT_10 -30 $PGV
-
- runthreads 10 $CMD $COUNT_10 -30 $PG
- [ "$PGV" ] && runthreads 10 $CMD $COUNT_100 -30 $PGV
-
- runthreads 100 $CMD $COUNT_100 -30 $PG
- [ "$PGV" ] && runthreads 100 $CMD $COUNT_1000 -30 $PGV
-done
-
-lctl --device \$$ECHONAME destroy $OID
*/
/* for O_DIRECT */
-#define _GNU_SOURCE
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
#include <stdio.h>
#include <string.h>
+++ /dev/null
-/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
- * vim:expandtab:shiftwidth=8:tabstop=8:
- *
- * Copyright (C) 2002 Cluster File Systems, Inc.
- *
- * This file is part of Lustre, http://www.sf.net/projects/lustre/
- *
- * Lustre is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * Lustre is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Lustre; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <string.h>
-#include <signal.h>
-#include <unistd.h>
-#include <sys/ioctl.h>
-
-#define _GNU_SOURCE
-#include <getopt.h>
-#undef _GNU_SOURCE
-
-#include <liblustre.h>
-#include <lustre_mds.h>
-
-static void usage(char *argv0, int status)
-{
- printf(
-"Usage: %s [OPTION...]\n\
-\n\
---getattr <directory>\n\
---setattr <directory>\n\
---readpage <directory>\n\
---open <directory>\n\
---close <directory handle (returned by open)>\n\
---create <new name>\n", argv0);
-
- exit(status);
-}
-
-int main(int argc, char **argv)
-{
- int fd = 0;
- int rc = 0;
- int c = 0;
- long cmd = 0;
- unsigned long arg;
- char *short_opts = "h", *name = argv[0];
- static struct option long_opts[] = {
-#define OPT_GETATTR -2
- {"getattr", no_argument, NULL, OPT_GETATTR},
-#define OPT_READPAGE -3
- {"readpage", no_argument, NULL, OPT_READPAGE},
-#define OPT_SETATTR -4
- {"setattr", no_argument, NULL, OPT_SETATTR},
-#define OPT_CREATE -5
- {"create", no_argument, NULL, OPT_CREATE},
-#define OPT_OPEN -6
- {"open", no_argument, NULL, OPT_OPEN},
-#define OPT_CLOSE -7
- {"close", required_argument, NULL, OPT_CLOSE},
-#define OPT_HELP 'h'
- {"help", no_argument, NULL, OPT_HELP},
- {0}
- };
-
- do {
- c = getopt_long(argc, argv, short_opts, long_opts, NULL);
-
- switch (c) {
- case OPT_HELP:
- usage(argv[0], 0);
- break;
- case OPT_GETATTR:
- cmd = IOC_REQUEST_GETATTR;
- name = "getattr";
- arg = 2;
- break;
- case OPT_SETATTR:
- cmd = IOC_REQUEST_SETATTR;
- name = "setattr";
- arg = 2;
- break;
- case OPT_READPAGE:
- cmd = IOC_REQUEST_READPAGE;
- name = "readpage";
- arg = 2;
- break;
- case OPT_CREATE:
- cmd = IOC_REQUEST_CREATE;
- name ="create";
- arg = 2;
- break;
- case OPT_OPEN:
- cmd = IOC_REQUEST_OPEN;
- name = "open";
- arg = 2;
- break;
- case OPT_CLOSE:
- cmd = IOC_REQUEST_CLOSE;
- name = "close";
- arg = strtoul(optarg, NULL, 0);
- break;
- case '?':
- usage(argv[0], 1);
- }
- } while (c != -1);
-
- if (cmd == 0)
- usage(argv[0], 1);
-
- fd = open("/dev/request", O_RDONLY);
- if (fd == -1) {
- fprintf(stderr, "error opening /dev/request: %s\n",
- strerror(errno));
- exit(1);
- }
-
- fprintf(stderr, "Executing %s test (arg=%lu)...\n", name, arg);
- if (cmd == IOC_REQUEST_OPEN) {
- rc = ioctl(fd, cmd, &arg);
- printf("%lu\n", arg);
- } else
- rc = ioctl(fd, cmd, arg);
- fprintf(stderr, "result code: %d\n", rc);
-
- return 0;
-}