diff mbox series

[6/7] drivers: Repace get_task_comm() with %pTN

Message ID 20241213054610.55843-7-laoar.shao@gmail.com (mailing list archive)
State New, archived
Headers show
Series vsprintf: Add %pTN to print Task Name | expand

Commit Message

Yafang Shao Dec. 13, 2024, 5:46 a.m. UTC
Since task->comm is guaranteed to be NUL-terminated, we can print it
directly without the need to copy it into a separate buffer. This
simplifies the code and avoids unnecessary operations.

Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Cc: Ofir Bitton <obitton@habana.ai>
Cc: Oded Gabbay <ogabbay@kernel.org>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Tvrtko Ursulin <tursulin@ursulin.net>
Cc: David Airlie <airlied@gmail.com>
Cc: Simona Vetter <simona@ffwll.ch>
Cc: Karol Herbst <kherbst@redhat.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Danilo Krummrich <dakr@redhat.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jiri Slaby <jirislaby@kernel.org>
---
 drivers/accel/habanalabs/common/context.c         |  5 ++---
 .../accel/habanalabs/common/habanalabs_ioctl.c    | 15 +++++----------
 .../gpu/drm/i915/display/intel_display_driver.c   | 10 ++++------
 drivers/gpu/drm/nouveau/nouveau_chan.c            |  4 +---
 drivers/gpu/drm/nouveau/nouveau_drm.c             |  7 +++----
 drivers/tty/tty_io.c                              |  5 ++---
 6 files changed, 17 insertions(+), 29 deletions(-)

Comments

Jiri Slaby Dec. 13, 2024, 7:48 a.m. UTC | #1
On 13. 12. 24, 6:46, Yafang Shao wrote:
> Since task->comm is guaranteed to be NUL-terminated, we can print it
> directly without the need to copy it into a separate buffer. This
> simplifies the code and avoids unnecessary operations.
> 
> Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
> Cc: Ofir Bitton <obitton@habana.ai>
> Cc: Oded Gabbay <ogabbay@kernel.org>
> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Tvrtko Ursulin <tursulin@ursulin.net>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: Karol Herbst <kherbst@redhat.com>
> Cc: Lyude Paul <lyude@redhat.com>
> Cc: Danilo Krummrich <dakr@redhat.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Jiri Slaby <jirislaby@kernel.org>
> ---
>   drivers/accel/habanalabs/common/context.c         |  5 ++---
>   .../accel/habanalabs/common/habanalabs_ioctl.c    | 15 +++++----------
>   .../gpu/drm/i915/display/intel_display_driver.c   | 10 ++++------
>   drivers/gpu/drm/nouveau/nouveau_chan.c            |  4 +---
>   drivers/gpu/drm/nouveau/nouveau_drm.c             |  7 +++----
>   drivers/tty/tty_io.c                              |  5 ++---

FOr tty:
Reviewed-by: Jiri Slaby <jirislaby@kernel.org>

thanks,
Lyude Paul Dec. 16, 2024, 8:33 p.m. UTC | #2
For the nouveau bits:

Reviewed-by: Lyude Paul <lyude@redhat.com>

