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

Christophe Leroy christophe.leroy at c-s.fr
Thu Aug 29 18:38:53 AEST 2019



Le 29/08/2019 à 10:01, Arnd Bergmann a écrit :
> On Thu, Aug 29, 2019 at 8:46 AM Christoph Hellwig <hch at infradead.org> 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()

Christophe

> 
> I suspect most if not all could be changed to the generic
> in_compat_syscall() that we use outside of architecture specific
> code.
> 
>         Arnd
> 


More information about the Linuxppc-dev mailing list