[Crash-utility] Re: backtrace problem with crash 0.2.18 on 2.6.14vanilia kernel ia64

Dave Anderson anderson at redhat.com
Tue Jan 10 19:02:45 UTC 2006


Jun'ichi Nomura wrote:

> Hi,
>
> Dave Anderson wrote:
>  > Xavier also mentioned in a private email that "foreach bt" shows
>  > nothing for all non-active tasks, so it appears that something has
>  > changed affecting the ia64 unwind facility.  Has anybody else
>  > running ia64 on 2.6.14 kernels seen this?
>
> While 'bt' just works on my 2.6.15 vanilla kernel (16KB-page),
> I noticed Xavier used 64KB-page kernel but crash assumed
> stacksize was 32KB.
>
>  > xb wrote:
>  >>          pagesize: 65536
> ...
>  >>         stacksize: 32768
>
> Can this be a cause of the problem?
> In kernel, the stack size is 64KB under 64KB-page.
>

Nice catch -- I didn't even notice his pagesize.  I should learn to
look at my own debug code...

Anyway, it sure looks like it could be the issue here.

Xavier, please try something like this and let us know:

--- ia64.c.orig 2006-01-10 14:07:07.000000000 -0500
+++ ia64.c      2006-01-10 14:07:31.000000000 -0500
@@ -92,6 +92,9 @@ ia64_init(int when)
                case 16384:
                        machdep->stacksize = (power(2, 1) * PAGESIZE());
                        break;
+               case 65536:
+                       machdep->stacksize = (power(2, 0) * PAGESIZE());
+                       break;
                default:
                        machdep->stacksize = 32*1024;
                        break;

Thanks again, Jun-ichi,
  Dave


>
> In crash/ia64.c:ia64_init(),
> ..
>        case 4096:
>                machdep->stacksize = (power(2, 3) * PAGESIZE());
>                break;
>        case 8192:
>                machdep->stacksize = (power(2, 2) * PAGESIZE());
>                break;
>        case 16384:
>                machdep->stacksize = (power(2, 1) * PAGESIZE());
>                break;
>        default:
>                machdep->stacksize = 32*1024;
>                break;
> ..
>
> In include/asm-ia64/ptrace.h of kernel,
>    #if defined(CONFIG_IA64_PAGE_SIZE_4KB)
>    # define KERNEL_STACK_SIZE_ORDER                3
>    #elif defined(CONFIG_IA64_PAGE_SIZE_8KB)
>    # define KERNEL_STACK_SIZE_ORDER                2
>    #elif defined(CONFIG_IA64_PAGE_SIZE_16KB)
>    # define KERNEL_STACK_SIZE_ORDER                1
>    #else
>    # define KERNEL_STACK_SIZE_ORDER                0
>    #endif
>
> Thanks,
> Jun'ichi "Nick" Nomura
>
> --
> Crash-utility mailing list
> Crash-utility at redhat.com
> https://www.redhat.com/mailman/listinfo/crash-utility
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/crash-utility/attachments/20060110/219b9078/attachment.htm>


More information about the Crash-utility mailing list