From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756189AbdEGWAd convert rfc822-to-8bit (ORCPT ); Sun, 7 May 2017 18:00:33 -0400 Received: from terminus.zytor.com ([65.50.211.136]:58531 "EHLO mail.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753454AbdEGWA3 (ORCPT ); Sun, 7 May 2017 18:00:29 -0400 Date: Sun, 07 May 2017 08:42:52 -0700 User-Agent: K-9 Mail for Android In-Reply-To: <20170506081635.GE4626@worktop.programming.kicks-ass.net> References: <20170501224741.133938-1-mka@chromium.org> <20170505102555.ysjep3foplmhspux@hirez.programming.kicks-ass.net> <20170505175039.hf3jx4ljuyzzgxdn@gmail.com> <20170505184405.GB128305@google.com> <20170506081635.GE4626@worktop.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Subject: Re: [tip:x86/urgent] x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility To: Peter Zijlstra , Michael Davidson CC: Linus Torvalds , Matthias Kaehlcke , Ingo Molnar , Thomas Gleixner , grundler@chromium.org, Linux Kernel Mailing List , Greg Hackmann , Kees Cook , "linux-tip-commits@vger.kernel.org" From: hpa@zytor.com Message-ID: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On May 6, 2017 1:16:35 AM PDT, Peter Zijlstra wrote: >On Fri, May 05, 2017 at 01:36:34PM -0700, Michael Davidson wrote: > >> 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 the other point I raised is lack of asm goto (and asm flags output). > >Without that our static key infrastructure reverts to runtime branches >and affects performance. > >> 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". > >Reading up on the LLVM thread on asm goto they appear to want to >provide >an intrinsic to allow doing the patchable branch thing. That would be >fairly limiting, and the proposal I've seen doesn't even cover the two >(or rather 4) states of patchable branches we have in the kernel. > >Not to mention that such an intrinsic doesn't even begin to cover all >the other (perhaps creative) uses we have got asm goto used. > >But my main point is that we'd have to rewrite and maintain _two_ >versions of the static key infrastructure if we were to support LLVM's >intrinsic and the GCC asm goto. That is a very undesirable place to be. > >So while they'll say they support the feature, I'll say its worthless >since I'm not inclined to support their variant of it. As is, I'm not >getting the feeling the LLVM team really cares about Linux. This has been a common problem with LLVM: they say that they will provide feature compatibility with gcc, but then they say this or that gcc extension "doesn't make sense" and is something they don't want to support. -- Sent from my Android device with K-9 Mail. Please excuse my brevity.