Received: by 2002:a05:6a10:eb17:0:0:0:0 with SMTP id hx23csp1549112pxb; Sat, 4 Sep 2021 13:27:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxNKRRyCKjguk8jENoyEwPjo7b0AHj4iP8Ky6Rc0u6tAw87YtWAVjE+16cwtAXE+v49YuOS X-Received: by 2002:a05:6638:1352:: with SMTP id u18mr1500127jad.147.1630787223412; Sat, 04 Sep 2021 13:27:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630787223; cv=none; d=google.com; s=arc-20160816; b=YnRDyemY/eVBanfvFNnk+BKGIYTMhfHTG7aVXFEYniAgU7wjOxShD1C590iFgphIIp w++aXlcIrDYRaklgsgGTGe+sUhPR2rC4eMqfLk9RCKax0IIhKiuO0QUwVKlsK5+kIQg4 FLVQa003dLh/kB2UH23OQ9NPkROBU4Pe3LnECr9ThDMtFClWxWarxL2qxR6LmdJ9nlv5 y6Zx/Vu05n7S4A+k6K+l0t12OmYCxbeud2t8RH829nLOwEHfg4i0cZoew85Nj3mmsvLC XDztqX17o+g/hpyfRyqdCoRxSY2ibq4mE8PiDiEIttR6oqfwmdLEoei6BiQX/7MRJkiU en7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=mJYg48y01Ixecv219BnfLeDPB5wbBC3ssZt6PfPcF54=; b=e1PMEwDuVrcmVrijoXJH1HjxRnlXjmVMSk32U+lTpDduYGuNIEGx7pmJ6/sPcqJCRZ t3i/ZUMyAIHcG6A4Dmkvcw2oeG90sncPGaqNKciYVKA8YqU2D3IWt/+8llF9e//rFcsT RRbimrZoDAdiCmEg0IQt5WCSUIvlqaxv0mdJN9Za4oePXRZLO2E6zQqqLuaiLtzkoSOe qEpy+COFLqvPpzFrm84mHRuT1mIhvZnIxolHdHXEamI0vzzsXWqXLy0kRtc5i+zZcLOI Taw6kxeFNZieiOum/UtGcPGZLNI63Xqnt4D3igrmXd3NUYVrQvTzFgFqs40zbebfFKwh ehWQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=google header.b=KbVKhyqG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z26si2690449ioc.55.2021.09.04.13.26.36; Sat, 04 Sep 2021 13:27:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=google header.b=KbVKhyqG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232891AbhIDUAN (ORCPT + 99 others); Sat, 4 Sep 2021 16:00:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35672 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231736AbhIDUAM (ORCPT ); Sat, 4 Sep 2021 16:00:12 -0400 Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com [IPv6:2a00:1450:4864:20::12b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 993C1C0613C1 for ; Sat, 4 Sep 2021 12:59:10 -0700 (PDT) Received: by mail-lf1-x12b.google.com with SMTP id x27so5252120lfu.5 for ; Sat, 04 Sep 2021 12:59:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=mJYg48y01Ixecv219BnfLeDPB5wbBC3ssZt6PfPcF54=; b=KbVKhyqGoTFA9+zvg9VyF1GK8M2l3z5EQv1RyW4PNlggVQQx/3hGyV9qhYUJcjiXE6 ldRXmnMnFC39k8SWW6iJn/73m4GacJAiONs8EAQ8qrTaVb/4o8e0QiL3JRkFfgcoY7eU jdfrz7quMmpAM5dB0E6H19QJ3K5eI+9VVohSo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=mJYg48y01Ixecv219BnfLeDPB5wbBC3ssZt6PfPcF54=; b=c9AhZNJ209PRW0hNTcLCLStTn9jXQg9P36DTjzkrOpOy4j7R21BEgIUJPf/FUocoMM dBQB2s1yDKi05n8bnSiDHyHthkMhd7/SZv/m5GWOfJjKWev9F3KECtua6i2/dJ0MWU4C el9cC+dCEiUZqmEsYsf58EA8j6cy8OFg9QJlEYO8GoawMvhv2dCSs3V0hXPREtqBIAUd X2wQR8bDqhqYggEGNzeuDyH84C0NN306NyJfp4/J8xkjHstH0ZiV/Npe+2jOtIdz5p0N fX/c7kcjq008fYT0TVTG4BMXeGsLo6+Im0Gu/iMVTuS9sORwT+js28ETZRjHpbY3yEM3 StGA== X-Gm-Message-State: AOAM530hrjz8wBXKp2P3F2SNUjKPSZnStpS0AZQkZlL4zcFw0ImgpzZM A0ddgfaxzmzbXVIK2ZBF5Dt5AN7pi6JCkuRL X-Received: by 2002:a05:6512:a85:: with SMTP id m5mr3997674lfu.610.1630785547856; Sat, 04 Sep 2021 12:59:07 -0700 (PDT) Received: from mail-lf1-f50.google.com (mail-lf1-f50.google.com. [209.85.167.50]) by smtp.gmail.com with ESMTPSA id 3sm346262ljq.136.2021.09.04.12.59.06 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 04 Sep 2021 12:59:07 -0700 (PDT) Received: by mail-lf1-f50.google.com with SMTP id m28so5249561lfj.6 for ; Sat, 04 Sep 2021 12:59:06 -0700 (PDT) X-Received: by 2002:a05:6512:3da5:: with SMTP id k37mr3993613lfv.655.1630785546572; Sat, 04 Sep 2021 12:59:06 -0700 (PDT) MIME-Version: 1.0 References: <3b461878-a4a0-2f84-e177-9daf8fe285e7@kernel.org> <878s0c4vng.fsf@oldenburg.str.redhat.com> <20210904131911.GP1583@gate.crashing.org> <871r644bd2.fsf@oldenburg.str.redhat.com> <20210904191531.GS1583@gate.crashing.org> In-Reply-To: <20210904191531.GS1583@gate.crashing.org> From: Linus Torvalds Date: Sat, 4 Sep 2021 12:58:50 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [GIT PULL v2] Kbuild updates for v5.15-rc1 To: Segher Boessenkool Cc: Florian Weimer , Nathan Chancellor , Masahiro Yamada , Nick Desaulniers , Linux Kbuild mailing list , Linux Kernel Mailing List , clang-built-linux , llvm@lists.linux.dev, linux-toolchains@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Sep 4, 2021 at 12:18 PM Segher Boessenkool wrote: > > And the C standard requires you to use these headers to use some > features of the C language That's really the point here: we don't care AT ALL. The C standard headers are simply not relevant for the kernel. Never have been, never will be. We care about the low-level compiler infrastructure, not the standard C headers. Those standards are designed for - and try to cater to - a completely different audience. We do atomics, and we do not care at all about the mis-designed C++ standard atomics. We do our own type system, and again, we don't care at all about the C "official" type system and odd name rules that change from one version to the other. That has always been the case. We generally *cannot* use the system header files, because they bring in things that the kernel simply cannot handle. That's entirely obvious for things like , but it's actually true even for other things. > You also need and . No, you really don't. We avoid those intentionally, and always have. Because the system header files have never been a good match. Now, is actually special for the kernel, exactly because unlike other header files, that one really ended up being something that historically wasn't exposed in any other way and wasn't doable sanely inside the kernel. But it does look like gcc and clang have both ended up exposing the interfaces the same way, using the __buildin_xyz model to just wrap the standard names in a namespace-clean way. That really wasn't historically true. Back in the bad old days of varargs etc, you literally had "va_list" be a "char *" and the accessor functions were magic macros that updated things by hand by the size of the arguments etc... So is historically very very special, and tied to compiler implementation details. In ways that a lot of other "standard C header files" very much are *not* - many of those are about the types that the system provides. And in fact often the kernel is the *source* and definition of parts of them. Linus