From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2DE0EC7618E for ; Wed, 26 Apr 2023 18:11:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5D9056B0117; Wed, 26 Apr 2023 14:11:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 589006B0118; Wed, 26 Apr 2023 14:11:33 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 450BA6B0119; Wed, 26 Apr 2023 14:11:33 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 363C26B0117 for ; Wed, 26 Apr 2023 14:11:33 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 04657A02E2 for ; Wed, 26 Apr 2023 18:11:32 +0000 (UTC) X-FDA: 80724334866.10.48DD03A Received: from mail-ej1-f41.google.com (mail-ej1-f41.google.com [209.85.218.41]) by imf16.hostedemail.com (Postfix) with ESMTP id 0465B18001D for ; Wed, 26 Apr 2023 18:11:30 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=JIk06fFD; spf=pass (imf16.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.218.41 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682532691; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=emz2lWVV+R7IDYMbl3F7GGb15o68eHk4V8lZiXE9F0I=; b=xJsqoXnJwz0RMJg/ZDvxqcx3CsJYn5U+dmStzsMhfP+E3uZ7gmZnYTtoziPmzh4vp/GDh6 H/9NCoKg2guo3oYQ8OL84n0CncCRdOIYOYt5WMMSpPqJ5yubCDy+L1DQ1kWTU60hlUcjcG m5oaV1Diu3CNpv/Lu2xdyJEWa+bsCgI= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=JIk06fFD; spf=pass (imf16.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.218.41 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682532691; a=rsa-sha256; cv=none; b=dneGV10tRt/RDZUAz2wIbHpOPKy83CBLpL7lzfTNwrvPSj/ePaG8ioasO7LZzc0O2CxbqR rAB5xTQ7atj1FnvJUFeqL6c2PstXUR8B5Ynes7FGRMaaSYB/pnuyoQxjjq13UnRP/g82Oc WTuYUn3oZ2Z4j893WEj1wR35doUk4y8= Received: by mail-ej1-f41.google.com with SMTP id a640c23a62f3a-94a34a0b9e2so1101387766b.1 for ; Wed, 26 Apr 2023 11:11:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1682532689; x=1685124689; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=emz2lWVV+R7IDYMbl3F7GGb15o68eHk4V8lZiXE9F0I=; b=JIk06fFDX5QQr1JjweV7oXucAFe0Jax1E7iBQBKBxra+E+hZeRsvNZHY0rd1KTEe6l fl/sEh4oQ57S6MkbgBXSkZ9oFSxMZFxKvh3t/ZFS9dHq/7Yhzpt1/7Vt/vgIie6/SHHu MxR85hJA27Fr6NYOZZiBvz9VyDIKiFbWNPZXc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682532689; x=1685124689; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=emz2lWVV+R7IDYMbl3F7GGb15o68eHk4V8lZiXE9F0I=; b=MaztBDaK/KZSacrOq2F/cJoou8VRX7VVbyc7JZz6SFvQh97qBM7NK+CHDgXew45jPX hYTcmSGPqqlSNJN/BDGziyE09FAAmJxVafENQwP1w8e0v7QkRO5OXTRcR2V8zrFHGh2s vemzgD0acVoFa9v891yn3NDm543R10EBeQCU4m9d+pGE9PqTRIWIQL9e92Q/qHAp9Gqe EYjltNX/PMEFsZjUVAkZHW3hDIuaLj5y4yZGhiRv6Agul1JvwrjVlVuWWwo/70Y83s/k fJ+q1/i54lbXb+hGSVEVCsQI2CwIE6ML1OKbAHxpMzcoPg2Zx06ykfWVN1GoWoSJsd6s 3vyA== X-Gm-Message-State: AAQBX9cyaE9rbcA17EVMWGrpMu2MDo8b4UJ9CTsfqOc70IKG/hMIBZ5V F00ING1ErJNcC4YBLmx6wVm2cD2NuWjIrVfBAWwUCQ== X-Google-Smtp-Source: AKy350a4dZtr7rLsCmwzUUOaihUOEcUIEyMvrMu0cRGtctS3B2ts++kmNp+Z+h2HHsOHyURU5SLbkQ== X-Received: by 2002:a17:906:d217:b0:958:d1b3:758d with SMTP id w23-20020a170906d21700b00958d1b3758dmr12097195ejz.73.1682532688906; Wed, 26 Apr 2023 11:11:28 -0700 (PDT) Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com. [209.85.208.54]) by smtp.gmail.com with ESMTPSA id se20-20020a170907a39400b0095ef737dbd7sm1274291ejc.93.2023.04.26.11.11.27 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 26 Apr 2023 11:11:28 -0700 (PDT) Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-5083bd8e226so11507080a12.3 for ; Wed, 26 Apr 2023 11:11:27 -0700 (PDT) X-Received: by 2002:aa7:c316:0:b0:506:c1a6:2771 with SMTP id l22-20020aa7c316000000b00506c1a62771mr19994132edq.39.1682532687659; Wed, 26 Apr 2023 11:11:27 -0700 (PDT) MIME-Version: 1.0 References: <20230425041838.GA150312@mit.edu> In-Reply-To: From: Linus Torvalds Date: Wed, 26 Apr 2023 11:11:10 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [GIT PULL] ext4 changes for the 6.4 merge window To: Nick Desaulniers Cc: "Theodore Ts'o" , Nathan Chancellor , linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: zn6yw5buyo5ctjwfk4wqjq44dq4tgxg1 X-Rspam-User: X-Rspamd-Queue-Id: 0465B18001D X-Rspamd-Server: rspam06 X-HE-Tag: 1682532690-668063 X-HE-Meta: U2FsdGVkX19IdhXX1HuDw6tyN+Qn0oyCdOBM3kASExu2LdNd2VhrKFZsD8kJigoKw1LXHin018TjN3xgzFctOEIjcrS3p89AUuGs5rnLX+PWFFkCMi4JnkvmBT/284M6TMX9SC5MlikZQE7kRlADLXW04ikdSB4Xmxn6HxebpblpJZdw8AezE3DIbVisq2mWVixVAMms+i8WBWaHx9RZu2eEEm31WJ9iQN+WUmkLg2wCP4xuAhY2l4Ajys03J3Gc4wik8eU3zUtrJoiwzHxZ+iyGps3dXdzMK+j2Cagnszce3HCE6CEtcfxnKf3+LbrcLR2UUKKhh1lKYkLKUjMx5Zb0DFVrse4eDgMh7yK1pHHfabPlBs83ZmhTIKTpGCkbBr5Ofp87SZF1Eamx0AyK/rPksP9vwKa0Kh4AzxH7vmx0yxvx0nPMGsQ8AaT+msPas2bpOTjDalfw2juvL/PHCfhYsRZ4m1lQoFWBT49gjcLN6zhYWGHI1qwUoOSBQwCEW+f2dzAPID356UeE40mNME9jbtuN8o1Bx/Zjnm+Kc7P2sGdVXedFtE+ytDrNsw6GJaiZdwmv8QE45JAaIbFfwFuPtvkOHGJS7d1uwYy6rTsJNDwyy7UipV2QUlLco4eiRvRDxGLodFGFDNFUHjhx7jlnIlHLCs33PgOvBxym1ZhE9KDk3CRN66x9NXG69vS/XAMx2TzCorj+wx9UFatehX/HmUEwXbfiUwXIZbb8PL4H1umDneE25d0iJzODcn4g39wn0hXyFaDGAx79/P7v2vTolYwJOLF5SeCPFnlbIUgGtD9OuIE8vX9li4lstoo5xapWHTxHgD5ZnxT/L1EWVk9CymxqmONIrYPtbG8kDZEzmdzthQ+t3MwfIr7lwcZ4ruKc6HEDZjRFdR7JXQWFR0FYaRu3Uqvy1ivp4y8VgRLSzn8msHVdiHNyzw1JmGy24yVQKQ9PDndl9YUmsZm oOA/WiYK O/2Px1fUzKa0cn8kWFiHC03F1wVd1zqhzJugVl+uN0AU93YGra2CiE2l0gmebQpqSWmAvhzr9vgXKrzENfrwyIBL1HJFxyWlGT04j/ZP6kTgcRgpnzQFqRhS4B0XE54lQAD1bOgOtiRpLtRulRFaElFpZ4Mlzy/EaniIQ5sh3KjrQ2QNThTxEW9thIztVSGFE2xXBxQZl4dDszZ/szfanLiY3PFZsztTBioGtwuSuaxbnmkMgomD53RdflnG20PNrrtKKU8FAG515lPtNzgvaOlI94RhMefFkBqd5wznaXiE07Up2U5JRM1IWhQ7zgSIO7WNCkZPG2Pmil63E+vnuH1oL+oyBlGGIXVEpuGatdZAyx7/K8AWaQM7jaFGGvsXKX8/F/ymJnr5PFJYuvFkfq6ZmlecaiaP4Q7Z+r5ZlFJMZATovQlsENvosow7/vM3zd7byVTLqcaEcfhGu7gFTbDAVP71GNV0m4UEhVIe1KGc+Jr/tuC1cf9H7BH5dCdoDKSgXNLNtpHhvcyM= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Apr 26, 2023 at 10:34=E2=80=AFAM Nick Desaulniers wrote: > > That's what clang's _Nonnull attribute does (with -Wnullability-extension= ). No, that's a warning about using it, not a warning about testing for NULL when it's there. I actually tested _Nonnull. It seems to work for arguments. But it does not work for return values. Of course, maybe there's some other magic needed, but it does seem to be sadly not working for us. > But it's not toolchain portable, at the moment. Would require changes > to clang to use the GNU C __attribute__ syntax, too (which I'm not > against adding support for). No need for using the __attribute__ syntax at all, that would _not_ be a show-stopper. While it's true that it's the common syntax, and we sometimes use it explicitly because of that, it's by no means the only syntax, and we actually tend to try to have more legible wrappers around it. So, for example, we prefer using '__weak' instead of writing '__attribute__((__weak__))'. And no, it very much doesn't have to use __attibute__ at all. We already have things like #define __diag(s) _Pragma(__diag_str(GCC diagnostic s)) so we already use other syntaxes. End result: if it actually worked, I'd happily do something like #define __return_nonnull _Nonnull in , with then then just hav= ing #define __return_nonnull along with a big comment about how __attribute__((nonnull)) is horrible garbage that should never every be used. Linus