]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Solaris syscall: Enable fchdir(120) - generic.
authorIvo Raisr <ivosh@ivosh.net>
Thu, 15 Oct 2015 09:37:14 +0000 (09:37 +0000)
committerIvo Raisr <ivosh@ivosh.net>
Thu, 15 Oct 2015 09:37:14 +0000 (09:37 +0000)
Provide scalar tests as well.
Fixes BZ #353917.

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

NEWS
coregrind/m_syswrap/syswrap-solaris.c
include/vki/vki-scnums-solaris.h
memcheck/tests/solaris/scalar.c
memcheck/tests/solaris/scalar.stderr.exp

diff --git a/NEWS b/NEWS
index b48a1b73ef1b491cc159f98670acafe9ab82798b..96d6be65dafcf53af8418bacf1ce3babdc64315c 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -36,6 +36,7 @@ where XXXXXX is the bug number as listed below.
 353370  don't advertise RDRAND in cpuid for Core-i7-4910-like avx2 machine
 353398  WARNING: unhandled amd64-solaris syscall: 207
 353680  s390x: Crash with certain glibc versions due to non-implemented TBEGIN
+353917  unhandled amd64-solaris syscall fchdir(120)
 
 
 
index 6ec33a36dc9b29ec62feccc5a1917e7d8a841f3d..2c4e0fe3c6db0d714fdc803d787615725b47b5f9 100644 (file)
@@ -10325,6 +10325,7 @@ static SyscallTableEntry syscall_table[] = {
    SOLX_(__NR_mmap,                 sys_mmap),                  /* 115 */
    GENXY(__NR_mprotect,             sys_mprotect),              /* 116 */
    GENXY(__NR_munmap,               sys_munmap),                /* 117 */
+   GENX_(__NR_fchdir,               sys_fchdir),                /* 120 */
    GENXY(__NR_readv,                sys_readv),                 /* 121 */
    GENX_(__NR_writev,               sys_writev),                /* 122 */
 #if defined(SOLARIS_UUIDSYS_SYSCALL)
index dcc5b323591c3907258b78e0f1c3f81ee11b0f7b..be886c9e2f739c011644c02acaa997d120455660 100644 (file)
 #define __NR_munmap                     SYS_munmap
 //#define __NR_fpathconf                  SYS_fpathconf
 //#define __NR_vfork                      SYS_vfork
-//#define __NR_fchdir                     SYS_fchdir
+#define __NR_fchdir                     SYS_fchdir
 #define __NR_readv                      SYS_readv
 #define __NR_writev                     SYS_writev
 #if defined(SOLARIS_UUIDSYS_SYSCALL)
index e2693154dcbb191cf976bc9cc3bd6f024fdc4464..70ea81b20f23286433da494ba47f8ddb15418b12 100644 (file)
@@ -1939,7 +1939,8 @@ int main(void)
    /* XXX Missing wrapper. */
 
    /* SYS_fchdir                120 */
-   /* XXX Missing wrapper. */
+   GO(SYS_fchdir, "1s 0m");
+   SY(SYS_fchdir, x0 - 1); FAILx(EBADF);
 
    /* SYS_readv                 121 */
    GO(SYS_readv, "3s 1m");
index 241f283e9c07f7eaab03588d83dc7c3fd9c537c9..9cce0b0cc1daf92ce558dd69c727640f92a35443 100644 (file)
@@ -2146,6 +2146,12 @@ Syscall param munmap(start) contains uninitialised byte(s)
 Syscall param munmap(length) contains uninitialised byte(s)
    ...
 
+---------------------------------------------------------
+120:              SYS_fchdir 1s 0m
+---------------------------------------------------------
+Syscall param fchdir(fd) contains uninitialised byte(s)
+   ...
+
 ---------------------------------------------------------
 121:               SYS_readv 3s 1m
 ---------------------------------------------------------