From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dmitry Vyukov Subject: Re: [PATCH 6/7] md/raid10, LLVM: get rid of variable length array Date: Fri, 24 Mar 2017 15:22:00 +0100 Message-ID: References: <20170317120837.pr74cv3xuj7qpoin@hirez.programming.kicks-ass.net> <20170317180350.63jjysejk2i6vkon@pd.tnic> <20170317185720.5s7qa6hl233t24ag@pd.tnic> <20170317192642.qnrf7xuopxzapl2r@hirez.programming.kicks-ass.net> <20170317192935.d5almj4brat6uvlt@hirez.programming.kicks-ass.net> <20170324141053.lte3qq7mfl6krlkb@hirez.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Cc: Borislav Petkov , Alexander Potapenko , Michael Davidson , Michal Marek , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Herbert Xu , "David S. Miller" , Shaohua Li , Matthias Kaehlcke , "x86@kernel.org" , "open list:KERNEL BUILD + fi..." , LKML , linux-crypto@vger.kernel.org, linux-raid@vger.kernel.org, kbuild-all@01.org, Fengguang Wu To: Peter Zijlstra Return-path: Received: from mail-vk0-f48.google.com ([209.85.213.48]:35385 "EHLO mail-vk0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936125AbdCXOWX (ORCPT ); Fri, 24 Mar 2017 10:22:23 -0400 Received: by mail-vk0-f48.google.com with SMTP id r69so4603294vke.2 for ; Fri, 24 Mar 2017 07:22:22 -0700 (PDT) In-Reply-To: <20170324141053.lte3qq7mfl6krlkb@hirez.programming.kicks-ass.net> Sender: linux-crypto-owner@vger.kernel.org List-ID: On Fri, Mar 24, 2017 at 3:10 PM, Peter Zijlstra wrote: > On Fri, Mar 24, 2017 at 02:50:24PM +0100, Dmitry Vyukov wrote: >> OK, I guess should not have referenced the llvm-linux page. >> So here are reasons on our side that I am ready to vouch: >> >> - clang make it possible to implement KMSAN (dynamic detection of >> uses of uninit memory) > > How does GCC make this impossible? Too complex and too difficult to implement correctly on all corner cases. All other sanitizers were ported to gcc very quickly, but msan wasn't. Nobody is brave enough to even approach it. >> - better code coverage for fuzzing > > How so? Why can't the same be achieved using GCC? Same reason. >> - why simpler and faster development (e.g. we can port our user-space >> hardening technologies -- CFI and SafeStack) > > That's just because you've already implemented this in clang, right? So > less work for you. Not because its impossible. I am not saying that it's impossible. It would just require unreasonable amount of time, and then perpetual maintenance to fix corner cases and regressions. For background: I implemented the current fuzzing coverage (KCOV) in gcc, and user-space tsan instrumentation in gcc.