2017-12-21 11:33:50

by Arnd Bergmann

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

On Thu, Dec 21, 2017 at 12:06 PM, kernelci.org bot <[email protected]> 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


2017-12-21 14:49:24

by Greg Kroah-Hartman

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

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 <[email protected]> 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>")

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 :(

thanks,

greg k-h

2017-12-21 18:19:40

by Eduardo Valentin

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

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 <[email protected]> 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.
>
> thanks,
>
> greg k-h

--
All the best,
Eduardo Valentin

2017-12-22 08:37:25

by Greg Kroah-Hartman

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

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 <[email protected]> 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