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

From: Michal Suchánek <[email-masked]>
Date: Thu, 29 Aug 2019 12:01:45 +0200

On Wed, 28 Aug 2019 23:46:24 -0700
Christoph Hellwig <[email-masked]> wrote:

> On Wed, Aug 28, 2019 at 06:43:50PM +0200, Michal Suchanek wrote:
> > +ifdef CONFIG_COMPAT
> > +obj-y				+= sys_ppc32.o ptrace32.o signal_32.o
> > +endif  
> 
> This should be:
> 
> obj-$(CONFIG_COMPAT)		+= sys_ppc32.o ptrace32.o signal_32.o

Yes, looks better.
> 
> >  /* This value is used to mark exception frames on the stack. */
> >  exception_marker:
> > diff --git a/arch/powerpc/kernel/signal.c b/arch/powerpc/kernel/signal.c
> > index 60436432399f..73d0f53ffc1a 100644
> > --- a/arch/powerpc/kernel/signal.c
> > +++ b/arch/powerpc/kernel/signal.c
> > @@ -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.  

Yes, that makes sense.

Thanks

Michal