[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJfuBxyrpMsHdYozXPSf=Oms4XAHyQ=PUx18RU3w=R1wVJQTtg@mail.gmail.com>
Date: Tue, 13 Sep 2022 09:57:31 -0600
From: jim.cromie@...il.com
To: Jani Nikula <jani.nikula@...ux.intel.com>
Cc: Jason Baron <jbaron@...mai.com>,
Greg KH <gregkh@...uxfoundation.org>,
dri-devel <dri-devel@...ts.freedesktop.org>,
amd-gfx mailing list <amd-gfx@...ts.freedesktop.org>,
intel-gvt-dev@...ts.freedesktop.org,
Intel Graphics Development <intel-gfx@...ts.freedesktop.org>,
LKML <linux-kernel@...r.kernel.org>,
Daniel Vetter <daniel.vetter@...ll.ch>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Sean Paul <seanpaul@...omium.org>,
Joe Perches <joe@...ches.com>
Subject: Re: [PATCH v7 1/9] drm_print: condense enum drm_debug_category
On Mon, Sep 12, 2022 at 4:17 AM Jani Nikula <jani.nikula@...ux.intel.com> wrote:
>
> On Sun, 11 Sep 2022, Jim Cromie <jim.cromie@...il.com> wrote:
> > enum drm_debug_category has 10 categories, but is initialized with
> > bitmasks which require 10 bits of underlying storage. By using
> > natural enumeration, and moving the BIT(cat) into drm_debug_enabled(),
> > the enum fits in 4 bits, allowing the category to be represented
> > directly in pr_debug callsites, via the ddebug.class_id field.
> >
> > While this slightly pessimizes the bit-test in drm_debug_enabled(),
> > using dyndbg with JUMP_LABEL will avoid the function entirely.
> >
> > NOTE: this change forecloses the possibility of doing:
> >
> > drm_dbg(DRM_UT_CORE|DRM_UT_KMS, "weird 2-cat experiment")
> >
> > but thats already strongly implied by the use of the enum itself; its
> > not a normal enum if it can be 2 values simultaneously.
>
> The drm.debug module parameter values are, arguably, ABI. There are tons
> of people, scripts, test environments, documentation, bug reports, etc,
> etc, referring to specific drm.debug module parameter values to enable
> specific drm debug logging categories.
>
> AFAICT you're not changing any of the values here, but having an enum
> without the hard coded values makes it more likely to accidentally
> change the category to bit mapping. At the very least deserves a
> comment.
>
hi Jani,
You're correct, this is unchanged :
echo $script_debug_val > /sys/module/drm/parameters/debug
wrt the enum, the next patch adds a comment,
enum drm_debug_category {
+ /* These names must match those in DYNAMIC_DEBUG_CLASSBITS */
/**
* @DRM_UT_CORE: Used in the generic drm code: drm_ioctl.c, drm_mm.c,
But that comment mostly misses the point youre making.
and the specific NAME is stale.
and the s/int/ulong/ __drm_debug should go here, with the use of BIT()
I will fix this and repost.
Is it useful for CI / patchwork / lkp-robot purposes,
to branch-and-rebase onto drm-next/drm-next or drm-tip/drm-tip
(or dated tags on them ) ?
>
> BR,
> Jani.
>
>
thank you
> >
> > Signed-off-by: Jim Cromie <jim.cromie@...il.com>
> > ---
> > inclu
Powered by blists - more mailing lists