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