Adding some people who worked on the client name and client id fields. On 5/28/25 09:22, Sunil Khatri wrote: > pid is not always the right choice for fd to track > the caller and hence adding drm client-id to the > print which is unique for a drm client and can be > used by driver in debugging > > One of the use is to further enhance debugging for > amdgpu driver based on client-id. > > Signed-off-by: Sunil Khatri <sunil.kha...@amd.com> > --- > drivers/gpu/drm/drm_debugfs.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c > index 6b2178864c7e..2d43bda82887 100644 > --- a/drivers/gpu/drm/drm_debugfs.c > +++ b/drivers/gpu/drm/drm_debugfs.c > @@ -77,14 +77,15 @@ static int drm_clients_info(struct seq_file *m, void > *data) > kuid_t uid; > > seq_printf(m, > - "%20s %5s %3s master a %5s %10s %*s\n", > + "%20s %5s %3s master a %5s %10s %*s %5s\n", > "command", > "tgid", > "dev", > "uid", > "magic", > DRM_CLIENT_NAME_MAX_LEN, > - "name"); > + "name", > + "client-id");
It might make sense to print the client id first and then the name. Apart from that looks sane to me. Regards, Christian. > > /* dev->filelist is sorted youngest first, but we want to present > * oldest first (i.e. kernel, servers, clients), so walk backwardss. > @@ -100,7 +101,7 @@ static int drm_clients_info(struct seq_file *m, void > *data) > pid = rcu_dereference(priv->pid); > task = pid_task(pid, PIDTYPE_TGID); > uid = task ? __task_cred(task)->euid : GLOBAL_ROOT_UID; > - seq_printf(m, "%20s %5d %3d %c %c %5d %10u %*s\n", > + seq_printf(m, "%20s %5d %3d %c %c %5d %10u %*s %5llu\n", > task ? task->comm : "<unknown>", > pid_vnr(pid), > priv->minor->index, > @@ -109,7 +110,7 @@ static int drm_clients_info(struct seq_file *m, void > *data) > from_kuid_munged(seq_user_ns(m), uid), > priv->magic, > DRM_CLIENT_NAME_MAX_LEN, > - priv->client_name ? priv->client_name : "<unset>"); > + priv->client_name ? priv->client_name : "<unset>", > priv->client_id); > rcu_read_unlock(); > mutex_unlock(&priv->client_name_lock); > }