Re: [PATCH v3 3/4] powerpc/64: make buildable without CONFIG_COMPAT

From: Arnd Bergmann
Date: Thu Aug 29 2019 - 04:50:03 EST


On Thu, Aug 29, 2019 at 10:38 AM Christophe Leroy
<christophe.leroy@xxxxxx> wrote:
> Le 29/08/2019 Ã 10:01, Arnd Bergmann a Ãcrit :
> > On Thu, Aug 29, 2019 at 8:46 AM Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> >
> >>> @@ -277,7 +277,7 @@ static void do_signal(struct task_struct *tsk)
> >>>
> >>> rseq_signal_deliver(&ksig, tsk->thread.regs);
> >>>
> >>> - if (is32) {
> >>> + if ((IS_ENABLED(CONFIG_PPC32) || IS_ENABLED(CONFIG_COMPAT)) && is32) {
> >>
> >> I think we should fix the is_32bit_task definitions instead so that
> >> callers don't need this mess. I'd suggest something like:
> >>
> >> #ifdef CONFIG_COMPAT
> >> #define is_32bit_task() test_thread_flag(TIF_32BIT)
> >> #else
> >> #define is_32bit_task() IS_ENABLED(CONFIG_PPC32)
> >> #endif
> >
> > Are there actually any (correct) uses of is_32bit_task() outside of
> > #ifdef CONFIG_PPC64?
>
> There is at least stack_maxrandom_size()
> Also brk_rnd() and do_signal()

Right, makes sense.

Arnd