On Wed, 2018-08-22 at 11:31 -0700, Nick Desaulniers wrote: > On Tue, Aug 21, 2018 at 9:32 PM Dominique Martinet > <asmad...@codewreck.org> wrote: > > > > Joe Perches wrote on Tue, Aug 21, 2018: > > > On Wed, 2018-08-22 at 06:16 +0200, Dominique Martinet wrote: > > > > I think that could work, but at the point making a separate > > > > compiler-common.h and not including compiler-gcc.h for clang sounds > > > > better to me... More importantly here, either solution sound complex > > > > enough to require more than a few days and proper testing for all archs > > > > etc when compared to the partial revert we have here. > > > > > > The immediate need for a partial revert seems unnecessary as > > > clang hasn't really worked for a couple releases now. > > > > Sorry for repeating myself, clang is used by bcc for compiling BPF > > programs (e.g. bpf_module_create_c_from_string() or any similar function > > will use the clang libs to compile the bpf program with linux headers), > > and this has always been working because it's not using our makefiles. > > > > This broke today in master and I only joined this thread after looking > > at why the build started failing today and noticing this patch, it > > definitely hasn't been broken for two releases, or I wouldn't be here > > with this timing :) > > > > > > > The separate compiler file changes are much more sensible, > > > even if it takes a few days. > > > > A few days are fine, but I think some form of fix in 4.19-rc1 would be > > good. > > > > I'll stop taking your time now, but I think you are/were underestimating > > how many people use clang with the linux kernel headers indirectly. > > BPF is a well-used tool :) > > Hi Dominique, > I'm currently testing a fix in > https://github.com/ClangBuiltLinux/linux/commit/1f89ae7622c26b8131f42f3a362d6ef41b88a595, > can you please share with me your steps to test/verify that the patch > fixes the issue for eBPF? I'll go talk to a co-worker who know more > about eBPF, but I've not yet done anything with it.
A mild suggestion about the patch would be to break it up into 2 patches to improve how people read and review them. 1 include/linux/compiler-* 2 everything else Yes, some kernel configs might not build properly between 1 and 2 but that likely doesn't matter as those configs probably don't build before 1 either. Perhaps the test in arch/arm/kernel/asm-offsets.c for incompatible gcc compiler versions from 4.8.0 to 4.8.2 should be moved to compiler-gcc.h. > Also, does anyone know who I should talk to about ICC testing? No clue