On Fri, 2024-12-13 at 13:46 +0800, Yafang Shao wrote:
> Since task->comm is guaranteed to be NUL-terminated, we can print it
> directly without the need to copy it into a separate buffer. This
> simplifies the code and avoids unnecessary operations.
> 
> Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
> Cc: Ofir Bitton <obitton@habana.ai>
> Cc: Oded Gabbay <ogabbay@kernel.org>
> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Tvrtko Ursulin <tursulin@ursulin.net>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: Karol Herbst <kherbst@redhat.com>
> Cc: Lyude Paul <lyude@redhat.com>
> Cc: Danilo Krummrich <dakr@redhat.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Jiri Slaby <jirislaby@kernel.org>
> ---
>  drivers/accel/habanalabs/common/context.c         |  5 ++---
>  .../accel/habanalabs/common/habanalabs_ioctl.c    | 15 +++++----------
>  .../gpu/drm/i915/display/intel_display_driver.c   | 10 ++++------
>  drivers/gpu/drm/nouveau/nouveau_chan.c            |  4 +---
>  drivers/gpu/drm/nouveau/nouveau_drm.c             |  7 +++----
>  drivers/tty/tty_io.c                              |  5 ++---
>  6 files changed, 17 insertions(+), 29 deletions(-)
> 
> diff --git a/drivers/accel/habanalabs/common/context.c b/drivers/accel/habanalabs/common/context.c
> index b83141f58319..e4026051b735 100644
> --- a/drivers/accel/habanalabs/common/context.c
> +++ b/drivers/accel/habanalabs/common/context.c
> @@ -199,7 +199,6 @@ int hl_ctx_create(struct hl_device *hdev, struct hl_fpriv *hpriv)
>  
>  int hl_ctx_init(struct hl_device *hdev, struct hl_ctx *ctx, bool is_kernel_ctx)
>  {
> -	char task_comm[TASK_COMM_LEN];
>  	int rc = 0, i;
>  
>  	ctx->hdev = hdev;
> @@ -271,8 +270,8 @@ int hl_ctx_init(struct hl_device *hdev, struct hl_ctx *ctx, bool is_kernel_ctx)
>  
>  		mutex_init(&ctx->ts_reg_lock);
>  
> -		dev_dbg(hdev->dev, "create user context, comm=\"%s\", asid=%u\n",
> -			get_task_comm(task_comm, current), ctx->asid);
> +		dev_dbg(hdev->dev, "create user context, comm=\"%pTN\", asid=%u\n",
> +			current, ctx->asid);
>  	}
>  
>  	return 0;
> diff --git a/drivers/accel/habanalabs/common/habanalabs_ioctl.c b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
> index 1dd6e23172ca..32678cd0775a 100644
> --- a/drivers/accel/habanalabs/common/habanalabs_ioctl.c
> +++ b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
> @@ -1279,13 +1279,10 @@ static long _hl_ioctl(struct hl_fpriv *hpriv, unsigned int cmd, unsigned long ar
>  		retcode = -EFAULT;
>  
>  out_err:
> -	if (retcode) {
> -		char task_comm[TASK_COMM_LEN];
> -
> +	if (retcode)
>  		dev_dbg_ratelimited(dev,
> -				"error in ioctl: pid=%d, comm=\"%s\", cmd=%#010x, nr=%#04x\n",
> -				task_pid_nr(current), get_task_comm(task_comm, current), cmd, nr);
> -	}
> +				"error in ioctl: pid=%d, comm=\"%pTN\", cmd=%#010x, nr=%#04x\n",
> +				task_pid_nr(current), current, cmd, nr);
>  
>  	if (kdata != stack_kdata)
>  		kfree(kdata);
> @@ -1308,11 +1305,9 @@ long hl_ioctl_control(struct file *filep, unsigned int cmd, unsigned long arg)
>  	if (nr == _IOC_NR(DRM_IOCTL_HL_INFO)) {
>  		ioctl = &hl_ioctls_control[nr - HL_COMMAND_START];
>  	} else {
> -		char task_comm[TASK_COMM_LEN];
> -
>  		dev_dbg_ratelimited(hdev->dev_ctrl,
> -				"invalid ioctl: pid=%d, comm=\"%s\", cmd=%#010x, nr=%#04x\n",
> -				task_pid_nr(current), get_task_comm(task_comm, current), cmd, nr);
> +				"invalid ioctl: pid=%d, comm=\"%pTN\", cmd=%#010x, nr=%#04x\n",
> +				task_pid_nr(current), current, cmd, nr);
>  		return -ENOTTY;
>  	}
>  
> diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
> index 56b78cf6b854..416aff49ceb8 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_driver.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
> @@ -391,7 +391,6 @@ void intel_display_driver_resume_access(struct drm_i915_private *i915)
>   */
>  bool intel_display_driver_check_access(struct drm_i915_private *i915)
>  {
> -	char comm[TASK_COMM_LEN];
>  	char current_task[TASK_COMM_LEN + 16];
>  	char allowed_task[TASK_COMM_LEN + 16] = "none";
>  
> @@ -399,13 +398,12 @@ bool intel_display_driver_check_access(struct drm_i915_private *i915)
>  	    i915->display.access.allowed_task == current)
>  		return true;
>  
> -	snprintf(current_task, sizeof(current_task), "%s[%d]",
> -		 get_task_comm(comm, current),
> -		 task_pid_vnr(current));
> +	snprintf(current_task, sizeof(current_task), "%pTN[%d]",
> +		 current, task_pid_vnr(current));
>  
>  	if (i915->display.access.allowed_task)
> -		snprintf(allowed_task, sizeof(allowed_task), "%s[%d]",
> -			 get_task_comm(comm, i915->display.access.allowed_task),
> +		snprintf(allowed_task, sizeof(allowed_task), "%pTN[%d]",
> +			 i915->display.access.allowed_task,
>  			 task_pid_vnr(i915->display.access.allowed_task));
>  
>  	drm_dbg_kms(&i915->drm,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_chan.c b/drivers/gpu/drm/nouveau/nouveau_chan.c
> index 2cb2e5675807..5bcfda6ecafe 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_chan.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_chan.c
> @@ -279,7 +279,6 @@ nouveau_channel_ctor(struct nouveau_cli *cli, bool priv, u64 runm,
>  	const u64 plength = 0x10000;
>  	const u64 ioffset = plength;
>  	const u64 ilength = 0x02000;
> -	char name[TASK_COMM_LEN];
>  	int cid, ret;
>  	u64 size;
>  
> @@ -338,8 +337,7 @@ nouveau_channel_ctor(struct nouveau_cli *cli, bool priv, u64 runm,
>  		chan->userd = &chan->user;
>  	}
>  
> -	get_task_comm(name, current);
> -	snprintf(args.name, sizeof(args.name), "%s[%d]", name, task_pid_nr(current));
> +	snprintf(args.name, sizeof(args.name), "%pTN[%d]", current, task_pid_nr(current));
>  
>  	ret = nvif_object_ctor(&device->object, "abi16ChanUser", 0, hosts[cid].oclass,
>  			       &args, sizeof(args), &chan->user);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 107f63f08bd9..3264465cded6 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1159,7 +1159,7 @@ nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
>  {
>  	struct nouveau_drm *drm = nouveau_drm(dev);
>  	struct nouveau_cli *cli;
> -	char name[32], tmpname[TASK_COMM_LEN];
> +	char name[32];
>  	int ret;
>  
>  	/* need to bring up power immediately if opening device */
> @@ -1169,10 +1169,9 @@ nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
>  		return ret;
>  	}
>  
> -	get_task_comm(tmpname, current);
>  	rcu_read_lock();
> -	snprintf(name, sizeof(name), "%s[%d]",
> -		 tmpname, pid_nr(rcu_dereference(fpriv->pid)));
> +	snprintf(name, sizeof(name), "%pTN[%d]",
> +		 current, pid_nr(rcu_dereference(fpriv->pid)));
>  	rcu_read_unlock();
>  
>  	if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL))) {
> diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
> index 9771072da177..bd39167d4234 100644
> --- a/drivers/tty/tty_io.c
> +++ b/drivers/tty/tty_io.c
> @@ -2622,14 +2622,13 @@ static int tty_tiocgicount(struct tty_struct *tty, void __user *arg)
>  
>  static int tty_set_serial(struct tty_struct *tty, struct serial_struct *ss)
>  {
> -	char comm[TASK_COMM_LEN];
>  	int flags;
>  
>  	flags = ss->flags & ASYNC_DEPRECATED;
>  
>  	if (flags)
> -		pr_warn_ratelimited("%s: '%s' is using deprecated serial flags (with no effect): %.8x\n",
> -				__func__, get_task_comm(comm, current), flags);
> +		pr_warn_ratelimited("%s: '%pTN' is using deprecated serial flags (with no effect): %.8x\n",
> +				__func__, current, flags);
>  
>  	if (!tty->ops->set_serial)
>  		return -ENOTTY;
diff mbox series

Patch

diff --git a/drivers/accel/habanalabs/common/context.c b/drivers/accel/habanalabs/common/context.c
index b83141f58319..e4026051b735 100644
--- a/drivers/accel/habanalabs/common/context.c
+++ b/drivers/accel/habanalabs/common/context.c
@@ -199,7 +199,6 @@  int hl_ctx_create(struct hl_device *hdev, struct hl_fpriv *hpriv)
 
 int hl_ctx_init(struct hl_device *hdev, struct hl_ctx *ctx, bool is_kernel_ctx)
 {
-	char task_comm[TASK_COMM_LEN];
 	int rc = 0, i;
 
 	ctx->hdev = hdev;
@@ -271,8 +270,8 @@  int hl_ctx_init(struct hl_device *hdev, struct hl_ctx *ctx, bool is_kernel_ctx)
 
 		mutex_init(&ctx->ts_reg_lock);
 
-		dev_dbg(hdev->dev, "create user context, comm=\"%s\", asid=%u\n",
-			get_task_comm(task_comm, current), ctx->asid);
+		dev_dbg(hdev->dev, "create user context, comm=\"%pTN\", asid=%u\n",
+			current, ctx->asid);
 	}
 
 	return 0;
diff --git a/drivers/accel/habanalabs/common/habanalabs_ioctl.c b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
index 1dd6e23172ca..32678cd0775a 100644
--- a/drivers/accel/habanalabs/common/habanalabs_ioctl.c
+++ b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
@@ -1279,13 +1279,10 @@  static long _hl_ioctl(struct hl_fpriv *hpriv, unsigned int cmd, unsigned long ar
 		retcode = -EFAULT;
 
 out_err:
-	if (retcode) {
-		char task_comm[TASK_COMM_LEN];
-
+	if (retcode)
 		dev_dbg_ratelimited(dev,
-				"error in ioctl: pid=%d, comm=\"%s\", cmd=%#010x, nr=%#04x\n",
-				task_pid_nr(current), get_task_comm(task_comm, current), cmd, nr);
-	}
+				"error in ioctl: pid=%d, comm=\"%pTN\", cmd=%#010x, nr=%#04x\n",
+				task_pid_nr(current), current, cmd, nr);
 
 	if (kdata != stack_kdata)
 		kfree(kdata);
@@ -1308,11 +1305,9 @@  long hl_ioctl_control(struct file *filep, unsigned int cmd, unsigned long arg)
 	if (nr == _IOC_NR(DRM_IOCTL_HL_INFO)) {
 		ioctl = &hl_ioctls_control[nr - HL_COMMAND_START];
 	} else {
-		char task_comm[TASK_COMM_LEN];
-
 		dev_dbg_ratelimited(hdev->dev_ctrl,
-				"invalid ioctl: pid=%d, comm=\"%s\", cmd=%#010x, nr=%#04x\n",
-				task_pid_nr(current), get_task_comm(task_comm, current), cmd, nr);
+				"invalid ioctl: pid=%d, comm=\"%pTN\", cmd=%#010x, nr=%#04x\n",
+				task_pid_nr(current), current, cmd, nr);
 		return -ENOTTY;
 	}
 
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 56b78cf6b854..416aff49ceb8 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -391,7 +391,6 @@  void intel_display_driver_resume_access(struct drm_i915_private *i915)
  */
 bool intel_display_driver_check_access(struct drm_i915_private *i915)
 {
-	char comm[TASK_COMM_LEN];
 	char current_task[TASK_COMM_LEN + 16];
 	char allowed_task[TASK_COMM_LEN + 16] = "none";
 
@@ -399,13 +398,12 @@  bool intel_display_driver_check_access(struct drm_i915_private *i915)
 	    i915->display.access.allowed_task == current)
 		return true;
 
-	snprintf(current_task, sizeof(current_task), "%s[%d]",
-		 get_task_comm(comm, current),
-		 task_pid_vnr(current));
+	snprintf(current_task, sizeof(current_task), "%pTN[%d]",
+		 current, task_pid_vnr(current));
 
 	if (i915->display.access.allowed_task)
-		snprintf(allowed_task, sizeof(allowed_task), "%s[%d]",
-			 get_task_comm(comm, i915->display.access.allowed_task),
+		snprintf(allowed_task, sizeof(allowed_task), "%pTN[%d]",
+			 i915->display.access.allowed_task,
 			 task_pid_vnr(i915->display.access.allowed_task));
 
 	drm_dbg_kms(&i915->drm,
diff --git a/drivers/gpu/drm/nouveau/nouveau_chan.c b/drivers/gpu/drm/nouveau/nouveau_chan.c
index 2cb2e5675807..5bcfda6ecafe 100644
--- a/drivers/gpu/drm/nouveau/nouveau_chan.c
+++ b/drivers/gpu/drm/nouveau/nouveau_chan.c
@@ -279,7 +279,6 @@  nouveau_channel_ctor(struct nouveau_cli *cli, bool priv, u64 runm,
 	const u64 plength = 0x10000;
 	const u64 ioffset = plength;
 	const u64 ilength = 0x02000;
-	char name[TASK_COMM_LEN];
 	int cid, ret;
 	u64 size;
 
@@ -338,8 +337,7 @@  nouveau_channel_ctor(struct nouveau_cli *cli, bool priv, u64 runm,
 		chan->userd = &chan->user;
 	}
 
-	get_task_comm(name, current);
-	snprintf(args.name, sizeof(args.name), "%s[%d]", name, task_pid_nr(current));
+	snprintf(args.name, sizeof(args.name), "%pTN[%d]", current, task_pid_nr(current));
 
 	ret = nvif_object_ctor(&device->object, "abi16ChanUser", 0, hosts[cid].oclass,
 			       &args, sizeof(args), &chan->user);
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 107f63f08bd9..3264465cded6 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -1159,7 +1159,7 @@  nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
 {
 	struct nouveau_drm *drm = nouveau_drm(dev);
 	struct nouveau_cli *cli;
-	char name[32], tmpname[TASK_COMM_LEN];
+	char name[32];
 	int ret;
 
 	/* need to bring up power immediately if opening device */
@@ -1169,10 +1169,9 @@  nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
 		return ret;
 	}
 
-	get_task_comm(tmpname, current);
 	rcu_read_lock();
-	snprintf(name, sizeof(name), "%s[%d]",
-		 tmpname, pid_nr(rcu_dereference(fpriv->pid)));
+	snprintf(name, sizeof(name), "%pTN[%d]",
+		 current, pid_nr(rcu_dereference(fpriv->pid)));
 	rcu_read_unlock();
 
 	if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL))) {
diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
index 9771072da177..bd39167d4234 100644
--- a/drivers/tty/tty_io.c
+++ b/drivers/tty/tty_io.c
@@ -2622,14 +2622,13 @@  static int tty_tiocgicount(struct tty_struct *tty, void __user *arg)
 
 static int tty_set_serial(struct tty_struct *tty, struct serial_struct *ss)
 {
-	char comm[TASK_COMM_LEN];
 	int flags;
 
 	flags = ss->flags & ASYNC_DEPRECATED;
 
 	if (flags)
-		pr_warn_ratelimited("%s: '%s' is using deprecated serial flags (with no effect): %.8x\n",
-				__func__, get_task_comm(comm, current), flags);
+		pr_warn_ratelimited("%s: '%pTN' is using deprecated serial flags (with no effect): %.8x\n",
+				__func__, current, flags);
 
 	if (!tty->ops->set_serial)
 		return -ENOTTY;