Re: Build regressions/improvements in v5.9-rc8

From: Andy Shevchenko
Date: Wed Oct 07 2020 - 10:27:32 EST


On Wed, Oct 07, 2020 at 02:48:42PM +0100, Christoph Hellwig wrote:
> On Wed, Oct 07, 2020 at 04:02:41PM +0300, Andy Shevchenko wrote:
> > On Wed, Oct 07, 2020 at 02:45:30PM +0200, Paul Bolle wrote:
> > > Richard Weinberger schreef op wo 07-10-2020 om 14:08 [+0200]:
> > > > UML has no ia32 emulation and therefore no in_ia32_syscall().
> > > > Maybe you can check for CONFIG_IA32_EMULATION too?
> > >
> > > The pending fix is:
> > > #if defined(CONFIG_X86_64) && !defined(CONFIG_UML)
> > >
> > > Since this check guards in_ia32_syscall() just checking CONFIG_IA32_EMULATION
> > > should do too.
> > >
> > > (Way outside my limited expertise, but anyway: is does look odd to see a call
> > > to in_ia32_syscall() in drivers/. All other calls are in arch/x86/. Isn't this
> > > a bit too x86 specific for an arch independent driver?)
> >
> > According to Arnd who suggested that fix the problem is basically appears on
> > x86. He also mentioned the new approach that Christoph Hellwig is working on.
> > But we decided to go the ifdeffery for better backporting.
>
> linux-next has compat_need_64bit_alignment_fixup(), which is the
> proper thing to use. But for now you'll need the ifdef mess.

Thanks for pointing out to this!

So, we need to utilize the new stuff from:
cc7886d25bca ("compat: lift compat_s64 and compat_u64 to <asm-generic/compat.h>")
527c412519eb ("compat: add a compat_need_64bit_alignment_fixup() helper")


--
With Best Regards,
Andy Shevchenko