Re: stable-rc/linux-4.9.y build: 183 builds: 179 failed, 4 passed, 179 errors (v4.9.71-115-gd4b9c892aea4)

From: gregkh
Date: Fri Dec 22 2017 - 03:37:28 EST


On Thu, Dec 21, 2017 at 10:19:27AM -0800, Eduardo Valentin wrote:
> On Thu, Dec 21, 2017 at 03:49:20PM +0100, gregkh wrote:
> > On Thu, Dec 21, 2017 at 12:33:45PM +0100, Arnd Bergmann wrote:
> > > On Thu, Dec 21, 2017 at 12:06 PM, kernelci.org bot <bot@xxxxxxxxxxxx> wrote:
> > > > stable-rc/linux-4.9.y build: 183 builds: 179 failed, 4 passed, 179 errors (v4.9.71-115-gd4b9c892aea4)
> > > >
> > > > Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-4.9.y/kernel/v4.9.71-115-gd4b9c892aea4/
> > > >
> > > > Tree: stable-rc
> > > > Branch: linux-4.9.y
> > > > Git Describe: v4.9.71-115-gd4b9c892aea4
> > > > Git Commit: d4b9c892aea47e47ebc74e59533cef79f9ca30eb
> > > > Git URL: http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> > > > Built: 4 unique architectures
> > > >
> > > > Build Failures Detected:
> > > >
> > > > arm64: gcc version 5.3.1 20160412 (Linaro GCC 5.3-2016.05)
> > > >
> > > > allnoconfig: FAIL
> > > > defconfig: FAIL
> > > > tinyconfig: FAIL
> > > >
> > > > arm: gcc version 5.3.1 20160412 (Linaro GCC 5.3-2016.05)
> > > >
> > > > acs5k_defconfig: FAIL
> > > > acs5k_tiny_defconfig: FAIL
> > > > allnoconfig: FAIL
> > >
> > > > Errors summary:
> > > >
> > > > 179 include/linux/sched.h:1479:35: error: field 'arch' has incomplete type
> > >
> > > This comes from 09b09ab71840 ("mm, x86/mm: Make the batched unmap TLB flush
> > > API more generic"), backported from e73ad5ff2f76d upstream.
> > >
> > > My 10-second analysis suggests that we should backport
> > > dcc2dc45f7cf ("sched/headers, mm: Move 'struct tlbflush_unmap_batch' from
> > > <linux/sched.h> to <linux/mm_types_task.h>")
>
> Arnd,
>
> Yeah, I thought of picking that one but I decided not to mess around with
> where things are in v4.9, both in terms of data declaration and filenames,
> tried to keep as they look like in v4.9.
>
> >
> > Ugh, that's not a "straight" port at all, and will it really solve the
> > problem here? At first glance I don't see how, but I must be missing
> > something...
> >
> > Eduardo, any ideas here? It's blowing up on your backported patch :(
>
> Maybe amending the following hunk would be an easier fix
> given that the tlbflush_unmap_batch is only used within
> the CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH.
>
> diff --git a/include/linux/sched.h b/include/linux/sched.h
> index 74c8347..0856501 100644
> --- a/include/linux/sched.h
> +++ b/include/linux/sched.h
> @@ -1465,7 +1465,6 @@ enum perf_event_task_context {
>
> #ifdef CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH
> #include <asm/tlbbatch.h>
> -#endif
>
> /* Track pages that require TLB flushes */
> struct tlbflush_unmap_batch {
> @@ -1488,6 +1487,7 @@ struct tlbflush_unmap_batch {
> */
> bool writable;
> };
> +#endif
>
> struct task_struct {
> #ifdef CONFIG_THREAD_INFO_IN_TASK
>
>
> That (cross)compiles fine with multi_v7_defconfig.

For now I've dropped all of these patches from the 4.9-stable queue,
they need to be reworked as we discussed on another thread.

thanks,

greg k-h