<div dir="ltr"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">Hello, I'm WeiFeng Lai, a student from    </font></font></font></font></font></font><span style="color:rgb(84,84,84);font-family:arial,sans-serif;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">Xi`an University of Posts & Telecommunications, also a member of XiYou Linux Group -- a open source community for college students </font></font></font></font><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">.</font></font></font></font></font></font></font></font></span></font></font><div><font style="vertical-align:inherit"><font style="vertical-align:inherit"><span style="color:rgb(84,84,84);font-family:arial,sans-serif;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">I'm interested in open source program and linux kernel, and contributing to strace, my name of github is bw98.</font></font></font></font></font></font></span></font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">I'm working for a solution about pid_namespace Support, and read over the source codes of patch in </font></font></font></font></font><font style="vertical-align:inherit"><font style="vertical-align:inherit"> link: <b><a href="https://lkml.org/lkml/2018/3/6/593" target="_blank">https://lkml.org/<wbr>lkml/2018/3/6/593</a></b>. Bellow, I'll briefly introduce my views on it.</font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">I read over the idea on list,it says:<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><b><font style="margin:0px;padding:0px;border:0px">namespace support<br></font></b><font style="margin:0px;padding:0px;border:0px">Suggested by: Eugene Syromyatnikov<br></font><font style="margin:0px;padding:0px;border:0px">  It could be useful to be able to show PIDs of processes in different PID namespaces when they are shown up in syscall arguments and results. As of now, this is quite complicated by the fact that there's no way to easily derive PID of the target process in the strace's namespace.<br></font><font style="margin:0px;padding:0px;border:0px">  RH bug<br></font><font style="margin:0px;padding:0px;border:0px">  LKML thread with a patch that introduces a syscall that helps translating PIDs between PID namespaces<br></font><font style="margin:0px;padding:0px;border:0px">  Some WiP<br></font><font style="margin:0px;padding:0px;border:0px">  The other thing is the preservation of correctness of various strace features (path filtering, fd decoding, thread enumeration, ...) that rely on /proc when the traced process is in different namespace</font></blockquote><div style="margin:0px;padding:0px;border:0px;color:rgb(34,34,34);font-family:Arial,Helvetica,sans-serif;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><font style="margin:0px;padding:0px;border:0px"><br></font></div></font></font></font></font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">So I think the project needs get the target pid in different pid_namespace,so I search by 'man',there is a way:</font></font></font></font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><img src="cid:ii_jeur01og0_16231c4ddcdf5efd" width="562" height="344"> </font></font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><font style="vertical-align:inherit">we can do some preloading operation like mounting /proc whenever we enter the new name space. To complete this requirement,we can make a try to add a new kernel API for trans_pid between different pid_namespaces,such as patch in link: </font><b style="color:rgb(84,84,84);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><font style="vertical-align:inherit"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"> </span><b style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><a href="https://lkml.org/lkml/2018/3/6/593" target="_blank" style="color:rgb(17,85,204)">https://lkml.org/<wbr>lkml/2018/3/6/593</a></b> </font></b><span style="color:rgb(84,84,84);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><font style="vertical-align:inherit">.</font></span></font><span style="color:rgb(84,84,84);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"> </span><b style="color:rgb(84,84,84);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><font style="vertical-align:inherit"></font></b><span style="color:rgb(84,84,84);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><font style="vertical-align:inherit"></font></span></font></font></font></div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit">a few days ago,I talk with my  seniors of community,we have a consistent point that add a new kernel API may a good idea,we can apply patch on later kernel versions,and modify it so that patch can apply on 3.x to now.If it make sense,I'll do this.</font></font></font></div><div>I don't hatch other methods,can someone provide some information or documents for my reference?</div><div>Thank you :)</div><div><font color="#545454"><font style="vertical-align:inherit"><font style="vertical-align:inherit"><br><br>​</font></font></font></div></div>