On Wed, Aug 15, 2012 at 03:34:04PM +0100, Arnd Bergmann wrote: > On Tuesday 14 August 2012, Catalin Marinas wrote: > > > +#ifdef CONFIG_AARCH32_EMULATION > > +#include <linux/compat.h> > > + > > +#define AARCH32_KERN_SIGRET_CODE_OFFSET 0x500 > > + > > +extern const compat_ulong_t aarch32_sigret_code[6]; > > + > > +int compat_setup_frame(int usig, struct k_sigaction *ka, sigset_t *set, > > + struct pt_regs *regs); > > +int compat_setup_rt_frame(int usig, struct k_sigaction *ka, siginfo_t *info, > > + sigset_t *set, struct pt_regs *regs); > > + > > +void compat_setup_restart_syscall(struct pt_regs *regs); > > +#else > > + > > +static inline int compat_setup_frame(int usid, struct k_sigaction *ka, > > + sigset_t *set, struct pt_regs *regs) > > +{ > > + BUG(); > > +} > > What good is the run-time BUG() here? Nothing should be calling these > when CONFIG_COMPAT is disabled, so I think you should just remove > the #ifdef around the declarations, and the entire #else case. They are called from handle_signal(), so that's to avoid #ifdef inside functions. I can drop the BUG() (but keep the empty function) and change the checks to is_compat_task() so that the compiler optimises the condition out when !COMPAT. -- Catalin -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html