]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
mips: add regression test for fadvise64
authorPetar Jovanovic <mips32r2@gmail.com>
Mon, 5 Dec 2016 18:00:01 +0000 (18:00 +0000)
committerPetar Jovanovic <mips32r2@gmail.com>
Mon, 5 Dec 2016 18:00:01 +0000 (18:00 +0000)
Add regression tests for fadvise64.

Change by A Rikalo.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16175

14 files changed:
configure.ac
memcheck/tests/Makefile.am
memcheck/tests/mips32/Makefile.am [new file with mode: 0644]
memcheck/tests/mips32/fadvise64.c [new file with mode: 0644]
memcheck/tests/mips32/fadvise64.stderr.exp [new file with mode: 0644]
memcheck/tests/mips32/fadvise64.stdout.exp [new file with mode: 0644]
memcheck/tests/mips32/fadvise64.vgtest [new file with mode: 0644]
memcheck/tests/mips32/filter_stderr [new file with mode: 0755]
memcheck/tests/mips64/Makefile.am [new file with mode: 0644]
memcheck/tests/mips64/fadvise64.c [new symlink]
memcheck/tests/mips64/fadvise64.stderr.exp [new file with mode: 0644]
memcheck/tests/mips64/fadvise64.stdout.exp [new file with mode: 0644]
memcheck/tests/mips64/fadvise64.vgtest [new file with mode: 0644]
memcheck/tests/mips64/filter_stderr [new file with mode: 0755]

