Re: stable-rc 5.4: arm64 build failed - error: ‘const struct arch_timer_erratum_workaround’ has no member named ‘disable_compat_vdso’

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 14, 2020 at 8:40 PM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On Tue, Jul 14, 2020 at 10:48:14PM +0530, Naresh Kamboju wrote:
> > arm64 build failed on 5.4
> >
> > make -sk KBUILD_BUILD_USER=TuxBuild -C/linux -j16 ARCH=arm64
> > CROSS_COMPILE=aarch64-linux-gnu- HOSTCC=gcc CC="sccache
> > aarch64-linux-gnu-gcc" O=build Image
> > #
> > ../drivers/clocksource/arm_arch_timer.c:484:4: error: ‘const struct
> > arch_timer_erratum_workaround’ has no member named
> > ‘disable_compat_vdso’
> >   484 |   .disable_compat_vdso = true,
> >       |    ^~~~~~~~~~~~~~~~~~~
> > ../drivers/clocksource/arm_arch_timer.c:484:26: warning:
> > initialization of ‘u32 (*)(void)’ {aka ‘unsigned int (*)(void)’} from
> > ‘int’ makes pointer from integer without a cast [-Wint-conversion]
> >   484 |   .disable_compat_vdso = true,
> >       |                          ^~~~
> > ../drivers/clocksource/arm_arch_timer.c:484:26: note: (near
> > initialization for ‘ool_workarounds[5].read_cntp_tval_el0’)
> >
> > Could be this patch,
> > arm64: arch_timer: Disable the compat vdso for cores affected by
> > ARM64_WORKAROUND_1418040
> > commit 4b661d6133c5d3a7c9aca0b4ee5a78c7766eff3f upstream.
> >
> > ARM64_WORKAROUND_1418040 requires that AArch32 EL0 accesses to
> > the virtual counter register are trapped and emulated by the kernel.
> > This makes the vdso pretty pointless, and in some cases livelock
> > prone.
> >
> > Provide a workaround entry that limits the vdso to 64bit tasks.
> >
> > ref:
> > https://gitlab.com/Linaro/lkft/kernel-runs/-/jobs/638094006
>
> Thanks, I've now dropped this patch.

I think we do want to have it back eventually. It appears that the patch
upstream depends on the two immediately before it:

4b661d6133c5 arm64: arch_timer: Disable the compat vdso for cores
affected by ARM64_WORKAROUND_1418040
c1fbec4ac0d7 arm64: arch_timer: Allow an workaround descriptor to
disable compat vdso
97884ca8c292 arm64: Introduce a way to disable the 32bit vdso

AFAICT, the second one was missing, causing the build failure.
Do you know if that one needed a manual backport, or could you
try applying all three in sequence again?

      Arnd



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux