You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
1
|
2
|
|
3
(3) |
4
|
5
|
6
(1) |
7
(1) |
8
|
9
(1) |
|
10
|
11
(2) |
12
(3) |
13
(1) |
14
(1) |
15
|
16
(1) |
|
17
(1) |
18
(14) |
19
(1) |
20
(1) |
21
(3) |
22
(2) |
23
|
|
24
(1) |
25
|
26
(4) |
27
(6) |
28
(2) |
29
|
30
|
|
From: Julian S. <se...@so...> - 2019-11-18 18:13:50
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=6e4db6e9172a55a983105c8e73c89987ce97308a commit 6e4db6e9172a55a983105c8e73c89987ce97308a Author: Julian Seward <js...@ac...> Date: Mon Nov 18 19:12:49 2019 +0100 Rationalise --vex-guest* flags in the new IRSB construction framework * removes --vex-guest-chase-cond=no|yes. This was never used in practice. * rename --vex-guest-chase-thresh=<0..99> to --vex-guest-chase=no|yes. In otherwords, downgrade it from a numeric flag to a boolean one, that can simply disable all chasing if required. (Some tools, notably Callgrind, force-disable block chasing, so this functionality at least needs to be retained). Diff: --- VEX/priv/guest_generic_bb_to_IR.c | 5 ++--- VEX/pub/libvex.h | 17 ++++++----------- callgrind/main.c | 10 +++++----- coregrind/m_main.c | 19 +++---------------- docs/xml/manual-core-adv.xml | 3 +-- exp-bbv/bbv_main.c | 4 ++-- exp-sgcheck/pc_main.c | 2 +- helgrind/hg_main.c | 9 ++++----- none/tests/cmdline2.stdout.exp | 3 +-- 9 files changed, 25 insertions(+), 47 deletions(-) diff --git a/VEX/priv/guest_generic_bb_to_IR.c b/VEX/priv/guest_generic_bb_to_IR.c index 3da99bc..16d83a8 100644 --- a/VEX/priv/guest_generic_bb_to_IR.c +++ b/VEX/priv/guest_generic_bb_to_IR.c @@ -1237,8 +1237,7 @@ IRSB* bb_to_IR ( vassert(sizeof(HWord) == sizeof(void*)); vassert(vex_control.guest_max_insns >= 1); vassert(vex_control.guest_max_insns <= 100); - vassert(vex_control.guest_chase_thresh >= 0); - vassert(vex_control.guest_chase_thresh < vex_control.guest_max_insns); + vassert(vex_control.guest_chase == False || vex_control.guest_chase == True); vassert(guest_word_type == Ity_I32 || guest_word_type == Ity_I64); if (guest_word_type == Ity_I32) { @@ -1324,7 +1323,7 @@ IRSB* bb_to_IR ( // Reasons to give up immediately: // User or tool asked us not to chase - if (vex_control.guest_chase_thresh == 0) + if (!vex_control.guest_chase) break; // Out of extent slots diff --git a/VEX/pub/libvex.h b/VEX/pub/libvex.h index 5a76066..5a6a0e8 100644 --- a/VEX/pub/libvex.h +++ b/VEX/pub/libvex.h @@ -512,17 +512,12 @@ typedef BBs longer than this are split up. Default=60 (guest insns). */ Int guest_max_insns; - /* How aggressive should front ends be in following - unconditional branches to known destinations? Default=10, - meaning that if a block contains less than 10 guest insns so - far, the front end(s) will attempt to chase into its - successor. A setting of zero disables chasing. */ - // FIXME change this to a Bool - Int guest_chase_thresh; - /* EXPERIMENTAL: chase across conditional branches? Not all - front ends honour this. Default: NO. */ - // FIXME remove this completely. - Bool guest_chase_cond; + /* Should Vex try to construct superblocks, by chasing unconditional + branches/calls to known destinations, and performing AND/OR idiom + recognition? It is recommended to set this to True as that possibly + improves performance a bit, and also is important for avoiding certain + kinds of false positives in Memcheck. Default=True. */ + Bool guest_chase; /* Register allocator version. Allowed values are: - '2': previous, good and slow implementation. - '3': current, faster implementation; perhaps producing slightly worse diff --git a/callgrind/main.c b/callgrind/main.c index 47369d1..904eb42 100644 --- a/callgrind/main.c +++ b/callgrind/main.c @@ -2062,11 +2062,11 @@ void CLG_(post_clo_init)(void) "=> resetting it back to 0\n"); VG_(clo_vex_control).iropt_unroll_thresh = 0; // cannot be overridden. } - if (VG_(clo_vex_control).guest_chase_thresh != 0) { + if (VG_(clo_vex_control).guest_chase) { VG_(message)(Vg_UserMsg, - "callgrind only works with --vex-guest-chase-thresh=0\n" - "=> resetting it back to 0\n"); - VG_(clo_vex_control).guest_chase_thresh = 0; // cannot be overridden. + "callgrind only works with --vex-guest-chase=no\n" + "=> resetting it back to 'no'\n"); + VG_(clo_vex_control).guest_chase = False; // cannot be overridden. } CLG_DEBUG(1, " dump threads: %s\n", CLG_(clo).separate_threads ? "Yes":"No"); @@ -2120,7 +2120,7 @@ void CLG_(pre_clo_init)(void) = VexRegUpdSpAtMemAccess; // overridable by the user. VG_(clo_vex_control).iropt_unroll_thresh = 0; // cannot be overridden. - VG_(clo_vex_control).guest_chase_thresh = 0; // cannot be overridden. + VG_(clo_vex_control).guest_chase = False; // cannot be overridden. VG_(basic_tool_funcs) (CLG_(post_clo_init), CLG_(instrument), diff --git a/coregrind/m_main.c b/coregrind/m_main.c index 6ad1b93..38f7d97 100644 --- a/coregrind/m_main.c +++ b/coregrind/m_main.c @@ -271,8 +271,7 @@ static void usage_NORETURN ( int need_help ) " --vex-iropt-level=<0..2> [2]\n" " --vex-iropt-unroll-thresh=<0..400> [120]\n" " --vex-guest-max-insns=<1..100> [50]\n" -" --vex-guest-chase-thresh=<0..99> [10]\n" -" --vex-guest-chase-cond=no|yes [no]\n" +" --vex-guest-chase=no|yes [yes]\n" " Precise exception control. Possible values for 'mode' are as follows\n" " and specify the minimum set of registers guaranteed to be correct\n" " immediately prior to memory access instructions:\n" @@ -714,10 +713,8 @@ static void process_option (Clo_Mode mode, VG_(clo_vex_control).iropt_unroll_thresh, 0, 400) {} else if VG_BINT_CLO(arg, "--vex-guest-max-insns", VG_(clo_vex_control).guest_max_insns, 1, 100) {} - else if VG_BINT_CLO(arg, "--vex-guest-chase-thresh", - VG_(clo_vex_control).guest_chase_thresh, 0, 99) {} - else if VG_BOOL_CLO(arg, "--vex-guest-chase-cond", - VG_(clo_vex_control).guest_chase_cond) {} + else if VG_BOOL_CLO(arg, "--vex-guest-chase", + VG_(clo_vex_control).guest_chase) {} else if VG_INT_CLO(arg, "--log-fd", pos->tmp_log_fd) { pos->log_to = VgLogTo_Fd; @@ -965,16 +962,6 @@ void main_process_cmd_line_options( void ) if (VG_(clo_vgdb_prefix) == NULL) VG_(clo_vgdb_prefix) = VG_(vgdb_prefix_default)(); - /* Make VEX control parameters sane */ - - if (VG_(clo_vex_control).guest_chase_thresh - >= VG_(clo_vex_control).guest_max_insns) - VG_(clo_vex_control).guest_chase_thresh - = VG_(clo_vex_control).guest_max_insns - 1; - - if (VG_(clo_vex_control).guest_chase_thresh < 0) - VG_(clo_vex_control).guest_chase_thresh = 0; - /* Check various option values */ if (VG_(clo_verbosity) < 0) diff --git a/docs/xml/manual-core-adv.xml b/docs/xml/manual-core-adv.xml index 11afbeb..362b916 100644 --- a/docs/xml/manual-core-adv.xml +++ b/docs/xml/manual-core-adv.xml @@ -1563,8 +1563,7 @@ $3 = {lwpid = 0x4688, threadgroup = 0x4688, parent = 0x0, (gdb) p vex_control $5 = {iropt_verbosity = 0, iropt_level = 2, iropt_register_updates = VexRegUpdUnwindregsAtMemAccess, - iropt_unroll_thresh = 120, guest_max_insns = 60, guest_chase_thresh = 10, - guest_chase_cond = 0 '\000'} + iropt_unroll_thresh = 120, guest_max_insns = 60, guest_chase_thresh = 10} (gdb) ]]></screen> </listitem> diff --git a/exp-bbv/bbv_main.c b/exp-bbv/bbv_main.c index 438edbf..e632ea1 100644 --- a/exp-bbv/bbv_main.c +++ b/exp-bbv/bbv_main.c @@ -514,8 +514,8 @@ static void bbv_post_clo_init(void) /* Try a closer approximation of basic blocks */ /* This is the same as the command line option */ - /* --vex-guest-chase-thresh=0 */ - VG_(clo_vex_control).guest_chase_thresh = 0; + /* --vex-guest-chase=no */ + VG_(clo_vex_control).guest_chase = False; } /* Parse the command line options */ diff --git a/exp-sgcheck/pc_main.c b/exp-sgcheck/pc_main.c index 93f4b1e..fc13d6a 100644 --- a/exp-sgcheck/pc_main.c +++ b/exp-sgcheck/pc_main.c @@ -147,7 +147,7 @@ static void pc_pre_clo_init(void) sg_pre_clo_init(); VG_(clo_vex_control).iropt_unroll_thresh = 0; - VG_(clo_vex_control).guest_chase_thresh = 0; + VG_(clo_vex_control).guest_chase = False; } VG_DETERMINE_INTERFACE_VERSION(pc_pre_clo_init) diff --git a/helgrind/hg_main.c b/helgrind/hg_main.c index ddf582f..8b8dd05 100644 --- a/helgrind/hg_main.c +++ b/helgrind/hg_main.c @@ -5954,14 +5954,13 @@ static void hg_post_clo_init ( void ) { Thr* hbthr_root; - if (HG_(clo_delta_stacktrace) - && VG_(clo_vex_control).guest_chase_thresh != 0) { + if (HG_(clo_delta_stacktrace) && VG_(clo_vex_control).guest_chase) { if (VG_(clo_verbosity) >= 2) VG_(message)(Vg_UserMsg, "helgrind --delta-stacktrace=yes only works with " - "--vex-guest-chase-thresh=0\n" - "=> (re-setting it to 0)\n"); - VG_(clo_vex_control).guest_chase_thresh = 0; + "--vex-guest-chase=no\n" + "=> (re-setting it to 'no')\n"); + VG_(clo_vex_control).guest_chase = False; } diff --git a/none/tests/cmdline2.stdout.exp b/none/tests/cmdline2.stdout.exp index cfa3060..9e8e3df 100644 --- a/none/tests/cmdline2.stdout.exp +++ b/none/tests/cmdline2.stdout.exp @@ -184,8 +184,7 @@ usage: valgrind [options] prog-and-args --vex-iropt-level=<0..2> [2] --vex-iropt-unroll-thresh=<0..400> [120] --vex-guest-max-insns=<1..100> [50] - --vex-guest-chase-thresh=<0..99> [10] - --vex-guest-chase-cond=no|yes [no] + --vex-guest-chase=no|yes [yes] Precise exception control. Possible values for 'mode' are as follows and specify the minimum set of registers guaranteed to be correct immediately prior to memory access instructions: |
|
From: Jefferson C. <jef...@gm...> - 2019-11-18 14:09:03
|
Maybe a little, but I appreciate your wisdom. On Monday, November 18, 2019, Tom Hughes <to...@co...> wrote: > Apologies if I have offended you in some way. I was merely > trying to offer some advice on how best to present your work > to maximise it's usefulness. > > Tom > > On 18/11/2019 09:52, Jefferson Carpenter wrote: >> >> Yes sir, sorry sir. >> >> Jefferson >> >> On 11/18/2019 9:40 AM, Tom Hughes wrote: >>> >>> Firstly, please don't just send patches with absolutely >>> no explanation of what they are for. I realise some of them >>> at least are trivial but please try and make some minimal >>> effort to include some explanation. >>> >>> Even more importantly, patches should be filed in the bug >>> tracker rather then being mailed here where they will likely >>> just get forgotten when we are next making a release. >>> >>> Tom >>> > > > -- > Tom Hughes (to...@co...) > http://compton.nu/ > |
|
From: Jefferson C. <jef...@gm...> - 2019-11-18 13:57:46
|
Not at all. I do push stuff out rather quickly like I'm playing hot potato with it, ostensibly so that if __builtin_expect(!!(I die), 0), it won't be lost. On 11/18/2019 10:06 AM, Tom Hughes wrote: > Apologies if I have offended you in some way. I was merely > trying to offer some advice on how best to present your work > to maximise it's usefulness. > > Tom > > On 18/11/2019 09:52, Jefferson Carpenter wrote: >> Yes sir, sorry sir. >> >> Jefferson >> >> On 11/18/2019 9:40 AM, Tom Hughes wrote: >>> Firstly, please don't just send patches with absolutely >>> no explanation of what they are for. I realise some of them >>> at least are trivial but please try and make some minimal >>> effort to include some explanation. >>> >>> Even more importantly, patches should be filed in the bug >>> tracker rather then being mailed here where they will likely >>> just get forgotten when we are next making a release. >>> >>> Tom >>> > > |
|
From: Michal P. <mpr...@re...> - 2019-11-18 13:39:14
|
I've tested this on amd64 and arm but I'm enabling it on all arches since the syscall should work identically on all of them. This was requested by users for a long time (almost 5 years) and in fact, some programs (like libvirt) use namespaces and fork off to enter other namespaces. Lack of implementation means valgrind can't be used with these programs (or their configuration must be changed to not use namespaces, which defeats the purpose). Without knowing it, I've converged to same patch as mentioned in bugs below. https://bugs.kde.org/show_bug.cgi?id=343099 https://bugs.kde.org/show_bug.cgi?id=368923 Signed-off-by: Michal Privoznik <mpr...@re...> --- NEWS | 2 ++ coregrind/m_syswrap/priv_syswrap-linux.h | 1 + coregrind/m_syswrap/syswrap-amd64-linux.c | 2 +- coregrind/m_syswrap/syswrap-arm-linux.c | 2 +- coregrind/m_syswrap/syswrap-arm64-linux.c | 2 +- coregrind/m_syswrap/syswrap-linux.c | 11 +++++++++++ coregrind/m_syswrap/syswrap-mips32-linux.c | 1 + coregrind/m_syswrap/syswrap-mips64-linux.c | 1 + coregrind/m_syswrap/syswrap-nanomips-linux.c | 1 + coregrind/m_syswrap/syswrap-s390x-linux.c | 2 +- coregrind/m_syswrap/syswrap-x86-linux.c | 2 +- include/vki/vki-scnums-mips32-linux.h | 1 + 12 files changed, 23 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index e0689d584..91a16c8ba 100644 --- a/NEWS +++ b/NEWS @@ -67,6 +67,8 @@ To see details of a given bug, visit https://bugs.kde.org/show_bug.cgi?id=XXXXXX where XXXXXX is the bug number as listed below. +343099 Linux setns syscall wrapper missing, unhandled syscall: 308 +368923 WARNING: unhandled arm64-linux syscall: 268 (setns) 400593 In Coregrind, use statx for some internal syscalls if [f]stat[64] fail 406561 mcinfcallWSRU gdbserver_test fails on ppc64 406824 Unsupported baseline diff --git a/coregrind/m_syswrap/priv_syswrap-linux.h b/coregrind/m_syswrap/priv_syswrap-linux.h index 0cfe78233..905423d78 100644 --- a/coregrind/m_syswrap/priv_syswrap-linux.h +++ b/coregrind/m_syswrap/priv_syswrap-linux.h @@ -237,6 +237,7 @@ DECL_TEMPLATE(linux, sys_sched_setaffinity); DECL_TEMPLATE(linux, sys_sched_getaffinity); DECL_TEMPLATE(linux, sys_unshare); +DECL_TEMPLATE(linux, sys_setns); // These ones have different parameters and/or return values on Darwin. // Also, some archs on Linux do not match the generic wrapper for sys_pipe. diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c index 9b8068d0f..0aef84af9 100644 --- a/coregrind/m_syswrap/syswrap-amd64-linux.c +++ b/coregrind/m_syswrap/syswrap-amd64-linux.c @@ -839,7 +839,7 @@ static SyscallTableEntry syscall_table[] = { LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 305 LINX_(__NR_syncfs, sys_syncfs), // 306 LINXY(__NR_sendmmsg, sys_sendmmsg), // 307 -// LINX_(__NR_setns, sys_ni_syscall), // 308 + LINX_(__NR_setns, sys_setns), // 308 LINXY(__NR_getcpu, sys_getcpu), // 309 LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 310 diff --git a/coregrind/m_syswrap/syswrap-arm-linux.c b/coregrind/m_syswrap/syswrap-arm-linux.c index 5e8baf8db..31f8dcca5 100644 --- a/coregrind/m_syswrap/syswrap-arm-linux.c +++ b/coregrind/m_syswrap/syswrap-arm-linux.c @@ -1005,7 +1005,7 @@ static SyscallTableEntry syscall_main_table[] = { LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 372 LINX_(__NR_syncfs, sys_syncfs), // 373 LINXY(__NR_sendmmsg, sys_sendmmsg), // 374 - + LINX_(__NR_setns, sys_setns), // 375 LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 376 LINX_(__NR_process_vm_writev, sys_process_vm_writev),// 377 diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c index 91329b682..3d9c8167d 100644 --- a/coregrind/m_syswrap/syswrap-arm64-linux.c +++ b/coregrind/m_syswrap/syswrap-arm64-linux.c @@ -800,7 +800,7 @@ static SyscallTableEntry syscall_main_table[] = { LINXY(__NR_open_by_handle_at, sys_open_by_handle_at), // 265 LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 266 LINX_(__NR_syncfs, sys_syncfs), // 267 - // (__NR_setns, sys_ni_syscall), // 268 + LINX_(__NR_setns, sys_setns), // 268 LINXY(__NR_sendmmsg, sys_sendmmsg), // 269 LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 270 LINX_(__NR_process_vm_writev, sys_process_vm_writev), // 271 diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c index f1ecbbf14..ecce9adf6 100644 --- a/coregrind/m_syswrap/syswrap-linux.c +++ b/coregrind/m_syswrap/syswrap-linux.c @@ -3395,6 +3395,17 @@ PRE(sys_unshare) PRE_REG_READ1(int, "unshare", unsigned long, flags); } +PRE(sys_setns) +{ + PRINT("sys_setns ( %ld, %ld )", SARG1, SARG2); + PRE_REG_READ2(int, "setns", + int, fd, + int, nstype); + if (!ML_(fd_allowed)(ARG1, "setns", tid, True)) + SET_STATUS_Failure( VKI_EBADF ); +} + + /* --------------------------------------------------------------------- miscellaneous wrappers ------------------------------------------------------------------ */ diff --git a/coregrind/m_syswrap/syswrap-mips32-linux.c b/coregrind/m_syswrap/syswrap-mips32-linux.c index ace3c1e7a..4f2a58b22 100644 --- a/coregrind/m_syswrap/syswrap-mips32-linux.c +++ b/coregrind/m_syswrap/syswrap-mips32-linux.c @@ -1088,6 +1088,7 @@ static SyscallTableEntry syscall_main_table[] = { //.. LINXY (__NR_clock_adjtime, sys_clock_adjtime), // 341 LINX_ (__NR_syncfs, sys_syncfs), // 342 + LINX_ (__NR_setns, sys_setns), // 343 //.. LINXY (__NR_process_vm_readv, sys_process_vm_readv), // 345 LINX_ (__NR_process_vm_writev, sys_process_vm_writev), // 346 diff --git a/coregrind/m_syswrap/syswrap-mips64-linux.c b/coregrind/m_syswrap/syswrap-mips64-linux.c index d0bb3cdf1..55087b100 100644 --- a/coregrind/m_syswrap/syswrap-mips64-linux.c +++ b/coregrind/m_syswrap/syswrap-mips64-linux.c @@ -816,6 +816,7 @@ static SyscallTableEntry syscall_main_table[] = { LINX_ (__NR_pwritev2, sys_pwritev2), LINX_ (__NR_syncfs, sys_syncfs), LINXY (__NR_statx, sys_statx), + LINX_ (__NR_setns, sys_setns), }; SyscallTableEntry * ML_(get_linux_syscall_entry) ( UInt sysno ) diff --git a/coregrind/m_syswrap/syswrap-nanomips-linux.c b/coregrind/m_syswrap/syswrap-nanomips-linux.c index aac595a5d..bc448aca4 100644 --- a/coregrind/m_syswrap/syswrap-nanomips-linux.c +++ b/coregrind/m_syswrap/syswrap-nanomips-linux.c @@ -805,6 +805,7 @@ static SyscallTableEntry syscall_main_table[] = { LINXY (__NR_getrandom, sys_getrandom), LINXY (__NR_memfd_create, sys_memfd_create), LINXY (__NR_statx, sys_statx), + LINX_ (__NR_setns, sys_setns), // (__NR_bpf, sys_ni_syscall), // (__NR_execveat, sys_ni_syscall), // (__NR_userfaultfd, sys_ni_syscall), diff --git a/coregrind/m_syswrap/syswrap-s390x-linux.c b/coregrind/m_syswrap/syswrap-s390x-linux.c index 3354d41c0..7655b4bc9 100644 --- a/coregrind/m_syswrap/syswrap-s390x-linux.c +++ b/coregrind/m_syswrap/syswrap-s390x-linux.c @@ -817,7 +817,7 @@ static SyscallTableEntry syscall_table[] = { LINXY(__NR_open_by_handle_at, sys_open_by_handle_at), // 336 LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 337 LINX_(__NR_syncfs, sys_syncfs), // 338 -// ?????(__NR_setns, ), // 339 + LINX_(__NR_setns, sys_setns), // 339 LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 340 LINX_(__NR_process_vm_writev, sys_process_vm_writev), // 341 diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c index 33d1213a3..6ba5617c0 100644 --- a/coregrind/m_syswrap/syswrap-x86-linux.c +++ b/coregrind/m_syswrap/syswrap-x86-linux.c @@ -1574,7 +1574,7 @@ static SyscallTableEntry syscall_table[] = { LINX_(__NR_syncfs, sys_syncfs), // 344 LINXY(__NR_sendmmsg, sys_sendmmsg), // 345 -// LINX_(__NR_setns, sys_ni_syscall), // 346 + LINX_(__NR_setns, sys_setns), // 346 LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 347 LINX_(__NR_process_vm_writev, sys_process_vm_writev),// 348 LINX_(__NR_kcmp, sys_kcmp), // 349 diff --git a/include/vki/vki-scnums-mips32-linux.h b/include/vki/vki-scnums-mips32-linux.h index 544fb01a8..3f3f6f60b 100644 --- a/include/vki/vki-scnums-mips32-linux.h +++ b/include/vki/vki-scnums-mips32-linux.h @@ -378,6 +378,7 @@ #define __NR_open_by_handle_at (__NR_Linux + 340) #define __NR_clock_adjtime (__NR_Linux + 341) #define __NR_syncfs (__NR_Linux + 342) +#define __NR_setns (__NR_Linux + 343) #define __NR_process_vm_readv (__NR_Linux + 345) #define __NR_process_vm_writev (__NR_Linux + 346) #define __NR_kcmp (__NR_Linux + 347) -- 2.23.0 |
|
From: Tom H. <to...@co...> - 2019-11-18 10:06:44
|
Apologies if I have offended you in some way. I was merely trying to offer some advice on how best to present your work to maximise it's usefulness. Tom On 18/11/2019 09:52, Jefferson Carpenter wrote: > Yes sir, sorry sir. > > Jefferson > > On 11/18/2019 9:40 AM, Tom Hughes wrote: >> Firstly, please don't just send patches with absolutely >> no explanation of what they are for. I realise some of them >> at least are trivial but please try and make some minimal >> effort to include some explanation. >> >> Even more importantly, patches should be filed in the bug >> tracker rather then being mailed here where they will likely >> just get forgotten when we are next making a release. >> >> Tom >> -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Tom H. <to...@co...> - 2019-11-18 10:01:20
|
Firstly, please don't just send patches with absolutely no explanation of what they are for. I realise some of them at least are trivial but please try and make some minimal effort to include some explanation. Even more importantly, patches should be filed in the bug tracker rather then being mailed here where they will likely just get forgotten when we are next making a release. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Jefferson C. <jef...@gm...> - 2019-11-18 09:52:31
|
Yes sir, sorry sir. Jefferson On 11/18/2019 9:40 AM, Tom Hughes wrote: > Firstly, please don't just send patches with absolutely > no explanation of what they are for. I realise some of them > at least are trivial but please try and make some minimal > effort to include some explanation. > > Even more importantly, patches should be filed in the bug > tracker rather then being mailed here where they will likely > just get forgotten when we are next making a release. > > Tom > |