From: John Rigg <lk@sound-man.co.uk>
To: linux-kernel@vger.kernel.org
Cc: Steven Rostedt <rostedt@goodmis.org>
Subject: Re: 2.6.14-rc3-rt10 crashes on boot
Date: Sun, 09 Oct 2005 17:28:47 +0100 [thread overview]
Message-ID: <E1EOe2Z-000187-Ow@localhost.localdomain> (raw)
On Friday, October 7 Steven Rostedt wrote:
>Here's an addon patch to my last one. I don't know x86_64 very well, but
>I believe the the asm is pretty much the same, so this patch removes the
>check for __i386__ and also defines STACK_WARN.
>Index: linux-rt-quilt/include/asm-x86_64/page.h
>===================================================================
>--- linux-rt-quilt.orig/include/asm-x86_64/page.h 2005-10-06 08:04:00.000000000 -0400
>+++ linux-rt-quilt/include/asm-x86_64/page.h 2005-10-07 15:34:20.000000000 -0400
>@@ -21,6 +21,8 @@
> #endif
> #define CURRENT_MASK (~(THREAD_SIZE-1))
>
>+#define STACK_WARN (THREAD_SIZE/8)
>+
> #define LARGE_PAGE_MASK (~(LARGE_PAGE_SIZE-1))
> #define LARGE_PAGE_SIZE (1UL << PMD_SHIFT)
>
>Index: linux-rt-quilt/kernel/latency.c
>===================================================================
>--- linux-rt-quilt.orig/kernel/latency.c 2005-10-06 08:04:56.000000000 -0400
>+++ linux-rt-quilt/kernel/latency.c 2005-10-07 15:31:20.000000000 -0400
>@@ -377,7 +377,8 @@
> atomic_inc(&tr->disabled);
>
> /* Debugging check for stack overflow: is there less than 1KB free? */
>-#ifdef __i386__
>+#if 1 // def __i386__
>+ /* Hopefully this works on x86_64! */
> __asm__ __volatile__("andl %%esp,%0" :
> "=r" (stack_left) : "0" (THREAD_SIZE - 1));
> #else
Steve, thanks for these patches. I got it to compile with 2.6.14-rc3-rt12
but had to change the assembly lines in (patched) latency.c to
__asm__ __volatile__("and %%rsp,%0" :
"=r" (stack_left) : "0" (THREAD_SIZE - 1));
ie. `and' instead of `andl' and `%%rsp' instead of `%%esp'.
Somebody who understands x86_64 assembly better than I do should probably check
this before anyone tries using it.
While I was at it I changed a printk arg in line 335 of (patched) latency.c -
I think the last %d should be %ld, ie.
printk("| new stack-footprint maximum: %s/%d, %ld bytes (out of %ld bytes).\n",
worst_stack_comm, worst_stack_pid, MAX_STACK-worst_stack_left, MAX_STACK);
John
next reply other threads:[~2005-10-09 16:22 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-09 16:28 John Rigg [this message]
[not found] <E1EOe3U-00018A-Fy@localhost.localdomain>
2005-10-11 11:17 ` Ingo Molnar
-- strict thread matches above, loose matches on Subject: below --
2005-10-09 16:30 John Rigg
[not found] <E1ENxei-0001C9-F7@localhost.localdomain>
2005-10-07 19:42 ` Steven Rostedt
2005-10-11 10:55 ` Ingo Molnar
2005-10-07 19:16 John Rigg
2005-10-07 15:11 John Rigg
2005-10-07 15:48 ` Steven Rostedt
2005-10-07 0:37 John Rigg
2005-10-07 6:36 ` Steven Rostedt
2005-10-07 11:43 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1EOe2Z-000187-Ow@localhost.localdomain \
--to=lk@sound-man.co.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome