From: Wang Xiaoming <xiaoming.wang@intel.com>
To: akpm@linux-foundation.org, oleg@redhat.com,
andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk,
ebiederm@xmission.com, eparis@redhat.com,
chenhanxiao@cn.fujitsu.com, tj@kernel.org, tglx@linutronix.de,
linux-kernel@vger.kernel.org
Cc: Wang Xiaoming <xiaoming.wang@intel.com>,
"Schallberger, Timothy M" <timothy.m.schallberger@intel.com>,
Dongxing Zhang <dongxing.zhang@intel.com>
Subject: [PATCH] proc: move the adding option Ngid to the end of proc/PID/status
Date: Fri, 17 Apr 2015 10:13:15 +0800 [thread overview]
Message-ID: <1429236796-22387-1-git-send-email-xiaoming.wang@intel.com> (raw)
Move debugging has been done and the following Kernel issue
was found with a number of applications.
Take a look at: (even though the comments are for Weibo.browser
they also pertain to other apps that use Libsecuritysdk-x.x.x.so
In kernel(3.14) is a little different than before
it will generate /proc/PID/status in this way:
Name: a.weibo.browser
State: T (stopped)
Tgid: 8487
Ngid: 0 ---- add in kernel after (3.11 maybe)
Pid: 8487
PPid: 139
TracerPid: 0 ---------------------=> line 7
……
But on previous kernel(3.11), it normally like that:
Name: a.weibo.browser
State: S (sleeping)
Tgid: 2109
Pid: 2109
PPid: 231
TracerPid: 0 -----------------------=> line 6
……
WeiBo always assume the “TracePid” is in line 6 of the status.
And it will read “PPid: 139” instead of “TracePid: 0”,
which will made Weibo to kill the process because there is attached debugger.
This issue also met in other application.
As the Ngid is added later, so it should be added at the end of task_state.
It is better keeping compatible to avoid such issue.
Signed-off-by: Schallberger, Timothy M <timothy.m.schallberger@intel.com>
Signed-off-by: Dongxing Zhang <dongxing.zhang@intel.com>
Signed-off-by: Wang Xiaoming <xiaoming.wang@intel.com>
---
fs/proc/array.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/proc/array.c b/fs/proc/array.c
index fd02a9e..86dcd2b 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -163,15 +163,15 @@ static inline void task_state(struct seq_file *m, struct pid_namespace *ns,
seq_printf(m,
"State:\t%s\n"
"Tgid:\t%d\n"
- "Ngid:\t%d\n"
"Pid:\t%d\n"
"PPid:\t%d\n"
"TracerPid:\t%d\n"
"Uid:\t%d\t%d\t%d\t%d\n"
"Gid:\t%d\t%d\t%d\t%d\n"
+ "Ngid:\t%d\n"
"FDSize:\t%d\nGroups:\t",
get_task_state(p),
- tgid, ngid, pid_nr_ns(pid, ns), ppid, tpid,
+ tgid, pid_nr_ns(pid, ns), ppid, tpid,
from_kuid_munged(user_ns, cred->uid),
from_kuid_munged(user_ns, cred->euid),
from_kuid_munged(user_ns, cred->suid),
@@ -180,6 +180,7 @@ static inline void task_state(struct seq_file *m, struct pid_namespace *ns,
from_kgid_munged(user_ns, cred->egid),
from_kgid_munged(user_ns, cred->sgid),
from_kgid_munged(user_ns, cred->fsgid),
+ ngid,
max_fds);
group_info = cred->group_info;
--
1.7.9.5
next reply other threads:[~2015-04-17 2:16 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-17 2:13 Wang Xiaoming [this message]
2015-04-17 2:56 ` [PATCH] proc: move the adding option Ngid to the end of proc/PID/status Tejun Heo
2015-04-17 3:15 ` Wang, Xiaoming
2015-04-17 3:26 ` Tejun Heo
2015-04-17 3:37 ` Wang, Xiaoming
2015-04-17 3:42 ` Tejun Heo
2015-04-17 5:36 ` Wang, Xiaoming
2015-04-21 15:19 ` Eric W. Biederman
-- strict thread matches above, loose matches on Subject: below --
2015-04-17 13:23 Alexey Dobriyan
2015-04-17 14:26 ` Tejun Heo
2015-04-17 15:05 ` Alexey Dobriyan
2015-04-17 15:12 ` Tejun Heo
2015-04-21 8:19 ` Wang, Xiaoming
2015-04-21 14:00 ` Alexey Dobriyan
2015-04-21 15:11 ` Tejun Heo
2015-04-23 20:32 ` Alexey Dobriyan
2015-04-24 15:50 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1429236796-22387-1-git-send-email-xiaoming.wang@intel.com \
--to=xiaoming.wang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=chenhanxiao@cn.fujitsu.com \
--cc=dongxing.zhang@intel.com \
--cc=ebiederm@xmission.com \
--cc=eparis@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@rasmusvillemoes.dk \
--cc=oleg@redhat.com \
--cc=tglx@linutronix.de \
--cc=timothy.m.schallberger@intel.com \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox