Received: by 2002:a05:6358:1087:b0:cb:c9d3:cd90 with SMTP id j7csp1131172rwi; Thu, 13 Oct 2022 09:25:22 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5oEebjmxFFqDaM+SrOFbWUzvpwuGth7AxCcRhdB1lmlswWky3/joqitczYiCJ8FUEBOeDm X-Received: by 2002:a17:902:e982:b0:17f:ca1f:aa44 with SMTP id f2-20020a170902e98200b0017fca1faa44mr495398plb.76.1665678322688; Thu, 13 Oct 2022 09:25:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1665678322; cv=none; d=google.com; s=arc-20160816; b=vlRtH+rflK3k6zML/rNUHRCHRwHCBeWX1q7El14JcFYlxRzIuqjLhUbyzNHizFGMaL rRxTTPz1p5HnFvwyOxpzEiGbSXje6IB8pI2VvR6WRrzXZLGPWbN8WQmDxQhcbTGkugjh /onJuy2ILRJCKO6ou3pMWVptZZCdlaIT8YQPALqNDUqGOp3uw2uV58DB+iWxdVaL2w0B boM4G0xcGDw9vP4QGhJ+RIeo7si/l7FStY2MrnWiJDXtdW4DmcII1gi1mOkKWn4s7bnj 07UMblJWMK6852P6sdwTlgTIToAeABHd5KRTyLNf6n1qP6YNiyMHGGFuv3dNWsuREtQe rAOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=HxhNFRACY2143UzDT1xYH/KC9tgFT5Rp1KlwUxCn/RY=; b=N+UNVUFcj4VmmFd7879i7Fb8ag554qzjvvHfHaGp0I8le+NzywgsGOef4I8ZWNs9YS bwoCRK3Tjz+O2cyv7cVHLpUy8kCFhlszwf7iM8A9Jyt0znW9cBsp4GXDwtOsM31uCyuT xEk2zWpiN/133fWK0U71SnGJrRenHUNr1G+kX2mFec5rsimJUInkoen0TRN1Gp1v2Udk KdIrokQ4RpTSc/rm2xdR08Fj9gFqaq3TqTdWh1LoUpQjT+/v3DNl8w8GSUrhsUTiobOy m2uE686L+DaU1pp63cWuYVU/x8VS1G32wGKsZ+q+caozMrYxam6gungDLgjwsC5V6TV1 Efug== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h62-20020a638341000000b0046aff26fe6dsi2801391pge.498.2022.10.13.09.25.09; Thu, 13 Oct 2022 09:25:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229633AbiJMQSa (ORCPT + 99 others); Thu, 13 Oct 2022 12:18:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49758 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229614AbiJMQS1 (ORCPT ); Thu, 13 Oct 2022 12:18:27 -0400 Received: from 1wt.eu (wtarreau.pck.nerim.net [62.212.114.60]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id AE0C0D0396; Thu, 13 Oct 2022 09:18:25 -0700 (PDT) Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id 29DGID8o018795; Thu, 13 Oct 2022 18:18:13 +0200 Date: Thu, 13 Oct 2022 18:18:13 +0200 From: Willy Tarreau To: "Jason A. Donenfeld" Cc: Mark Brown , linux-toolchains@vger.kernel.org, Linux Kbuild mailing list , LKML Subject: Re: gcc 5 & 6 & others already out of date? Message-ID: <20221013161813.GI16609@1wt.eu> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS, SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Jason, On Thu, Oct 13, 2022 at 09:23:36AM -0600, Jason A. Donenfeld wrote: > On Thu, Oct 13, 2022 at 01:59:52PM +0100, Mark Brown wrote: > The thing is, do we really want to be catering to this? In the first > place, enterprise users and enterprise kernels are already doing freaky > things, forked to no end. It's important not to confuse enterprise users and enterprise distros. The users are precisely not forking things to death, they're using solely what they're being fed by the distro (and possibly other vendors). > But moreover, do we actually want to support > people building the kernel with a different compiler than most of us > develop with? In a basic way, that just seems like a recipe for > disaster. I think it's important to make *reasonable efforts* for this, yes. For example at work we're building appliances for which we test and validate working combinations of gcc+binutils+glibc+kernel, and once we've found a sane working combination that doesn't break userspace too much, we stick to it and we use it for both kernel AND userland. I must confess that having had to upgrade the toolchain in the past *only* for the kernel was annoying. It's never wasted since it forces to do some of the update work, and there could be pretty valid reasons for this. However being forced to patch userland code to please gcc just because kernel developers decided to switch again based on what their distro ship is a needless pain. Another thing, kernels can take time to build, and people do setup some distributed toolchains. You may remember the presentation of my build farm at Kernel Recipes. Once you've spent quite some time on canadian cross builds and your setup is fine, you cross fingers for it to last as long as possible. And typically when I worked on the floppy fixes a few years ago that was when my compiler stopped being supported. I started by spending several week-ends trying to update my setup before going back to real work. Again I know that sometimes this is need and it was my task to devote some time to this. But let's not have to do this too often unless really needed. Usually it's considered fair to drop support for a compiler when the build issues that pop up are too difficult to fix, and/or when they require quite some work and you figure that if nobody complained for a long time it definitely means nobody's using it anymore. But even on personal projects I continue to support older compilers because once in a while someone asks me if I can help them build on $RANDOM_OLD_SYSTEM, and I figured that the diversity provided by exotic environments sometimes uncover interesting issues. So I'd really suggest to stick to the good old "as long as it works and doesn't involve unreasonable effort, let's consider it still works". > Plus, as I mentioned earlier, this is already the model we're going > toward by virtue of Rust (and to a small extent, Clang) invading. That's also the model where people routinely do: $ curl github.com/blah | sudo sh that makes everything very hardly reproducible and is not necessarily a good approach all the time. It might be reasonable to reduce the compiler spectrum a bit but losing users on the way and making it more painful to them to occasionally test a kernel is neither nice nor profitable to get reports. I do still remember the days where one needed to build a kernel using kgcc because the distro's one didn't work, and quite frankly, that was a total mess and it did discourage quite a few people I knew. Just my two cents, Willy