Skip to content

Commit 8c0cc8a

Browse files
author
Russell King
committed
ARM: fix nommu builds with 48be69a (ARM: move signal handlers into a vdso-like page)
Olof reports that noMMU builds error out with: arch/arm/kernel/signal.c: In function 'setup_return': arch/arm/kernel/signal.c:413:25: error: 'mm_context_t' has no member named 'sigpage' This shows one of the evilnesses of IS_ENABLED(). Get rid of it here and replace it with #ifdef's - and as no noMMU platform can make use of sigpage, depend on CONIFG_MMU not CONFIG_ARM_MPU. Reported-by: Olof Johansson <[email protected]> Signed-off-by: Russell King <[email protected]>
1 parent e0d4075 commit 8c0cc8a

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

arch/arm/include/asm/elf.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,10 @@ struct mm_struct;
130130
extern unsigned long arch_randomize_brk(struct mm_struct *mm);
131131
#define arch_randomize_brk arch_randomize_brk
132132

133+
#ifdef CONFIG_MMU
133134
#define ARCH_HAS_SETUP_ADDITIONAL_PAGES 1
134135
struct linux_binprm;
135136
int arch_setup_additional_pages(struct linux_binprm *, int);
137+
#endif
136138

137139
#endif

arch/arm/kernel/signal.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,8 @@ setup_return(struct pt_regs *regs, struct ksignal *ksig,
402402
__put_user(sigreturn_codes[idx+1], rc+1))
403403
return 1;
404404

405-
if ((cpsr & MODE32_BIT) && !IS_ENABLED(CONFIG_ARM_MPU)) {
405+
#ifdef CONFIG_MMU
406+
if (cpsr & MODE32_BIT) {
406407
struct mm_struct *mm = current->mm;
407408

408409
/*
@@ -412,7 +413,9 @@ setup_return(struct pt_regs *regs, struct ksignal *ksig,
412413
*/
413414
retcode = mm->context.sigpage + signal_return_offset +
414415
(idx << 2) + thumb;
415-
} else {
416+
} else
417+
#endif
418+
{
416419
/*
417420
* Ensure that the instruction cache sees
418421
* the return code written onto the stack.

0 commit comments

Comments
 (0)