From 87c47b8758dd0bdd7932292cdfd6133b0a8ae8a7 Mon Sep 17 00:00:00 2001 From: ligd Date: Tue, 9 Nov 2021 16:11:29 +0800 Subject: [PATCH] procfs: fix ps can't log out Group id Signed-off-by: ligd --- fs/procfs/fs_procfsproc.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/fs/procfs/fs_procfsproc.c b/fs/procfs/fs_procfsproc.c index 78f9380754..f2c18b709c 100644 --- a/fs/procfs/fs_procfsproc.c +++ b/fs/procfs/fs_procfsproc.c @@ -498,8 +498,8 @@ static ssize_t proc_status(FAR struct proc_file_s *procfile, DEBUGASSERT(group != NULL); linesize = procfs_snprintf(procfile->line, STATUS_LINELEN, - "%-12s%d\n", "PPID:", - group->tg_ppid); + "%-12s%d\n", + "Group:", group->tg_pid); copysize = procfs_memcpy(procfile->line, linesize, buffer, remaining, &offset); @@ -990,6 +990,20 @@ static ssize_t proc_groupstatus(FAR struct proc_file_s *procfile, buffer += copysize; remaining -= copysize; + if (totalsize >= buflen) + { + return totalsize; + } + + linesize = procfs_snprintf(procfile->line, STATUS_LINELEN, "%-12s%d\n", + "Parent:", group->tg_ppid); + copysize = procfs_memcpy(procfile->line, linesize, buffer, + remaining, &offset); + + totalsize += copysize; + buffer += copysize; + remaining -= copysize; + if (totalsize >= buflen) { return totalsize;