00429083f4
Declarations local to arch/*/kernel/*.c are better off *not* in a public header - arch/arc/kernel/unaligned.h is just fine for those bits. Unlike the parisc case, here we have an extra twist - asm/mmu.h has an implicit dependency on struct pt_regs, and in some users that used to be satisfied by include of asm/ptrace.h from asm/unaligned.h (note that asm/mmu.h itself did _not_ pull asm/unaligned.h - it relied upon the users having pulled asm/unaligned.h before asm/mmu.h got there). Seeing that asm/mmu.h only wants struct pt_regs * arguments in an extern, just pre-declare it there - less brittle that way. With that done _all_ asm/unaligned.h instances are reduced to include of asm-generic/unaligned.h and can be removed - unaligned.h is in mandatory-y in include/asm-generic/Kbuild. What's more, we can move asm-generic/unaligned.h to linux/unaligned.h and switch includes of <asm/unaligned.h> to <linux/unaligned.h>; that's better off as an auto-generated commit, though, to be done by Linus at -rc1 time next cycle. Acked-by: Vineet Gupta <vgupta@kernel.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
17 lines
327 B
C
17 lines
327 B
C
struct pt_regs;
|
|
struct callee_regs;
|
|
|
|
#ifdef CONFIG_ARC_EMUL_UNALIGNED
|
|
int misaligned_fixup(unsigned long address, struct pt_regs *regs,
|
|
struct callee_regs *cregs);
|
|
#else
|
|
static inline int
|
|
misaligned_fixup(unsigned long address, struct pt_regs *regs,
|
|
struct callee_regs *cregs)
|
|
{
|
|
/* Not fixed */
|
|
return 1;
|
|
}
|
|
#endif
|
|
|