On Fri, 13 Mar 2026 07:19:55 -0600, Jim Cromie <[email protected]> wrote:
> [...]
> 
> The new resolution:
> 
> If ABI is the blocking issue, then no ABI means no blocking issue.
> IOW, if the classmap has no presence under /sys/*, ie no PARAM, there
> is no ABI to guard, and no reason to enforce a tedious interface.

That a good improvment! For me this is a good solution. The tideous part is
removed for "new" logging systems, and the DRM case is properly handled
until they decide to break their ABI.

>
>
> diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
> index a1c3141372d1..e9fa0c8868db 100644
> --- a/lib/dynamic_debug.c
> +++ b/lib/dynamic_debug.c
> @@ -206,6 +206,50 @@ ddebug_find_valid_class(struct _ddebug_info const *di, 
> const char *query_class,
>       return NULL;
>  }
>  
> +static bool ddebug_class_in_range(const int class_id, const struct 
> _ddebug_class_map *map)
> +{
> +     return (class_id >= map->base &&
> +             class_id < map->base + map->length);
> +}

I think you introduced this function in a previous patch (macro
class_in_range->ddebug_class_in_range), you move it here and you rename it
later.

Can you do a separate "preparatory" patch for this macro->function+rename
to simplify the change here?

> @@ -1275,6 +1344,13 @@ static void ddebug_apply_params(const struct 
> _ddebug_class_map *cm, const char *
> [ ... skip 7 lines ... ]
> + * use it, and expects it to reflect reality.  We should oblige him,
> + * and protect those classmaps from classless "-p" changes.
> + */
>  static void ddebug_apply_class_maps(const struct _ddebug_info *di)
>  {
>       struct _ddebug_class_map *cm;

With the splitting of the patch:

Reviewed-by: Louis Chauvet <[email protected]>

-- 
Louis Chauvet <[email protected]>

Reply via email to