From: Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
To: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
Randy Dunlap <rdunlap@xenotime.net>
Cc: x86@kernel.org, linux-kernel@vger.kernel.org,
linux-doc@vger.kernel.org, yrl.pp-manager.tt@hitachi.com
Subject: [PATCH -v2 0/4] x86: check stack overflows more reliably
Date: Tue, 29 Nov 2011 15:08:07 +0900 [thread overview]
Message-ID: <20111129060806.11076.74583.stgit@ltc219.sdl.hitachi.co.jp> (raw)
Hi,
This patch series adds the following three features about stack
overflow checking. The (3) feature works if the sysctl parameter
is enabled.
(1) add user mode vm check
The kernel stack overflow is checked in stack_overflow_check(),
which may wrongly detect the overflow if the user stack pointer
points to the kernel stack intentionally or accidentally.
To avoid this misdetection, bail out early if the user stack is
used.
(2) check stack overflow in detail
Currently, only kernel stack is checked for the overflow,
which is not sufficient for systems that need a high reliability.
To enhance it, expand stack overflow checking to IRQ and
exception stacks.
(3) panic on stack overflow
Currently, kernel messages are output on the detection of
stack overflow. Similarly, its's not sufficient for systems
that need a high reliability since it may corrupt data and the
additional corruption may occur due to reading them. To enhance
reliability, cause a panic for the overflows according to the
sysctl parameter. In addition, it is also useful for analyzing
the reason why it occurred using kdump which is a crash dumping
mechanism. This option is disabled by default in sysctl.
Changes in v2:
- Remove DEBUG_STACKOVERFLOW_DETAIL option in Kconfig.
- Change the default overflow checking to the detail-check instead
of original one that only checks the kernel stack overflow.
- Remove the changes related to binary sysctl.
Thanks,
---
Mitsuo Hayasaka (4):
x86: cleanup the range of stack overflow checking
x86: panic on detection of stack overflow
x86: check stack overflow in detail
[BUGFIX] x86: add user_mode_vm check in stack_overflow_check
Documentation/sysctl/kernel.txt | 14 ++++++++++++++
arch/x86/Kconfig.debug | 7 +++++--
arch/x86/kernel/irq_32.c | 2 ++
arch/x86/kernel/irq_64.c | 36 ++++++++++++++++++++++++++++++------
include/linux/kernel.h | 1 +
kernel/sysctl.c | 9 +++++++++
6 files changed, 61 insertions(+), 8 deletions(-)
--
Mitsuo Hayasaka (mitsuo.hayasaka.hu@hitachi.com)
next reply other threads:[~2011-11-29 6:02 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-29 6:08 Mitsuo Hayasaka [this message]
2011-11-29 6:08 ` [PATCH -v2 1/4] [BUGFIX] x86: add user_mode_vm check in stack_overflow_check Mitsuo Hayasaka
2011-12-05 13:17 ` [tip:x86/debug] x86: Add " tip-bot for Mitsuo Hayasaka
2011-11-29 6:08 ` [PATCH -v2 2/4] x86: check stack overflow in detail Mitsuo Hayasaka
2011-12-05 13:18 ` [tip:x86/debug] x86: Check " tip-bot for Mitsuo Hayasaka
2011-11-29 6:08 ` [PATCH -v2 3/4] x86: panic on detection of stack overflow Mitsuo Hayasaka
2011-12-05 13:19 ` [tip:x86/debug] x86: Panic " tip-bot for Mitsuo Hayasaka
2011-12-05 13:26 ` [tip:x86/debug] x86: Fix the 32-bit stackoverflow-debug build tip-bot for Ingo Molnar
2011-11-29 6:08 ` [PATCH -v2 4/4] x86: cleanup the range of stack overflow checking Mitsuo Hayasaka
2011-12-05 13:19 ` [tip:x86/debug] x86: Clean up " tip-bot for Mitsuo Hayasaka
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=20111129060806.11076.74583.stgit@ltc219.sdl.hitachi.co.jp \
--to=mitsuo.hayasaka.hu@hitachi.com \
--cc=hpa@zytor.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rdunlap@xenotime.net \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
--cc=yrl.pp-manager.tt@hitachi.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.