From nobody Mon Feb 9 08:28:49 2026 Received: from mail-ot1-f68.google.com (mail-ot1-f68.google.com [209.85.210.68]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CEDB32F3620 for ; Wed, 14 Jan 2026 01:58:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.68 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768355934; cv=none; b=cPP7WKr0+cLRjpQMAzVTgMtv0d9aXJTFWyPHWzo7/xDVPCcWQWUTvODJJQPw5XrlEjUnVTSbVyN63NGcqyE28c337Sm4j7SFvXYGYQ0KUurx+gW8ck0e46P42h59oc9xXfoxIEYH8eIZHJ8M43mKjH1Obd79TRfQa0dOpx8qb7w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768355934; c=relaxed/simple; bh=qcJ9WTVfS0uIhrALRso7IA2CF/K5hLrMPEervT/QQok=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FiOKnEEZnwPNueGbDcp4jV9ac2uKFafG5LKoJq6f+Ccrv4RXY7gdmQy1E1+7y/jOV6FuxrHeF9CENvJOTZIcZfwayFkhZi58qCAtZAte8rzTfS7j4ZvYfCDvQ9evL9igS/fLDGuDanfwOW2TPQeuSs+o46bsPKvChOS3PoBMQxs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=F4TP4YOb; arc=none smtp.client-ip=209.85.210.68 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="F4TP4YOb" Received: by mail-ot1-f68.google.com with SMTP id 46e09a7af769-7c7660192b0so5798261a34.0 for ; Tue, 13 Jan 2026 17:58:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768355932; x=1768960732; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8i2B8ufAHD9sSahBAZkEx2yO1Ly/YjHLa83EmimubvQ=; b=F4TP4YObB0sTRljRjnPa4bn148Ydgc7cCZathvFMZxSGlOBrYOo5wDXXICWBXJRhFI TTFDg9FFB5b2wiFCk3Kyr7YAfG2m52pO8lEcdRan+jT2OUBRROdOSsbNSQiVz0oJtSRG zwqzmikELmJOExjhvPzmvuV7FDK82VU9SFWT6E9kZW9ACQKfaVCD0VNOkzFWw61hyMCz oe/3VfYXgWFgnBI6+zUKa6b0sfQfi4RcnD7H6cNI7rT0nHQY3ePGmC5wmCSoaD+sklk9 bTB54h5DSMW/YcckExIUKrDv8QZTuQifVBBO58SwQ26RNPbNDzHDDRPL4V7slEjL4H2H DvXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768355932; x=1768960732; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=8i2B8ufAHD9sSahBAZkEx2yO1Ly/YjHLa83EmimubvQ=; b=T7p1H7IPU0I2Mtd6d2u+GqWJbXZ3W+z2ZLVUjmhgTQllQ4iM2tVHH7Dkx/gF7p2SKR EomA0ZpWn3707a3msye57wjcNdz/OPyABVdmGATHg8N+FKrh6zCsuE8i9kqpcfM+s3Rg TCJziZX0FS4AEq5HGmOmWvxIb2tzT86IBnem7nwtAwJszEudwW4xpBW2xYUZ4+dW+I7b KQuli1H2Q3gsnR0ZL9Hjd7x7b17jopzArjlZ4i/9KwPrEB9E0LwOJegbhUXxjZfn8RkO 1uaZ7uDtWrybD/KO0nETM3+TCDHeyDDN2gfGmmolx51xg2R21mP0EAsTPeYlYaatLqnD K1SQ== X-Forwarded-Encrypted: i=1; AJvYcCUisbqw4ZhVyy+QFJgcn07gUC8k1zK1UpK+zsQMb54OqY7auSdP/hPdrsvsT7E8z9dLSdf5ON6iU/ZZlBM=@vger.kernel.org X-Gm-Message-State: AOJu0Yyg5DBSPNvUt+CH9tpLL1uFzIBvUV4kqA1I0H/6wmOliHsZwDws v6byFYUl/RBgzjQcwA5AApNd+3W/KUwvd8S2zwPY+bRb/UD28ABgILs6 X-Gm-Gg: AY/fxX6c4rCrGRi0YxTESoKp5aliat8HdcwpUsKSNTTlRQAuY+uHCB+J6wuGYPK/lOG wiolTBHdLH0oZOFypWXt4HXnzq3Gpe/D2jZTJOvVqOecNRSMzcvAM2McOKEPAciPmfTYBTJChx0 9bBs/6qIcAgCR2eyxqoUn6IOVh5NvSWl1VDq3LboJuBGB9pOVVWh5dle38+cna86gWbWVlUc355 Buot7Sk9wzQ+ev+s+c+dUwMtvxodVRX4t+t6RrMHcy6a7mlmHah0I/XJQuTvZgeGya6wo0w6Ybp IAFuVVdRVoYtg94fhykkaSrq8mp4QvczqJExmkrp6k+PM0+nEhuStyreg5ovptzoge1TeIof6vI L+V3a3dtvVtMAj3dd6R+n3MZ+9fMLXvZEuDf7YXUoCfABgloOuiG30vV3nD5tgyhgskXfXn3G0o cr6UusMFEKbbu1zNGFzocwED5+CECqc+lGmCOV X-Received: by 2002:a05:6830:3148:b0:7c6:cf19:1dec with SMTP id 46e09a7af769-7cfc8b73711mr1019391a34.33.1768355931685; Tue, 13 Jan 2026 17:58:51 -0800 (PST) Received: from frodo (c-98-38-17-99.hsd1.co.comcast.net. [98.38.17.99]) by smtp.googlemail.com with ESMTPSA id 46e09a7af769-7ce478d9c17sm17120860a34.22.2026.01.13.17.58.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jan 2026 17:58:51 -0800 (PST) From: Jim Cromie To: gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org Cc: Jim Cromie , Jason Baron , =?UTF-8?q?=C5=81ukasz=20Bartosik?= , Louis Chauvet , Bagas Sanjaya , Dave Airlie , Daniel Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , dri-devel@lists.freedesktop.org, Petr Mladek , Shuah Khan , linux-doc@vger.kernel.org, Steven Rostedt , "Liam R. Howlett" Subject: [PATCH v8 02/31] dyndbg: add stub macro for DECLARE_DYNDBG_CLASSMAP Date: Tue, 13 Jan 2026 18:57:18 -0700 Message-ID: <20260114015815.1565725-3-jim.cromie@gmail.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260114015815.1565725-1-jim.cromie@gmail.com> References: <20260114015815.1565725-1-jim.cromie@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add the stub macro for !DYNAMIC_DEBUG builds, after moving the original macro-defn down under the big ifdef. Do it now so future changes have a cleaner starting point. Signed-off-by: Jim Cromie --- include/linux/dynamic_debug.h | 43 ++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/include/linux/dynamic_debug.h b/include/linux/dynamic_debug.h index ff44ec346162..98a36e2f94b6 100644 --- a/include/linux/dynamic_debug.h +++ b/include/linux/dynamic_debug.h @@ -92,27 +92,6 @@ struct ddebug_class_map { enum class_map_type map_type; }; =20 -/** - * DECLARE_DYNDBG_CLASSMAP - declare classnames known by a module - * @_var: a struct ddebug_class_map, passed to module_param_cb - * @_type: enum class_map_type, chooses bits/verbose, numeric/symbolic - * @_base: offset of 1st class-name. splits .class_id space - * @classes: class-names used to control class'd prdbgs - */ -#define DECLARE_DYNDBG_CLASSMAP(_var, _maptype, _base, ...) \ - static const char *_var##_classnames[] =3D { __VA_ARGS__ }; \ - static struct ddebug_class_map __aligned(8) __used \ - __section("__dyndbg_classes") _var =3D { \ - .mod =3D THIS_MODULE, \ - .mod_name =3D KBUILD_MODNAME, \ - .base =3D _base, \ - .map_type =3D _maptype, \ - .length =3D NUM_TYPE_ARGS(char*, __VA_ARGS__), \ - .class_names =3D _var##_classnames, \ - } -#define NUM_TYPE_ARGS(eltype, ...) \ - (sizeof((eltype[]){__VA_ARGS__}) / sizeof(eltype)) - /* encapsulate linker provided built-in (or module) dyndbg data */ struct _ddebug_info { struct _ddebug *descs; @@ -137,6 +116,27 @@ struct ddebug_class_param { #if defined(CONFIG_DYNAMIC_DEBUG) || \ (defined(CONFIG_DYNAMIC_DEBUG_CORE) && defined(DYNAMIC_DEBUG_MODULE)) =20 +/** + * DECLARE_DYNDBG_CLASSMAP - declare classnames known by a module + * @_var: a struct ddebug_class_map, passed to module_param_cb + * @_type: enum class_map_type, chooses bits/verbose, numeric/symbolic + * @_base: offset of 1st class-name. splits .class_id space + * @classes: class-names used to control class'd prdbgs + */ +#define DECLARE_DYNDBG_CLASSMAP(_var, _maptype, _base, ...) \ + static const char *_var##_classnames[] =3D { __VA_ARGS__ }; \ + static struct ddebug_class_map __aligned(8) __used \ + __section("__dyndbg_classes") _var =3D { \ + .mod =3D THIS_MODULE, \ + .mod_name =3D KBUILD_MODNAME, \ + .base =3D _base, \ + .map_type =3D _maptype, \ + .length =3D NUM_TYPE_ARGS(char*, __VA_ARGS__), \ + .class_names =3D _var##_classnames, \ + } +#define NUM_TYPE_ARGS(eltype, ...) \ + (sizeof((eltype[]) {__VA_ARGS__}) / sizeof(eltype)) + extern __printf(2, 3) void __dynamic_pr_debug(struct _ddebug *descriptor, const char *fmt, ...); =20 @@ -303,6 +303,7 @@ void __dynamic_ibdev_dbg(struct _ddebug *descriptor, =20 #define DEFINE_DYNAMIC_DEBUG_METADATA(name, fmt) #define DYNAMIC_DEBUG_BRANCH(descriptor) false +#define DECLARE_DYNDBG_CLASSMAP(...) =20 #define dynamic_pr_debug(fmt, ...) \ no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) --=20 2.52.0