[Crash-utility] [PATCH] cmdline: Add a new "--machdep stacksize=<value>".
Sean Fu
fxinrong at gmail.com
Thu Oct 25 02:50:39 UTC 2018
On Thu, Oct 11, 2018 at 06:49:10AM +0200, Dominique Martinet wrote:
> Sean Fu wrote on Thu, Oct 11, 2018:
> > Your code is different from mine. The following is from my task.c:
> >
> > 436 if (VALID_SIZE(task_union) && (SIZE(task_union) != STACKSIZE())) {
> > 437 error(WARNING, "\nnon-standard stack size: %ld\n",
> > 438 len = SIZE(task_union));
> > 439 machdep->stacksize = len;
> > 440 } else if (VALID_SIZE(thread_union) &&
> > 441 ((len = SIZE(thread_union)) != STACKSIZE()))
> > 442 machdep->stacksize = len;
> > 443
> > 444 MEMBER_OFFSET_INIT(pid_namespace_idr, "pid_namespace", "idr");
> > 445 MEMBER_OFFSET_INIT(idr_idr_rt, "idr", "idr_rt");
> >
> > My code repo:
> > sean at linux-zmni:~/work/source/upstream/crash> git remote -v
> > origin https://github.com/crash-utility/crash.git (fetch)
> > origin https://github.com/crash-utility/crash.git (push)
> >
> > What's your crash version?
>
> Your checkout is a bit old, the extra check was added back in april in
> this commit:
>
> commit 6088a29f7e4ad7160e757679827db63ea41553df
> Author: Dave Anderson <anderson at redhat.com>
> Date: Thu Apr 5 11:07:59 2018 -0400
>
> Fix for the "bt" command on 4.16 and later kernels size in which the
> "thread_union" data structure is not contained in the vmlinux file's
> debuginfo data. Without the patch, the kernel stack size is not
> calculated correctly, and defaults to 8K. As a result "bt" fails
> with the message "bt: invalid RSP: <address> bt->stackbase/stacktop:
> <address>/<address> cpu: <number>".
> (efault at gmx.de)
>
> which is present in releases since 7.2.2 according to `git tag
> --contains`, but development should probably always be done with an
> updated tree
Correct, The new crash tools with this patch works fine on my machine.
Thanks
> --
> Domnique
More information about the Crash-utility
mailing list