Today I noticed pgrep doesn't work. It seems the reason is a missing
Name: tag in the status file for a process in /proc.
# cat /proc/1/status
init
State: S (sleeping)
Tgid: 1
Pid: 1
PPid: 0
TracerPid: 0
...etc, etc...
This is supposed to look like:
# cat /proc/1/status
Name: init
State: S (sleeping)
Tgid: 1
Pid: 1
PPid: 0
TracerPid: 0
...
--
Zan Lynx <[email protected]>
On Fri, 07 Dec 2007 20:26:43 +0000
Zan Lynx <[email protected]> wrote:
> Today I noticed pgrep doesn't work. It seems the reason is a missing
> Name: tag in the status file for a process in /proc.
>
> # cat /proc/1/status
> init
> State: S (sleeping)
> Tgid: 1
> Pid: 1
> PPid: 0
> TracerPid: 0
> ...etc, etc...
>
> This is supposed to look like:
> # cat /proc/1/status
> Name: init
> State: S (sleeping)
> Tgid: 1
> Pid: 1
> PPid: 0
> TracerPid: 0
> ...
>
Thanks. Two (more) bugs in
proc-seqfile-convert-proc_pid_status-to-properly-handle-pid-namespaces.patch
--- a/fs/proc/array.c~proc-seqfile-convert-proc_pid_status-to-properly-handle-pid-namespaces-fix-3
+++ a/fs/proc/array.c
@@ -98,9 +98,9 @@ static inline void task_name(struct seq_
get_task_comm(tcomm, p);
+ seq_printf(m, "Name:\t");
end = m->buf + m->size;
buf = m->buf + m->count;
- seq_printf(m, "Name:\n");
name = tcomm;
i = sizeof(tcomm);
while (i && (buf < end)) {
_
Andrew Morton <[email protected]> writes:
> On Fri, 07 Dec 2007 20:26:43 +0000
> Zan Lynx <[email protected]> wrote:
>
>> Today I noticed pgrep doesn't work. It seems the reason is a missing
>> Name: tag in the status file for a process in /proc.
>>
>> # cat /proc/1/status
>> init
>> State: S (sleeping)
>> Tgid: 1
>> Pid: 1
>> PPid: 0
>> TracerPid: 0
>> ...etc, etc...
>>
>> This is supposed to look like:
>> # cat /proc/1/status
>> Name: init
>> State: S (sleeping)
>> Tgid: 1
>> Pid: 1
>> PPid: 0
>> TracerPid: 0
>> ...
>>
>
> Thanks. Two (more) bugs in
> proc-seqfile-convert-proc_pid_status-to-properly-handle-pid-namespaces.patch
Doh! How did I get that one confused?
Thanks.
Eric
>
> ---
> a/fs/proc/array.c~proc-seqfile-convert-proc_pid_status-to-properly-handle-pid-namespaces-fix-3
> +++ a/fs/proc/array.c
> @@ -98,9 +98,9 @@ static inline void task_name(struct seq_
>
> get_task_comm(tcomm, p);
>
> + seq_printf(m, "Name:\t");
> end = m->buf + m->size;
> buf = m->buf + m->count;
> - seq_printf(m, "Name:\n");
> name = tcomm;
> i = sizeof(tcomm);
> while (i && (buf < end)) {
> _