From: Petar Jovanovic Date: Mon, 5 Dec 2016 18:00:01 +0000 (+0000) Subject: mips: add regression test for fadvise64 X-Git-Tag: svn/VALGRIND_3_13_0~246 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=55c565435d44439413d036de7cbb01516a0a8cac;p=thirdparty%2Fvalgrind.git mips: add regression test for fadvise64 Add regression tests for fadvise64. Change by A Rikalo. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16175 --- diff --git a/configure.ac b/configure.ac index 2c21b72285..913d289c7d 100644 --- a/configure.ac +++ b/configure.ac @@ -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 diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index 252298d1fc..a0e6300b92 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -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 index 0000000000..28c19f1d5b --- /dev/null +++ b/memcheck/tests/mips32/Makefile.am @@ -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 index 0000000000..c74039558e --- /dev/null +++ b/memcheck/tests/mips32/fadvise64.c @@ -0,0 +1,21 @@ +#include +#include +#include + +#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 index 0000000000..eca744854e --- /dev/null +++ b/memcheck/tests/mips32/fadvise64.stderr.exp @@ -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 index 0000000000..e69de29bb2 diff --git a/memcheck/tests/mips32/fadvise64.vgtest b/memcheck/tests/mips32/fadvise64.vgtest new file mode 100644 index 0000000000..daccdb9bc9 --- /dev/null +++ b/memcheck/tests/mips32/fadvise64.vgtest @@ -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 index 0000000000..a778e971fc --- /dev/null +++ b/memcheck/tests/mips32/filter_stderr @@ -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 index 0000000000..28c19f1d5b --- /dev/null +++ b/memcheck/tests/mips64/Makefile.am @@ -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 index 0000000000..b3e7b84d56 --- /dev/null +++ b/memcheck/tests/mips64/fadvise64.c @@ -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 index 0000000000..6759a0878d --- /dev/null +++ b/memcheck/tests/mips64/fadvise64.stderr.exp @@ -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 index 0000000000..e69de29bb2 diff --git a/memcheck/tests/mips64/fadvise64.vgtest b/memcheck/tests/mips64/fadvise64.vgtest new file mode 100644 index 0000000000..daccdb9bc9 --- /dev/null +++ b/memcheck/tests/mips64/fadvise64.vgtest @@ -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 index 0000000000..a778e971fc --- /dev/null +++ b/memcheck/tests/mips64/filter_stderr @@ -0,0 +1,3 @@ +#! /bin/sh + +../filter_stderr "$@"