A couple of these syscalls fail differently when running on an amd64
in 32-bit mode.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5158 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/memcheck/tests/x86/scalar.c b/memcheck/tests/x86/scalar.c
index d915a27..a0b8c4a 100644
--- a/memcheck/tests/x86/scalar.c
+++ b/memcheck/tests/x86/scalar.c
@@ -268,8 +268,10 @@
SY(__NR_fcntl, x0-1, x0+F_DUPFD, x0); FAILx(EBADF);
// For F_GETLK the 3rd arg is 'lock'
+ // on x86, this fails with EBADF. But on amd64 in 32-bit mode
+ // it fails with EFAULT.
GO(__NR_fcntl, "(GETLK) 1s 0m");
- SY(__NR_fcntl, x0-1, x0+F_GETLK, x0); FAILx(EBADF);
+ SY(__NR_fcntl, x0-1, x0+F_GETLK, x0); FAIL; //FAILx(EBADF);
// __NR_mpx 56
GO(__NR_mpx, "ni");
@@ -975,8 +977,10 @@
SY(__NR_fcntl64, x0-1, x0+F_DUPFD, x0); FAILx(EBADF);
// For F_GETLK the 3rd arg is 'lock'
+ // on x86, this fails with EBADF. But on amd64 in 32-bit mode
+ // it fails with EFAULT.
GO(__NR_fcntl64, "(GETLK) 1s 0m");
- SY(__NR_fcntl64, x0-1, x0+F_GETLK, x0); FAILx(EBADF);
+ SY(__NR_fcntl64, x0-1, x0+F_GETLK, x0); FAIL; //FAILx(EBADF);
// 222
GO(222, "ni");