index 2c21b722853bf47f8f29af0677afcd3af025f7c3..913d289c7d8721ab39af95746bac1ebbb8dc1c97 100644 (file)
@@ -4356,6 +4356,8 @@ AC_CONFIG_FILES([
    memcheck/tests/ppc32/Makefile
    memcheck/tests/ppc64/Makefile
    memcheck/tests/s390x/Makefile
+   memcheck/tests/mips32/Makefile
+   memcheck/tests/mips64/Makefile
    memcheck/tests/vbit-test/Makefile
    cachegrind/Makefile
    cachegrind/tests/Makefile
index 252298d1fc474656a5731907ca6d8893143b03c1..a0e6300b92113fae345b9ed8f5646499e4a2d965 100644 (file)
@@ -10,6 +10,12 @@ endif
 if VGCONF_ARCHS_INCLUDE_AMD64
 SUBDIRS += amd64
 endif
+if VGCONF_ARCHS_INCLUDE_MIPS32
+SUBDIRS += mips32
+endif
+if VGCONF_ARCHS_INCLUDE_MIPS64
+SUBDIRS += mips64
+endif
 if VGCONF_ARCHS_INCLUDE_PPC32
 SUBDIRS += ppc32
 endif
@@ -50,7 +56,7 @@ endif
 
 DIST_SUBDIRS = x86 amd64 ppc32 ppc64 s390x linux \
                darwin solaris x86-linux amd64-linux arm64-linux \
-               x86-solaris amd64-solaris \
+               x86-solaris amd64-solaris mips32 mips64 \
                common .
 
 dist_noinst_SCRIPTS = \
diff --git a/memcheck/tests/mips32/Makefile.am b/memcheck/tests/mips32/Makefile.am
new file mode 100644 (file)
index 0000000..28c19f1
--- /dev/null
@@ -0,0 +1,8 @@
+
+include $(top_srcdir)/Makefile.tool-tests.am
+
+EXTRA_DIST = $(noinst_SCRIPTS) \
+       fadvise64.stderr.exp fadvise64.stdout.exp fadvise64.vgtest
+
+check_PROGRAMS = \
+       fadvise64
diff --git a/memcheck/tests/mips32/fadvise64.c b/memcheck/tests/mips32/fadvise64.c
new file mode 100644 (file)
index 0000000..c740395
--- /dev/null
@@ -0,0 +1,21 @@
+#include <errno.h>
+#include <fcntl.h>
+#include <stdio.h>
+
+#define BAD_FD 42
+
+int main() {
+   int x;
+
+   (void)posix_fadvise(x,      1, 2, POSIX_FADV_NORMAL);
+   (void)posix_fadvise(BAD_FD, x, 2, POSIX_FADV_NORMAL);
+   (void)posix_fadvise(BAD_FD, 1, x, POSIX_FADV_NORMAL);
+   (void)posix_fadvise(BAD_FD, 1, 2, x);
+
+   x = posix_fadvise(BAD_FD, 1, 2, POSIX_FADV_NORMAL);
+
+   if (x != EBADF)
+      fprintf(stderr, "Unexpected return value: %d\n", x);
+
+   return 0;
+}
diff --git a/memcheck/tests/mips32/fadvise64.stderr.exp b/memcheck/tests/mips32/fadvise64.stderr.exp
new file mode 100644 (file)
index 0000000..eca7448
--- /dev/null
@@ -0,0 +1,24 @@
+Syscall param fadvise64(fd) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:10)
+
+Syscall param fadvise64(offset_low) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:11)
+
+Syscall param fadvise64(offset_high) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:11)
+
+Syscall param fadvise64(len_low) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:12)
+
+Syscall param fadvise64(len_high) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:12)
+
+Syscall param fadvise64(advice) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:13)
+
diff --git a/memcheck/tests/mips32/fadvise64.stdout.exp b/memcheck/tests/mips32/fadvise64.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/memcheck/tests/mips32/fadvise64.vgtest b/memcheck/tests/mips32/fadvise64.vgtest
new file mode 100644 (file)
index 0000000..daccdb9
--- /dev/null
@@ -0,0 +1,2 @@
+prog: fadvise64
+vgopts: -q
diff --git a/memcheck/tests/mips32/filter_stderr b/memcheck/tests/mips32/filter_stderr
new file mode 100755 (executable)
index 0000000..a778e97
--- /dev/null
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+../filter_stderr "$@"
diff --git a/memcheck/tests/mips64/Makefile.am b/memcheck/tests/mips64/Makefile.am
new file mode 100644 (file)
index 0000000..28c19f1
--- /dev/null
@@ -0,0 +1,8 @@
+
+include $(top_srcdir)/Makefile.tool-tests.am
+
+EXTRA_DIST = $(noinst_SCRIPTS) \
+       fadvise64.stderr.exp fadvise64.stdout.exp fadvise64.vgtest
+
+check_PROGRAMS = \
+       fadvise64
diff --git a/memcheck/tests/mips64/fadvise64.c b/memcheck/tests/mips64/fadvise64.c
new file mode 120000 (symlink)
index 0000000..b3e7b84
--- /dev/null
@@ -0,0 +1 @@
+../mips32/fadvise64.c
\ No newline at end of file
diff --git a/memcheck/tests/mips64/fadvise64.stderr.exp b/memcheck/tests/mips64/fadvise64.stderr.exp
new file mode 100644 (file)
index 0000000..6759a08
--- /dev/null
@@ -0,0 +1,16 @@
+Syscall param fadvise64(fd) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:10)
+
+Syscall param fadvise64(offset) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:11)
+
+Syscall param fadvise64(len) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:12)
+
+Syscall param fadvise64(advice) contains uninitialised byte(s)
+   ...
+   by 0x........: main (fadvise64.c:13)
+
diff --git a/memcheck/tests/mips64/fadvise64.stdout.exp b/memcheck/tests/mips64/fadvise64.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/memcheck/tests/mips64/fadvise64.vgtest b/memcheck/tests/mips64/fadvise64.vgtest
new file mode 100644 (file)
index 0000000..daccdb9
--- /dev/null
@@ -0,0 +1,2 @@
+prog: fadvise64
+vgopts: -q
diff --git a/memcheck/tests/mips64/filter_stderr b/memcheck/tests/mips64/filter_stderr
new file mode 100755 (executable)
index 0000000..a778e97
--- /dev/null
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+../filter_stderr "$@"