diff options
Diffstat (limited to 'drivers/gpu/drm/drm_debugfs.c')
| -rw-r--r-- | drivers/gpu/drm/drm_debugfs.c | 15 | 
1 files changed, 10 insertions, 5 deletions
| diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c index 9d3e6dd68810..536409a35df4 100644 --- a/drivers/gpu/drm/drm_debugfs.c +++ b/drivers/gpu/drm/drm_debugfs.c @@ -32,7 +32,6 @@  #include <drm/drm_atomic.h>  #include <drm/drm_auth.h>  #include <drm/drm_bridge.h> -#include <drm/drm_client.h>  #include <drm/drm_debugfs.h>  #include <drm/drm_device.h>  #include <drm/drm_drv.h> @@ -78,12 +77,14 @@ static int drm_clients_info(struct seq_file *m, void *data)  	kuid_t uid;  	seq_printf(m, -		   "%20s %5s %3s master a %5s %10s\n", +		   "%20s %5s %3s master a %5s %10s %*s\n",  		   "command",  		   "tgid",  		   "dev",  		   "uid", -		   "magic"); +		   "magic", +		   DRM_CLIENT_NAME_MAX_LEN, +		   "name");  	/* dev->filelist is sorted youngest first, but we want to present  	 * oldest first (i.e. kernel, servers, clients), so walk backwardss. @@ -94,19 +95,23 @@ static int drm_clients_info(struct seq_file *m, void *data)  		struct task_struct *task;  		struct pid *pid; +		mutex_lock(&priv->client_name_lock);  		rcu_read_lock(); /* Locks priv->pid and pid_task()->comm! */  		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\n", +		seq_printf(m, "%20s %5d %3d   %c    %c %5d %10u %*s\n",  			   task ? task->comm : "<unknown>",  			   pid_vnr(pid),  			   priv->minor->index,  			   is_current_master ? 'y' : 'n',  			   priv->authenticated ? 'y' : 'n',  			   from_kuid_munged(seq_user_ns(m), uid), -			   priv->magic); +			   priv->magic, +			   DRM_CLIENT_NAME_MAX_LEN, +			   priv->client_name ? priv->client_name : "<unset>");  		rcu_read_unlock(); +		mutex_unlock(&priv->client_name_lock);  	}  	mutex_unlock(&dev->filelist_mutex);  	return 0; | 
