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 40C08C83F1B for ; Thu, 10 Jul 2025 15:52:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D6B446B00A7; Thu, 10 Jul 2025 11:52:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D418D8D0001; Thu, 10 Jul 2025 11:52:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C574E6B00A9; Thu, 10 Jul 2025 11:52:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id B51976B00A7 for ; Thu, 10 Jul 2025 11:52:36 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 6E681BA2C3 for ; Thu, 10 Jul 2025 15:52:36 +0000 (UTC) X-FDA: 83648797512.25.5ACF4AF Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) by imf03.hostedemail.com (Postfix) with ESMTP id 306EC20009 for ; Thu, 10 Jul 2025 15:52:33 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=KYmN+TvP; spf=pass (imf03.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.218.53 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=1752162754; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=DCLKwFa0neCTBla2iQUvszaIW/YcUeww7BNmMA0A/10=; b=4sD4QBcGoeBJNZfJi1tGJZ3J2EHTkKmFdHNOeEXTgosQ58fTBRLpsWtJ0zGFBi7Lsdj2Dq /66BNWzwCVc+6Vh2Bgar/3AX2/wh5FIm1QkUB4SjNoW5zen0N64w0lg322DZYOkFklGXrC t+kfG36QGi9rXrZNQG6gdkjLl4XD23E= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=KYmN+TvP; spf=pass (imf03.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.218.53 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752162754; a=rsa-sha256; cv=none; b=lwD+5ljz5cQzsKWNy76+sBmYY79P33qnUoYbXpAwCV+DQAllhlrwAXIL0aepkJWq2m8KGb j3oVEZ2xnGUZt+vHv0fJ6l6p0pRAXAmnZql2iOGhgv9sIXfpziEzOCXcI7uGbD8s6+nJfz WTr6nf77dA6PO5F/PiCV2zK5pYut32E= Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ae3b336e936so209776266b.3 for ; Thu, 10 Jul 2025 08:52:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1752162752; x=1752767552; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=DCLKwFa0neCTBla2iQUvszaIW/YcUeww7BNmMA0A/10=; b=KYmN+TvPuPOUFUUB97T5zfwjtYJB5t3hyAA4C1Czb4QslgxSjJkA87dGOZspxS+MtN A6OmUgU1yHv6yxjimpeVkfZCjzK3JMJ2rMwEmBFshbX+A+F6Gpqm1ea5W5h2xaJFvnI6 H/cMaqVGvZR1OAONf/VJBurnZXrm/U0T1hYbM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752162752; x=1752767552; h=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=DCLKwFa0neCTBla2iQUvszaIW/YcUeww7BNmMA0A/10=; b=Xy80gH/MKIPN5pumRkyA92ms8abjVzCjg+PJ7k2d+9VyvCk0Lsj5Ye0S3HZliFMvIw KTG/j2pPNMyUrQv0vVRuxy2GcLjCQaURKshWZNDIxY0PVMMRhTRtucRXBYSdbPjovXWJ QMZcSPZDYtbEMCnjFFKHaudkEUARVRJJ4Lg5wFOBqrmvGtAAYJwDszSMN2D9QpWEBEj2 9ol8FCsiKuzcXdmU3Vfz869tTfhivaDY0gBhLUtE6raFJyVB22bQYs9wfHDn1hhVGTpO qgY4PTQWzXyNC53pFtGiYmwxbtl5zosilmCvDup2qeKfuFl+vfZq8/ORlT6ZH6p4mgDH vLRw== X-Gm-Message-State: AOJu0YxPxi0ayIP9ly+Bd0atnm2gh3tGLLhjEx5v9tc1equoR+DwnARt r9PwLQvcAZ4IIBbDYXH3/rbV4VOGYQ54h9IJhpMQPU7TDqjz2aHAi3Jm0lgbdfxcKPB9AFwFMp/ 5E1hUWfM= X-Gm-Gg: ASbGncvhoZG3F5/nqxze8nkff4TwqwKOc98LJrdnXxYrrgr8jj2HH9xEk7Rg3fhTBXe x5IDkJViez0G7/YGpX80mcujYx2FAjcdRf8BA+fI8IejaKP2RDtc8X/G7yivvPpUP2nEjgzwzC3 uATkXKbKabGG2JJCCbGhCD2h8HGT/ClEssJHByxkZI6EDQDD9RmL5eP6OnapXtdP1Z9BUUQepHO FNwB292HgPFiaRNRZwIfurYFCT11Mj4ecCsD5St4TYgWs9i0y1gFZxshxy3j6ZsWT6/kmVLs/g1 xGVSbEJSaoJ+lSAa/lytKVtzTcJOKiH+k/NIlApyZCMx0r2bdZYXgHaaKeP8M2IVl0wNX3ymUoV j1NfC7cOrLjQLwpo+FUZJvYSmT2ZzjFaWy5SvFJ9RBLREJeY3JAjVzC2YsNEbFV6D/B+D1dIr X-Google-Smtp-Source: AGHT+IFhiAbEXCHAkBsAM62Y7m8IpCRPEBZnHrzd4I7liBKltYbVgShZ3+VgIQP1uzMjQCAJLjTZig== X-Received: by 2002:a17:907:c811:b0:ae3:7058:7b48 with SMTP id a640c23a62f3a-ae6e6f0057cmr340013366b.25.1752162752037; Thu, 10 Jul 2025 08:52:32 -0700 (PDT) Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com. [209.85.208.43]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ae6e7ee45absm150743166b.48.2025.07.10.08.52.31 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 10 Jul 2025 08:52:31 -0700 (PDT) Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-60bf5a08729so2024980a12.0 for ; Thu, 10 Jul 2025 08:52:31 -0700 (PDT) X-Received: by 2002:a50:9e0a:0:b0:605:878:3553 with SMTP id 4fb4d7f45d1cf-611c8507641mr2264146a12.16.1752162750681; Thu, 10 Jul 2025 08:52:30 -0700 (PDT) MIME-Version: 1.0 References: <0314948eb22524d8938fab645052840eb0c20cfa.1752113247.git.alx@kernel.org> In-Reply-To: <0314948eb22524d8938fab645052840eb0c20cfa.1752113247.git.alx@kernel.org> From: Linus Torvalds Date: Thu, 10 Jul 2025 08:52:13 -0700 X-Gmail-Original-Message-ID: X-Gm-Features: Ac12FXyZN9kxQm0HXniuJ3TdAUc1hQKzCbrnbibn7oPEnjnUTOgpa2jjfvxQ0Ho Message-ID: Subject: Re: [RFC v4 6/7] sprintf: Add [V]SPRINTF_END() To: Alejandro Colomar Cc: linux-mm@kvack.org, linux-hardening@vger.kernel.org, Kees Cook , Christopher Bazley , shadow <~hallyn/shadow@lists.sr.ht>, linux-kernel@vger.kernel.org, Andrew Morton , kasan-dev@googlegroups.com, Dmitry Vyukov , Alexander Potapenko , Marco Elver , Christoph Lameter , David Rientjes , Vlastimil Babka , Roman Gushchin , Harry Yoo , Andrew Clayton , Rasmus Villemoes , Michal Hocko , Al Viro Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Queue-Id: 306EC20009 X-Rspamd-Server: rspam09 X-Stat-Signature: 9b9cj5gep4ppu79uo1hihwpumcc9frd4 X-HE-Tag: 1752162753-162635 X-HE-Meta: U2FsdGVkX1+fEfd2V3BG+lNT9ELG7SVOw44K+nOlKAXWoKBjDpugo6EYp5Sqi6u7W5CBW3l1YzId/9AWvJzPd4Sl+Xd3Fd0MQEMyJTUzX5UEp2bWTI585oY6QhMBb3Z6yKmLmy7euMty5fP3MAxaX11c3UY3abZ/A33rqWTzfF4+DZ5WGeX+jDYcVPsfxN5ri5R5/Vu2APY1tbIpqifCmn2J+swKYZHdbqrMun+fw8Bui8nA3m0+doq/jma20HOBA+ibbjl6S2EGww8RgX2IZdqIjTzqKcm3I/QNPF+s/7m1HKGMUw2VL8fukbqg+0cFIJsefQw9olUcIt17xD6HfBgolEFi7WrRqTnE/IzvPjTqTagGjlAKlhj/811v83vWTZ1aMDpYXTzj8bJ8KwhJ5nbVgvm4cysrt+xrxF5wqyi0hedPU/9H0y9oyo40JJjdHm6wLKbQtNF3u/I7vxqDJTEY9uKIEj+D17kWcRiLEkXRa4KU08FKRUOaNe4/0/efLpBiQHefI/KODwBDR6X3oAoY8kMc8uATmPWeXK2KA/GX8YBf463bkvEjz3mrcXDs+rRDExEjR1Auj6lY+JVmIUVzNhT6b7t5B5eRloFDXcdYdg1W3QWzZKKerC9wr50aQZ+9JdnensPRzxQ+yT3LzMYz140LVSuy1v1EDBZyMjin77jekOvBch3iKlIUaNFw4lFRp2HVKUsvE5IWlsbjlFUT221pgHA3LN+1Yb1Pt4tT9tJX1oE9n85NToGIPeR8iMiP1HzJANY/iYt4tmQaXpp3+KZReaIDsZqTLmmFzo0mT26V/FWZuXPRjFv1DeEaohKKopXnwsU6EpEAB5opWHvo8vN90IsZ5xdkx+b9q9qp4s3q2AY2AdQCf8+az+slRaVuPYPPFtrs7I5hFjugcbVaZrV5gp58lkb1kQdEwakU0zArt3/RJjgHevItmJZ7RapwMofOVASZCFuxzmD ZMJtyrkX Da08LVCgEK5giR+nUQLcyMsU3xSSqRS8QnqTUN031K//tmkjAgdMotM4n5TMU1oMTnRdBt/9UIRCxq0UIZogYQSaSDmDyig9tvf0FWZkGqpceqhGGA5PRTYExMTHO2NLtFsYWPdWlG3oH0Q7q5UfCQBGPpypp52gX4ybn3nEw1FuTcm2fhcJuabi4RZlA/4+zAoQ3ao1I3IrZ4E7cxrplA3V3qkIbNnFFBzLdzPqEPaOsPGEXHH7DEwylNH/ejh6u5ifFUNg6Ew3olD3q6iPdCR677oTRnpcuNK5f/Yk/r1kfq+DF3v3FZ4OcKV0yvVKdtpL6PzR7Cnq9VCMXeZjO+/JHyjfYuTJvodz5AsFJN6Zf+DJz/cxa2CiElLrf9zia8jbBrZ06eA1GId2d20Y49xRw17+qVuQ3CHOuV98HDJDy9zIxJs4MqXp8bfG1OIrXnnhAnPI693bXsBlelPKw65xMxpG0KfTLyLdk4gRHj9nKfhXud+KeTGqyUJauEydmd6ORVPZ6WtqKMHypJoLBHafgeyyhsfKr8af68ghg2Knm+4BehqWFyk3vt6XRb4WiG0X5ZhXIG/RMB1bghN6dLcsxKjd2slfmxn5RTQG8Vmv+P0A= 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: List-Subscribe: List-Unsubscribe: On Wed, 9 Jul 2025 at 19:49, Alejandro Colomar wrote: > > +#define SPRINTF_END(a, fmt, ...) sprintf_end(a, ENDOF(a), fmt, ##__VA_ARGS__) > +#define VSPRINTF_END(a, fmt, ap) vsprintf_end(a, ENDOF(a), fmt, ap) So I like vsprintf_end() more as a name ("like more" not being "I love it", but at least it makes me think it's a bit more self-explanatory). But I don't love screaming macros. They historically scream because they are unsafe, but they shouldn't be unsafe in the first place. And I don't think those [V]SPRINTF_END() and ENDOF() macros are unsafe - they use our ARRAY_SIZE() macro which does not evaluate the argument, only the type, and is safe to use. So honestly, this interface looks easy to use, but the screaming must stop. And none of this has *anything* to do with "end" in this form anyway. IOW, why isn't this just #define sprintf_array(a,...) snprintf(a, ARRAY_SIZE(a), __VA_ARGS__) which is simpler and more direct, doesn't use the "end" version that is pointless (it's _literally_ about the size of the array, so 'snprintf' is the right thing to use), doesn't scream, and has a rather self-explanatory name. Naming matters. Linus