From: Jim Cromie <jim.cromie@gmail.com>
To: jbaron@akamai.com, gregkh@linuxfoundation.org,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
amd-gfx@lists.freedesktop.org,
intel-gvt-dev@lists.freedesktop.org,
intel-gfx@lists.freedesktop.org, daniel@ffwll.ch
Cc: Jim Cromie <jim.cromie@gmail.com>
Subject: [PATCH v8 11/16] i915/gvt: use DEFINE_DYNAMIC_DEBUG_CATEGORIES for existing prdbgs
Date: Wed, 15 Sep 2021 10:39:52 -0600 [thread overview]
Message-ID: <20210915163957.2949166-12-jim.cromie@gmail.com> (raw)
In-Reply-To: <20210915163957.2949166-1-jim.cromie@gmail.com>
The gvt component of this driver has ~120 pr_debugs, in 9 categories
quite similar to those in DRM. Following the interface model of
drm.debug, add a parameter to map bits to these categorizations.
DEFINE_DYNAMIC_DEBUG_CATEGORIES(debug_gvt, __gvt_debug,
"dyndbg bitmap desc",
_DD_cat_(0, "gvt:cmd:"),
_DD_cat_(1, "gvt:core:"),
_DD_cat_(2, "gvt:dpy:"),
_DD_cat_(3, "gvt:el:"),
_DD_cat_(4, "gvt:irq:"),
_DD_cat_(5, "gvt:mm:"),
_DD_cat_(6, "gvt:mmio:"),
_DD_cat_(7, "gvt:render:"),
_DD_cat_(8, "gvt:sched:"));
If CONFIG_DYNAMIC_DEBUG_CORE=y, then gvt/Makefile adds
-DDYNAMIC_DEBUG_MODULE to cflags, which CONFIG_DYNAMIC_DEBUG=n
(CORE-only) builds need. This is redone more comprehensively soon.
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
---
v5:
. static decl of vector of bit->class descriptors - Emil.V
. relocate gvt-makefile chunk from elsewhere
v7:
. move ccflags addition up to i915/Makefile from i915/gvt
v8:
. relocate DDD_CAT decl code into intel_gvt.c - Tvrtko
cflags back to i915/Makefile
. add -DDYNAMIC_DEBUG_MODULE to support DYNAMIC_DEBUG_CORE-only builds
heres unchanged? footprint:
bash-5.1# for m in i915 amdgpu nouveau; do modprobe $m; done
dyndbg: 1 debug prints in module drm
dyndbg: 2 debug prints in module ttm
dyndbg: 8 debug prints in module video
dyndbg: 167 debug prints in module i915
dyndbg: 2339 debug prints in module amdgpu
[drm] amdgpu kernel modesetting enabled.
amdgpu: CRAT table disabled by module option
amdgpu: Virtual CRAT table created for CPU
amdgpu: Topology: Add CPU node
dyndbg: 3 debug prints in module wmi
dyndbg: 3 debug prints in module nouveau
---
drivers/gpu/drm/i915/Makefile | 2 ++
drivers/gpu/drm/i915/intel_gvt.c | 34 ++++++++++++++++++++++++++++++++
2 files changed, 36 insertions(+)
diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 4f22cac1c49b..038fd29c89d4 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -295,6 +295,8 @@ i915-y += intel_gvt.o
include $(src)/gvt/Makefile
endif
+ccflags-$(CONFIG_DYNAMIC_DEBUG_CORE) += -DDYNAMIC_DEBUG_MODULE
+
obj-$(CONFIG_DRM_I915) += i915.o
obj-$(CONFIG_DRM_I915_GVT_KVMGT) += gvt/kvmgt.o
diff --git a/drivers/gpu/drm/i915/intel_gvt.c b/drivers/gpu/drm/i915/intel_gvt.c
index 4e70c1a9ef2e..eb0da9173b23 100644
--- a/drivers/gpu/drm/i915/intel_gvt.c
+++ b/drivers/gpu/drm/i915/intel_gvt.c
@@ -162,3 +162,37 @@ void intel_gvt_resume(struct drm_i915_private *dev_priv)
if (intel_gvt_active(dev_priv))
intel_gvt_pm_resume(dev_priv->gvt);
}
+
+#if defined(CONFIG_DRM_USE_DYNAMIC_DEBUG)
+
+unsigned long __gvt_debug;
+EXPORT_SYMBOL(__gvt_debug);
+
+#define help_(_N, _cat) "\t Bit-" #_N ":\t" _cat "\n"
+
+#define I915_GVT_CATEGORIES(name) \
+ " Enable debug output via /sys/module/i915/parameters/" #name \
+ ", where each bit enables a debug category.\n" \
+ help_(0, "gvt:cmd:") \
+ help_(1, "gvt:core:") \
+ help_(2, "gvt:dpy:") \
+ help_(3, "gvt:el:") \
+ help_(4, "gvt:irq:") \
+ help_(5, "gvt:mm:") \
+ help_(6, "gvt:mmio:") \
+ help_(7, "gvt:render:") \
+ help_(8, "gvt:sched:")
+
+DEFINE_DYNAMIC_DEBUG_CATEGORIES(debug_gvt, __gvt_debug,
+ I915_GVT_CATEGORIES(debug_gvt),
+ _DD_cat_(0, "gvt:cmd:"),
+ _DD_cat_(1, "gvt:core:"),
+ _DD_cat_(2, "gvt:dpy:"),
+ _DD_cat_(3, "gvt:el:"),
+ _DD_cat_(4, "gvt:irq:"),
+ _DD_cat_(5, "gvt:mm:"),
+ _DD_cat_(6, "gvt:mmio:"),
+ _DD_cat_(7, "gvt:render:"),
+ _DD_cat_(8, "gvt:sched:"));
+
+#endif
--
2.31.1
next prev parent reply other threads:[~2021-09-15 16:41 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-15 16:39 [PATCH v8 00/16] use DYNAMIC_DEBUG to implement DRM.debug Jim Cromie
2021-09-15 16:39 ` [PATCH v8 01/16] dyndbg: add module to a vpr-info in dd-exec-queries Jim Cromie
2021-09-15 16:39 ` [PATCH v8 02/16] dyndbg: pr-info in boot-param should say so Jim Cromie
2021-09-15 16:39 ` [PATCH v8 03/16] dyndbg: rationalize verbosity Jim Cromie
2021-09-15 16:39 ` [PATCH v8 04/16] dyndbg: use alt-quotes in vpr-infos, not those user might use Jim Cromie
2021-09-15 16:39 ` [PATCH v8 05/16] dyndbg: vpr-info on remove-module complete, not starting Jim Cromie
2021-09-15 16:39 ` [PATCH v8 06/16] dyndbg: no vpr-info on empty queries Jim Cromie
2021-09-15 16:39 ` [PATCH v8 07/16] dyndbg-doc: fix bootparam usage example Jim Cromie
2021-09-15 16:39 ` [PATCH v8 08/16] dyndbg: add DEFINE_DYNAMIC_DEBUG_CATEGORIES bitmap and callbacks Jim Cromie
2021-09-15 16:39 ` [PATCH v8 09/16] drm: fix doc grammar error Jim Cromie
2021-09-15 16:39 ` [PATCH v8 10/16] i915/gvt: remove spaces in pr_debug "gvt: core:" etc prefixes Jim Cromie
2021-09-23 7:36 ` Zhenyu Wang
2021-09-15 16:39 ` Jim Cromie [this message]
2021-09-15 16:39 ` [PATCH v8 12/16] amdgpu: use DEFINE_DYNAMIC_DEBUG_CATEGORIES on existing prdbgs Jim Cromie
2021-09-15 16:39 ` [PATCH v8 13/16] drm_print: add choice to use dynamic debug in drm-debug Jim Cromie
2021-09-15 16:39 ` [PATCH v8 14/16] drm_print: instrument drm_debug_enabled Jim Cromie
2021-09-15 16:39 ` [PATCH v8 15/16] amdgpu_ucode: reduce number of pr_debug calls Jim Cromie
2021-09-15 16:39 ` [PATCH v8 16/16] nouveau: fold multiple DRM_DEBUG_DRIVERs together Jim Cromie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210915163957.2949166-12-jim.cromie@gmail.com \
--to=jim.cromie@gmail.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=gregkh@linuxfoundation.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-gvt-dev@lists.freedesktop.org \
--cc=jbaron@akamai.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).