[Crash-utility] [PATCH 1/1] extensions: proccgroup: fix the wrong method which detect whether to support getting subsys name

Wang Long w at laoqinren.net
Sun Mar 8 14:28:43 UTC 2020


on pre-3.12 kernel, there is no support for getting subsys name. because the cgroup_subsys_state struct
has no member ss. the current use MEMBER_OFFSET to dectect the exists for ss member which is the wrong
method.

This patch fix it by using  MEMBER_EXISTS.

on centos7, without this patch:

crash> showcg 1
showcg: invalid kernel virtual address: ff9987beef203060  type: "cgroup_subsys->name"

with this patch applys:

crash> showcg 1
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /
cgroup: /

Signed-off-by: Wang Long <w at laoqinren.net>
---
 extensions/proccgroup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/extensions/proccgroup.c b/extensions/proccgroup.c
index c2c251d..c53b8ce 100644
--- a/extensions/proccgroup.c
+++ b/extensions/proccgroup.c
@@ -33,7 +33,7 @@ proccgroup_init(void)
         error(FATAL, "Unrecognised or disabled cgroup support\n");
     }
 
-    if (!MEMBER_OFFSET("cgroup_subsys_state", "ss")) {
+    if (!MEMBER_EXISTS("cgroup_subsys_state", "ss")) {
         have_ss_member = false;
         error(WARNING, "pre-3.12 kernel detected, no support for getting subsys name\n");
     } else
-- 
1.8.3.1








More information about the Crash-utility mailing list