Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 200423
b: refs/heads/master
c: f1ba9a5
h: refs/heads/master
i:
  200421: e13f056
  200419: c965cf6
  200415: 04d8007
v: v3
  • Loading branch information
Christoph Hellwig authored and Benjamin Herrenschmidt committed Jun 15, 2010
1 parent d397795 commit 930d9c2
Show file tree
Hide file tree
Showing 9 changed files with 1 addition and 43 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b636f1379eefe6eba931deaa386605bc7ac623e7
refs/heads/master: f1ba9a5b2ab7d3f5a910d93371c4f22b636b7683
7 changes: 0 additions & 7 deletions trunk/arch/powerpc/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -135,13 +135,6 @@ config DEBUGGER
depends on KGDB || XMON
default y

config IRQSTACKS
bool "Use separate kernel stacks when processing interrupts"
help
If you say Y here the kernel will use separate kernel stacks
for handling hard and soft interrupts. This can help avoid
overflowing the process kernel stacks.

config VIRQ_DEBUG
bool "Expose hardware/virtual IRQ mapping via debugfs"
depends on DEBUG_FS
Expand Down
6 changes: 0 additions & 6 deletions trunk/arch/powerpc/include/asm/irq.h
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,6 @@ extern void exc_lvl_ctx_init(void);
#define exc_lvl_ctx_init()
#endif

#ifdef CONFIG_IRQSTACKS
/*
* Per-cpu stacks for handling hard and soft interrupts.
*/
Expand All @@ -369,11 +368,6 @@ extern void irq_ctx_init(void);
extern void call_do_softirq(struct thread_info *tp);
extern int call_handle_irq(int irq, void *p1,
struct thread_info *tp, void *func);
#else
#define irq_ctx_init()

#endif /* CONFIG_IRQSTACKS */

extern void do_IRQ(struct pt_regs *regs);

#endif /* _ASM_IRQ_H */
Expand Down
12 changes: 0 additions & 12 deletions trunk/arch/powerpc/kernel/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -317,7 +317,6 @@ void fixup_irqs(const struct cpumask *map)
}
#endif

#ifdef CONFIG_IRQSTACKS
static inline void handle_one_irq(unsigned int irq)
{
struct thread_info *curtp, *irqtp;
Expand Down Expand Up @@ -358,12 +357,6 @@ static inline void handle_one_irq(unsigned int irq)
if (irqtp->flags)
set_bits(irqtp->flags, &curtp->flags);
}
#else
static inline void handle_one_irq(unsigned int irq)
{
generic_handle_irq(irq);
}
#endif

static inline void check_stack_overflow(void)
{
Expand Down Expand Up @@ -455,7 +448,6 @@ void exc_lvl_ctx_init(void)
}
#endif

#ifdef CONFIG_IRQSTACKS
struct thread_info *softirq_ctx[NR_CPUS] __read_mostly;
struct thread_info *hardirq_ctx[NR_CPUS] __read_mostly;

Expand Down Expand Up @@ -492,10 +484,6 @@ static inline void do_softirq_onstack(void)
irqtp->task = NULL;
}

#else
#define do_softirq_onstack() __do_softirq()
#endif /* CONFIG_IRQSTACKS */

void do_softirq(void)
{
unsigned long flags;
Expand Down
2 changes: 0 additions & 2 deletions trunk/arch/powerpc/kernel/misc_32.S
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@

.text

#ifdef CONFIG_IRQSTACKS
_GLOBAL(call_do_softirq)
mflr r0
stw r0,4(r1)
Expand All @@ -56,7 +55,6 @@ _GLOBAL(call_handle_irq)
lwz r0,4(r1)
mtlr r0
blr
#endif /* CONFIG_IRQSTACKS */

/*
* This returns the high 64 bits of the product of two 64-bit numbers.
Expand Down
2 changes: 0 additions & 2 deletions trunk/arch/powerpc/kernel/misc_64.S
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@

.text

#ifdef CONFIG_IRQSTACKS
_GLOBAL(call_do_softirq)
mflr r0
std r0,16(r1)
Expand All @@ -52,7 +51,6 @@ _GLOBAL(call_handle_irq)
ld r0,16(r1)
mtlr r0
blr
#endif /* CONFIG_IRQSTACKS */

.section ".toc","aw"
PPC64_CACHES:
Expand Down
5 changes: 0 additions & 5 deletions trunk/arch/powerpc/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -1005,7 +1005,6 @@ int sys_execve(unsigned long a0, unsigned long a1, unsigned long a2,
return error;
}

#ifdef CONFIG_IRQSTACKS
static inline int valid_irq_stack(unsigned long sp, struct task_struct *p,
unsigned long nbytes)
{
Expand All @@ -1030,10 +1029,6 @@ static inline int valid_irq_stack(unsigned long sp, struct task_struct *p,
return 0;
}

#else
#define valid_irq_stack(sp, p, nb) 0
#endif /* CONFIG_IRQSTACKS */

int validate_sp(unsigned long sp, struct task_struct *p,
unsigned long nbytes)
{
Expand Down
4 changes: 0 additions & 4 deletions trunk/arch/powerpc/kernel/setup_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,6 @@ int __init ppc_init(void)

arch_initcall(ppc_init);

#ifdef CONFIG_IRQSTACKS
static void __init irqstack_early_init(void)
{
unsigned int i;
Expand All @@ -255,9 +254,6 @@ static void __init irqstack_early_init(void)
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
}
}
#else
#define irqstack_early_init()
#endif

#if defined(CONFIG_BOOKE) || defined(CONFIG_40x)
static void __init exc_lvl_early_init(void)
Expand Down
4 changes: 0 additions & 4 deletions trunk/arch/powerpc/kernel/setup_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -432,7 +432,6 @@ static u64 slb0_limit(void)
return 1UL << SID_SHIFT;
}

#ifdef CONFIG_IRQSTACKS
static void __init irqstack_early_init(void)
{
u64 limit = slb0_limit();
Expand All @@ -451,9 +450,6 @@ static void __init irqstack_early_init(void)
THREAD_SIZE, limit));
}
}
#else
#define irqstack_early_init()
#endif

#ifdef CONFIG_PPC_BOOK3E
static void __init exc_lvl_early_init(void)
Expand Down

0 comments on commit 930d9c2

Please sign in to comment.