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 6C9E1C25B78 for ; Tue, 4 Jun 2024 15:53:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9D4A46B0082; Tue, 4 Jun 2024 11:53:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 95DF16B0089; Tue, 4 Jun 2024 11:53:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7889C6B008A; Tue, 4 Jun 2024 11:53:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 5C1FC6B0082 for ; Tue, 4 Jun 2024 11:53:29 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id D2DAE160794 for ; Tue, 4 Jun 2024 15:53:28 +0000 (UTC) X-FDA: 82193650896.04.2930095 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf28.hostedemail.com (Postfix) with ESMTP id 12538C0018 for ; Tue, 4 Jun 2024 15:53:26 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf28.hostedemail.com: domain of "SRS0=dfpp=NG=goodmis.org=rostedt@kernel.org" designates 139.178.84.217 as permitted sender) smtp.mailfrom="SRS0=dfpp=NG=goodmis.org=rostedt@kernel.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717516407; 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; bh=2fi35N2KF3sgT8VBVY7bMWYyA81LAoTv86Jf4wATRo8=; b=2S31EzNdQplzu2rRysER0jE5JKdQ2n/CqXNdrQWTpw0wD0hT5UT2FTWsgDs4AXxI+bhpnW Dfp4UTTQ1se+0S7PamFiHcN8/CaQRd6RQo8Ysyf5K/NEBM+SQiiaLHJLcMoo5rFPb1Q1IL rLLIszAqOq8bPOeiEZ3xUemTsen6RcU= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf28.hostedemail.com: domain of "SRS0=dfpp=NG=goodmis.org=rostedt@kernel.org" designates 139.178.84.217 as permitted sender) smtp.mailfrom="SRS0=dfpp=NG=goodmis.org=rostedt@kernel.org" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717516407; a=rsa-sha256; cv=none; b=U79pU62Z7Bo8wubmFzyHfaTXyfP40blrh6CPk/yVsgPoIeRQt8FEFx1jWQJ3WEvNZIw+Jj VHq8U5wkaTfpZMEiiOFXCGuB5pKUl3Dlo7/O3SsJh0aFSvJJqcXAz8B0552NYjwwQfYr70 NfgydYI3cOrPB9VjGUaeQfD0a1I60tY= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 861B76134E; Tue, 4 Jun 2024 15:53:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D41BC2BBFC; Tue, 4 Jun 2024 15:52:38 +0000 (UTC) Date: Tue, 4 Jun 2024 11:52:35 -0400 From: Steven Rostedt To: Jani Nikula Cc: Andy Shevchenko , "Rafael J. Wysocki" , Greg Kroah-Hartman , Corey Minyard , Allen Pais , Sebastian Reichel , Perry Yuan , Giovanni Cabiddu , Herbert Xu , Nuno Sa , Guenter Roeck , Randy Dunlap , Andi Shyti , Heiner Kallweit , Lee Jones , Samuel Holland , Elad Nachman , Arseniy Krasnov , Johannes Berg , Gregory Greenman , Benjamin Berg , Bjorn Helgaas , Robert Richter , Vinod Koul , Chunfeng Yun , Linus Walleij , Hans de Goede , Ilpo =?UTF-8?B?SsOkcnZpbmVu?= , Nikita Kravets , Jiri Slaby , Srinivas Pandruvada , Stanley Chang , Heikki Krogerus , Abdel Alkuor , Kent Overstreet , Eric Biggers , Kees Cook , Ingo Molnar , Daniel Bristot de Oliveira , Andrew Morton , Hugh Dickins , Abel Wu , John Johansen , Mimi Zohar , Stefan Berger , Roberto Sassu , Eric Snowberg , Takashi Iwai , Takashi Sakamoto , Jiapeng Chong , Mark Brown , Kuninori Morimoto , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-crypto@vger.kernel.org, linux-acpi@vger.kernel.org, linux-ide@vger.kernel.org, openipmi-developer@lists.sourceforge.net, linux-clk@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-tegra@vger.kernel.org, linux-pm@vger.kernel.org, qat-linux@intel.com, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org, nouveau@lists.freedesktop.org, linux-hwmon@vger.kernel.org, linux-i2c@vger.kernel.org, linux-leds@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-omap@vger.kernel.org, linux-mmc@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, linux-pci@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-phy@lists.infradead.org, linux-gpio@vger.kernel.org, platform-driver-x86@vger.kernel.org, linux-staging@lists.linux.dev, linux-usb@vger.kernel.org, linux-fbdev@vger.kernel.org, linux-bcachefs@vger.kernel.org, linux-hardening@vger.kernel.org, cgroups@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-mm@kvack.org, apparmor@lists.ubuntu.com, linux-security-module@vger.kernel.org, linux-integrity@vger.kernel.org, alsa-devel@alsa-project.org, linux-sound@vger.kernel.org, Michael Ellerman , Nicholas Piggin , Christophe Leroy , "Naveen N. Rao" , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , David Howells , "David S. Miller" , "Rafael J. Wysocki" , Len Brown , Sergey Shtylyov , Damien Le Moal , Niklas Cassel , Daniel Scally , Sakari Ailus , Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Heiko Stuebner , Peter De Schrijver , Prashant Gaikwad , Thierry Reding , Jonathan Hunter , Huang Rui , "Gautham R. Shenoy" , Mario Limonciello , Viresh Kumar , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Rodrigo Vivi , Joonas Lahtinen , Tvrtko Ursulin , Karol Herbst , Lyude Paul , Danilo Krummrich , Jean Delvare , Alexander Shishkin , Pavel Machek , Chen-Yu Tsai , Jernej Skrabec , Tony Lindgren , Adrian Hunter , Hu Ziji , Ulf Hansson , Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Potnuri Bharat Teja , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Miri Korenblit , Kalle Valo , Mahesh J Salgaonkar , Oliver O'Halloran , Kishon Vijay Abraham I , Matthias Brugger , AngeloGioacchino Del Regno , JC Kuo , Andrew Lunn , Gregory Clement , Sebastian Hesselbarth , Sebastian Reichel , Daniel Lezcano , Zhang Rui , Lukasz Luba , Thinh Nguyen , Helge Deller , Brian Foster , Zhihao Cheng , Tejun Heo , Zefan Li , Johannes Weiner , Peter Zijlstra , Juri Lelli , Vincent Guittot , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Masami Hiramatsu , Mathieu Desnoyers , Jason Baron , Jim Cromie , Paul Moore , James Morris , "Serge E. Hallyn" , Dmitry Kasatkin , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai , Liam Girdwood , Linus Torvalds Subject: Re: [PATCH v1 1/1] treewide: Align match_string() with sysfs_match_string() Message-ID: <20240604115235.044acfd6@gandalf.local.home> In-Reply-To: <87tti9cfry.fsf@intel.com> References: <20240603211538.289765-1-andriy.shevchenko@linux.intel.com> <87tti9cfry.fsf@intel.com> X-Mailer: Claws Mail 3.20.0git84 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 12538C0018 X-Stat-Signature: 5k88fibuhbtrp1dps6thba1etjt1juec X-Rspam-User: X-HE-Tag: 1717516406-521561 X-HE-Meta: U2FsdGVkX18pwYvKyBRI6Cyz4Uw6kU2MTmc5x8aXGohIyj9PWlthnkQGazmIXhkIG5EGb6uRsTKgzbR5SZjrlDh6xlv2pem3yJD95IlFCHfbnlWje8QNu5lsom4+fmcT5Bf1UjrvoLU3vS8LMtTH0ZkZ0XjcfXoEr/lmmdlq5r8fnMIK7m52y3kiQMRP5f9ByKBybTz5glr3rlT9SqWf6hp+MRj/TeaM1HHb/wJ9sjxwRygkeScIkZoupz2zrdCZwIz9ROG3a7MP57NDkhwniaMtYISADWj1m4aB5nfItcAmDSEMp3A37tJoWiSLAlD69/4c+NYKBzus6UjhcynXKuWqILufWm3uJKKkbQxOEGP3ycMUvOlVW24lzbeTGdl2W0RHGNasJOd2S9dhA84mLGQP8LYnnEmCv9OzcRCF7pzGODmZzNWeklQmoIWobKD+YZ0kKgQ6h6BKqL7kBzEt2DQp5bkvvfx9QCtjdoyXcMhW/jTkv7zvKv9Z+umHqvzwGMNm6PftXrRCQS9739+zoF6ziyI3/lWHvoh+GDKabkFGCEb6/vv8v7OiO+GtkHmueVTl8FkOHrClx7GvTOy63xfDtsqizMRwDZzAb9cSxHO+nZS9Z3TuwcyKjebjeogEX47CiIQy4wPBsCWpVHtf44k2TGH9cC8xmCCMVbCCDCT0FuFXMBBLYlO3xUZHY1K3Q7qZ1AazDTTggDEpbYI+qafnWxa6c1a+6skiXrenVk1wG+NoqUgjMPNFj3totWzfG4de2861OUB0KKlx3A+CpFmXvuMo2dKFeos3Xe11gGdUDGxE/C0AkEh6sKXvuvo+ND4QxU5TMz+KB7aRjTZRl15iNDdSGop+PtM66WwZ35VdoyR2gHq1zvxFZGQYPWDvGgeqDE/sRZkPZ/XXqb2yll2JH8F+0ggk7F/e+qgGQMYZ0EwUWqzlRK3X7VqFkjvm5Si0vbPK+8mf/iuJd9Z sg20USuK Zo3v1Rxpi3uIkOaM96xRPPWzPw3Rc00jmbTaF22fCT3BX6qe0d/yfaZYgRy0W7waRDh1mlLqb4ZfaTatdWLov32X/lWVR7NtZcXCL/NGcJ68C/NCsEy5eMv9pghEzTq7VY7Cn/pGG4bhkynOkXjMaQIohGORnOyGycUscFOYOJgSG/Da3Imc9GNz1eu7onnOaMurLc1r9KEbeCKyDacUDJV3Uevt7D47YcfBrOr5GjDZJrVbMjmDeI/OscCm96XS7gb+bGhGVDIf6GSfzH2Ja2bxbiNp04OcoXZvXpTbyTApHLhOnbs7BnjOln4Gx6+N4n1E7QpgToxhfTzccaf26cTSsanlCWk2wD4R1P+liEEjSoyDZQs/4dm48ta3FxQlEImtyE3zV0cXYNok= 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 Tue, 04 Jun 2024 10:45:37 +0300 Jani Nikula wrote: > On Sun, 02 Jun 2024, Andy Shevchenko wrote: > > Make two APIs look similar. Hence convert match_string() to be > > a 2-argument macro. In order to avoid unneeded churn, convert > > all users as well. There is no functional change intended. > > Why do we think it's a good idea to increase and normalize the use of > double-underscore function names across the kernel, like > __match_string() in this case? It should mean "reserved for the > implementation, not to be called directly". > > If it's to be used directly, it should be named accordingly, right? > > Being in line with __sysfs_match_string() isn't a great argument alone, > because this adds three times the number of __match_string() calls than > there are __sysfs_match_string() calls. It's not a good model to follow. > Arguably both should be renamed. Agreed. I want to get rid of any functions starting with an underscore except for those that are basically the same function used internally for convenience. Perhaps "match_string_dynamic()"? Where it is used for dynamically allocated arrays without known size. Or, allow a third parameter for dynamic arrays. #define match_string(_a, _s, ...) char _______STR[] = __stringify((__VA_ARGS__)); \ if (sizeof(_______STR) > 3) \ __match_string(_a, _s, ##__VA_ARGS__); \ else \ __match_string(_a, _s, ARRAY_SIZE(_a)); What the above stringify((__VA_ARGS__)) does is to check the size of any args added to match_string(). if there isn't any, it will turn into: "()\0", which is of size 3. If you add an argument, it will be: "()\0", which will have a size greater than three. (trace_printk() does this trick in include/linux/kernel.h). This way, both: match_string(array, sting); or match_string(array, string, size); will work. -- Steve