Discussion:
Valgrind: r16227 - in /trunk: NEWS coregrind/m_syswrap/syswrap-solaris.c include/vki/vki-scnums-solaris.h
(too old to reply)
s***@valgrind.org
2017-02-16 18:29:46 UTC
Permalink
Raw Message
Author: iraisr
Date: Thu Feb 16 18:29:46 2017
New Revision: 16227

Log:
Solaris: Add syscall wrapper for fast trap getlgrp(6)
Fixes BZ#376518.

Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-solaris.c
trunk/include/vki/vki-scnums-solaris.h

Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu Feb 16 18:29:46 2017
@@ -115,6 +115,7 @@
for ML_(find_rx_mapping)()
375806 Test helgrind/tests/tc22_exit_w_lock fails with glibc 2.24
376455 Solaris: unhandled syscall lgrpsys(180)
+376518 Solaris: unhandled fast trap getlgrp(6)

Release 3.12.0 (20 October 2016)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Modified: trunk/coregrind/m_syswrap/syswrap-solaris.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-solaris.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-solaris.c Thu Feb 16 18:29:46 2017
@@ -1076,6 +1076,7 @@
DECL_TEMPLATE(solaris, fast_gethrtime);
DECL_TEMPLATE(solaris, fast_gethrvtime);
DECL_TEMPLATE(solaris, fast_gethrestime);
+DECL_TEMPLATE(solaris, fast_getlgrp);
#if defined(SOLARIS_GETHRT_FASTTRAP)
DECL_TEMPLATE(solaris, fast_gethrt);
#endif /* SOLARIS_GETHRT_FASTTRAP */
@@ -10674,6 +10675,13 @@
PRE_REG_READ0(long, "gethrestime");
}

+PRE(fast_getlgrp)
+{
+ /* Fasttrap number shared between gethomelgroup() and getcpuid(). */
+ PRINT("fast_getlgrp ( )");
+ PRE_REG_READ0(long, "getlgrp");
+}
+
#if defined(SOLARIS_GETHRT_FASTTRAP)
PRE(fast_gethrt)
{
@@ -11011,7 +11019,8 @@
static SyscallTableEntry fasttrap_table[] = {
SOLX_(__NR_gethrtime, fast_gethrtime), /* 3 */
SOLX_(__NR_gethrvtime, fast_gethrvtime), /* 4 */
- SOLX_(__NR_gethrestime, fast_gethrestime) /* 5 */
+ SOLX_(__NR_gethrestime, fast_gethrestime), /* 5 */
+ SOLX_(__NR_getlgrp, fast_getlgrp) /* 6 */
#if defined(SOLARIS_GETHRT_FASTTRAP)
,
SOLXY(__NR_gethrt, fast_gethrt) /* 7 */

Modified: trunk/include/vki/vki-scnums-solaris.h
==============================================================================
--- trunk/include/vki/vki-scnums-solaris.h (original)
+++ trunk/include/vki/vki-scnums-solaris.h Thu Feb 16 18:29:46 2017
@@ -28,7 +28,7 @@
The GNU General Public License is contained in the file COPYING.
*/

-/* Copyright 2013-2016, Ivo Raisr <***@ivosh.net>. */
+/* Copyright 2013-2017, Ivo Raisr <***@ivosh.net>. */

/* Copyright 2013, OmniTI Computer Consulting, Inc. All rights reserved. */

@@ -353,10 +353,8 @@
VG_SOLARIS_SYSCALL_CONSTRUCT_FASTTRAP(T_GETHRVTIME)
#define __NR_gethrestime \
VG_SOLARIS_SYSCALL_CONSTRUCT_FASTTRAP(T_GETHRESTIME)
-/*
#define __NR_getlgrp \
VG_SOLARIS_SYSCALL_CONSTRUCT_FASTTRAP(T_GETLGRP)
-*/
#if defined(SOLARIS_GETHRT_FASTTRAP)
#define __NR_gethrt \
VG_SOLARIS_SYSCALL_CONSTRUCT_FASTTRAP(T_GETHRT)

Loading...