From: Chris Wedgwood <cw@f00f.org>
To: LKML <linux-kernel@vger.kernel.org>
Cc: Arjan van de Ven <arjanv@redhat.com>
Subject: [PATCH] Kill CONFIG_4KSTACKS
Date: Sat, 11 Sep 2004 13:41:25 -0700 [thread overview]
Message-ID: <20040911204125.GA26179@taniwha.stupidest.org> (raw)
http://linux.bkbits.net:8080/linux-2.5/cset@407af9a3SmWwuO0CEQwLmAZoLXAcCA
seems to indicate 8K stacks are deprecated. This removes the option
completely so were now use 4k-process + 4k-irq stacks all the time.
Probably a bit premature...
arch/i386/Kconfig.debug | 9 ---------
arch/i386/defconfig | 1 -
arch/i386/kernel/irq.c | 24 +-----------------------
include/asm-i386/irq.h | 4 ----
include/asm-i386/module.h | 8 +-------
include/asm-i386/thread_info.h | 4 ----
6 files changed, 2 insertions(+), 48 deletions(-)
===== arch/i386/Kconfig.debug 1.3 vs edited =====
--- 1.3/arch/i386/Kconfig.debug 2004-08-31 00:55:12 -07:00
+++ edited/arch/i386/Kconfig.debug 2004-09-11 13:11:39 -07:00
@@ -46,15 +46,6 @@
This results in a large slowdown, but helps to find certain types
of memory corruptions.
-config 4KSTACKS
- bool "Use 4Kb for kernel stacks instead of 8Kb"
- help
- If you say Y here the kernel will use a 4Kb stacksize for the
- kernel stack attached to each process/thread. This facilitates
- running more threads on a system and also reduces the pressure
- on the VM subsystem for higher order allocations. This option
- will also use IRQ stacks to compensate for the reduced stackspace.
-
config SCHEDSTATS
bool "Collect scheduler statistics"
depends on DEBUG_KERNEL && PROC_FS
===== arch/i386/defconfig 1.113 vs edited =====
--- 1.113/arch/i386/defconfig 2004-06-27 00:19:31 -07:00
+++ edited/arch/i386/defconfig 2004-09-11 12:58:09 -07:00
@@ -1221,7 +1221,6 @@
CONFIG_EARLY_PRINTK=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
# CONFIG_FRAME_POINTER is not set
-CONFIG_4KSTACKS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
===== arch/i386/kernel/irq.c 1.59 vs edited =====
--- 1.59/arch/i386/kernel/irq.c 2004-08-31 00:57:57 -07:00
+++ edited/arch/i386/kernel/irq.c 2004-09-11 13:15:23 -07:00
@@ -76,10 +76,8 @@
/*
* per-CPU IRQ handling stacks
*/
-#ifdef CONFIG_4KSTACKS
union irq_ctx *hardirq_ctx[NR_CPUS];
union irq_ctx *softirq_ctx[NR_CPUS];
-#endif
/*
* Special irq handlers.
@@ -435,7 +433,7 @@
irq_enter();
#ifdef CONFIG_DEBUG_STACKOVERFLOW
- /* Debugging check for stack overflow: is there less than 1KB free? */
+ /* Debugging check for stack overflow */
{
long esp;
@@ -489,7 +487,6 @@
* useful for irq hardware that does not mask cleanly in an
* SMP environment.
*/
-#ifdef CONFIG_4KSTACKS
for (;;) {
irqreturn_t action_ret;
@@ -542,23 +539,6 @@
desc->status &= ~IRQ_PENDING;
}
-#else
-
- for (;;) {
- irqreturn_t action_ret;
-
- spin_unlock(&desc->lock);
-
- action_ret = handle_IRQ_event(irq, ®s, action);
-
- spin_lock(&desc->lock);
- if (!noirqdebug)
- note_interrupt(irq, desc, action_ret);
- if (likely(!(desc->status & IRQ_PENDING)))
- break;
- desc->status &= ~IRQ_PENDING;
- }
-#endif
desc->status &= ~IRQ_INPROGRESS;
out:
@@ -1077,7 +1057,6 @@
}
-#ifdef CONFIG_4KSTACKS
/*
* These should really be __section__(".bss.page_aligned") as well, but
* gcc's 3.0 and earlier don't handle that correctly.
@@ -1155,4 +1134,3 @@
}
EXPORT_SYMBOL(do_softirq);
-#endif
===== include/asm-i386/irq.h 1.11 vs edited =====
--- 1.11/include/asm-i386/irq.h 2004-04-12 10:54:45 -07:00
+++ edited/include/asm-i386/irq.h 2004-09-11 12:58:19 -07:00
@@ -31,7 +31,6 @@
#define ARCH_HAS_NMI_WATCHDOG /* See include/linux/nmi.h */
#endif
-#ifdef CONFIG_4KSTACKS
/*
* per-CPU IRQ handling contexts (thread information and stack)
*/
@@ -46,9 +45,6 @@
extern void irq_ctx_init(int cpu);
#define __ARCH_HAS_DO_SOFTIRQ
-#else
-#define irq_ctx_init(cpu) do { ; } while (0)
-#endif
struct irqaction;
struct pt_regs;
===== include/asm-i386/module.h 1.11 vs edited =====
--- 1.11/include/asm-i386/module.h 2004-04-12 10:54:45 -07:00
+++ edited/include/asm-i386/module.h 2004-09-11 13:01:43 -07:00
@@ -60,12 +60,6 @@
#define MODULE_REGPARM ""
#endif
-#ifdef CONFIG_4KSTACKS
-#define MODULE_STACKSIZE "4KSTACKS "
-#else
-#define MODULE_STACKSIZE ""
-#endif
-
-#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_REGPARM MODULE_STACKSIZE
+#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_REGPARM
#endif /* _ASM_I386_MODULE_H */
===== include/asm-i386/thread_info.h 1.20 vs edited =====
--- 1.20/include/asm-i386/thread_info.h 2004-08-23 01:14:45 -07:00
+++ edited/include/asm-i386/thread_info.h 2004-09-11 13:01:43 -07:00
@@ -52,11 +52,7 @@
#endif
#define PREEMPT_ACTIVE 0x4000000
-#ifdef CONFIG_4KSTACKS
#define THREAD_SIZE (4096)
-#else
-#define THREAD_SIZE (8192)
-#endif
#define STACK_WARN (THREAD_SIZE/8)
/*
next reply other threads:[~2004-09-11 20:41 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-11 20:41 Chris Wedgwood [this message]
2004-09-12 5:00 ` William Lee Irwin III
2004-09-12 5:06 ` Chris Wedgwood
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=20040911204125.GA26179@taniwha.stupidest.org \
--to=cw@f00f.org \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.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
all inboxes | Powered by JetHome®