----- Original Message -----
And to follow up, I'm still running tests (and will do so
overnight) on your latest
patch, but I immediately see this on any 2.6.30, 2.6.31 or 2.6.32 kernel, and on
some 2.6.36 and 2.6.38 kernels, where "runq -g" fails like this:
crash> runq -g
runq: invalid kernel virtual address: 0 type: "dentry"
crash>
The error above is pretty persistent on all kernels from 2.6.27 to 2.6.38,
where you can get a legitimate cgroup that has no dentry:
+static void
+get_task_group_name(ulong group, char **group_name)
+{
+ ulong cgroup, dentry, name;
+ char *dentry_buf, *tmp;
+ int len;
+
+ readmem(group + OFFSET(task_group_css) + OFFSET(cgroup_subsys_state_cgroup),
+ KVADDR, &cgroup, sizeof(ulong),
+ "task_group css cgroup", FAULT_ON_ERROR);
+ if (cgroup == 0)
+ return;
+
+ readmem(cgroup + OFFSET(cgroup_dentry), KVADDR, &dentry, sizeof(ulong),
+ "cgroup dentry", FAULT_ON_ERROR);
+
+ dentry_buf = GETBUF(SIZE(dentry));
+ readmem(dentry, KVADDR, dentry_buf, SIZE(dentry),
+ "dentry", FAULT_ON_ERROR);
Dave