Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1636721

Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility

From Michael Davidson <md@google.com>
Newsgroups linux.kernel
Subject Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility
Date 2017-05-05 22:40 +0200
Message-ID <tDSb8-6HT-7@gated-at.bofh.it> (permalink)
References (1 earlier) <tDGMF-7Ep-5@gated-at.bofh.it> <tDIEN-s5-1@gated-at.bofh.it> <tDPGi-4Wu-9@gated-at.bofh.it> <tDQsF-5uu-7@gated-at.bofh.it> <tDRf4-63i-27@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, May 5, 2017 at 12:30 PM, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Fri, May 5, 2017 at 11:44 AM, Matthias Kaehlcke <mka@chromium.org> wrote:
>>
>> Indeed, I expect 4.12 (with this patch ...) to build with Clang for a
>> x86 defconfig (with tons of warnings). ARM64 is very close.
>
> Does it actually *work*, rather than just build?
>

Yes, it does work.

I have been using clang to build and run various 4.x based versions of
Linux on both x86_64 and powerpc for over 6 months now.

Assuming that you have a wrapper for clang that sets a few options and
disables some warnings there really is very little else that is
needed.

powerpc currently only needs a single patch to the arch Makefile to
add a cc-option check to a gcc specific flag.

x86_64 needs the change that was under discussion here, but is still
blocked by issues with building the 16 bit boot code.
Supposedly this has now been fixed in clang, but I have not yet either
seen or tried a version of the compiler with that fix.

arm64 looks like it is also now very close.

There are a few lingering places in the kernel which use variable
length arrays in structs (eg the raid10 driver) which don't build with
clang and that is about it.

So, while I completely understand the resistance to adding arbitrary
hacks to the kernel just to support another compiler it is important
to also understand just how close things are to "just working".

md

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2] x86/mm/kaslr: Use _ASM_MUL macro for multiplication Matthias Kaehlcke <mka@chromium.org> - 2017-05-02 00:50 +0200
  Re: [PATCH v2] x86/mm/kaslr: Use _ASM_MUL macro for multiplication Kees Cook <keescook@chromium.org> - 2017-05-02 04:10 +0200
  [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility tip-bot for Matthias Kaehlcke <tipbot@zytor.com> - 2017-05-05 10:30 +0200
    Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Peter Zijlstra <peterz@infradead.org> - 2017-05-05 12:30 +0200
      Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Ingo Molnar <mingo@kernel.org> - 2017-05-05 20:00 +0200
        Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Peter Zijlstra <peterz@infradead.org> - 2017-05-05 20:30 +0200
        Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Matthias Kaehlcke <mka@chromium.org> - 2017-05-05 20:50 +0200
          Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Linus Torvalds <torvalds@linux-foundation.org> - 2017-05-05 21:40 +0200
            Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Michael Davidson <md@google.com> - 2017-05-05 22:40 +0200
              Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Peter Zijlstra <peterz@infradead.org> - 2017-05-06 10:20 +0200
                Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility hpa@zytor.com - 2017-05-08 00:10 +0200
            Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Matthias Kaehlcke <mka@chromium.org> - 2017-05-05 23:00 +0200
              Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Ingo Molnar <mingo@kernel.org> - 2017-05-06 12:00 +0200
          Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility hpa@zytor.com - 2017-05-05 22:00 +0200
            Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for  multiplication to work around Clang incompatibility Matthias Kaehlcke <mka@chromium.org> - 2017-05-05 23:30 +0200

csiph-web