linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC 03/13] fs: Remove the number postfix of '%pD' in format string
       [not found] <20210715031533.9553-1-justin.he@arm.com>
@ 2021-07-15  3:15 ` Jia He
  2021-07-15  3:15 ` [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier Jia He
  2021-07-15  3:15 ` [PATCH RFC 08/13] fs/coredump: simplify the printing with '%pD' and '%pd' specifier Jia He
  2 siblings, 0 replies; 6+ messages in thread
From: Jia He @ 2021-07-15  3:15 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Christoph Hellwig, nd, Jia He, Alexander Viro,
	linux-fsdevel

After the behavior of '%pD' is changed to print the full path of file,
the previous number postfix of '%pD' is pointless.

Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Jia He <justin.he@arm.com>
---
 fs/exec.c       | 2 +-
 fs/ioctl.c      | 2 +-
 fs/read_write.c | 2 +-
 fs/splice.c     | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/fs/exec.c b/fs/exec.c
index 38f63451b928..a9f9de7da8ff 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -811,7 +811,7 @@ int setup_arg_pages(struct linux_binprm *bprm,
 	BUG_ON(prev != vma);
 
 	if (unlikely(vm_flags & VM_EXEC)) {
-		pr_warn_once("process '%pD4' started with executable stack\n",
+		pr_warn_once("process '%pD' started with executable stack\n",
 			     bprm->file);
 	}
 
diff --git a/fs/ioctl.c b/fs/ioctl.c
index 1e2204fa9963..80c9d3d00c8f 100644
--- a/fs/ioctl.c
+++ b/fs/ioctl.c
@@ -78,7 +78,7 @@ static int ioctl_fibmap(struct file *filp, int __user *p)
 
 	if (block > INT_MAX) {
 		error = -ERANGE;
-		pr_warn_ratelimited("[%s/%d] FS: %s File: %pD4 would truncate fibmap result\n",
+		pr_warn_ratelimited("[%s/%d] FS: %s File: %pD would truncate fibmap result\n",
 				    current->comm, task_pid_nr(current),
 				    sb->s_id, filp);
 	}
diff --git a/fs/read_write.c b/fs/read_write.c
index 9db7adf160d2..3fdb17e4b712 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -422,7 +422,7 @@ static ssize_t new_sync_read(struct file *filp, char __user *buf, size_t len, lo
 static int warn_unsupported(struct file *file, const char *op)
 {
 	pr_warn_ratelimited(
-		"kernel %s not supported for file %pD4 (pid: %d comm: %.20s)\n",
+		"kernel %s not supported for file %pD (pid: %d comm: %.20s)\n",
 		op, file, current->pid, current->comm);
 	return -EINVAL;
 }
diff --git a/fs/splice.c b/fs/splice.c
index 5dbce4dcc1a7..4b0b9029b5ca 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -751,7 +751,7 @@ EXPORT_SYMBOL(generic_splice_sendpage);
 static int warn_unsupported(struct file *file, const char *op)
 {
 	pr_debug_ratelimited(
-		"splice %s not supported for file %pD4 (pid: %d comm: %.20s)\n",
+		"splice %s not supported for file %pD (pid: %d comm: %.20s)\n",
 		op, file, current->pid, current->comm);
 	return -EINVAL;
 }
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier
       [not found] <20210715031533.9553-1-justin.he@arm.com>
  2021-07-15  3:15 ` [PATCH RFC 03/13] fs: Remove the number postfix of '%pD' in format string Jia He
@ 2021-07-15  3:15 ` Jia He
  2021-07-15 17:11   ` Darrick J. Wong
  2021-07-16  6:11   ` Christoph Hellwig
  2021-07-15  3:15 ` [PATCH RFC 08/13] fs/coredump: simplify the printing with '%pD' and '%pd' specifier Jia He
  2 siblings, 2 replies; 6+ messages in thread
From: Jia He @ 2021-07-15  3:15 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Christoph Hellwig, nd, Jia He, Darrick J. Wong,
	linux-xfs, linux-fsdevel

After the behavior of '%pD' is change to print the full path of file,
iomap_swapfile_fail() can be simplified.

Given the space with proper length would be allocated in vprintk_store(),
the kmalloc() is not required any more.

Besides, the previous number postfix of '%pD' in format string is
pointless.

Cc: Christoph Hellwig <hch@infradead.org>
Cc: "Darrick J. Wong" <djwong@kernel.org>
Cc: linux-xfs@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Suggested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Jia He <justin.he@arm.com>
---
 fs/iomap/direct-io.c | 2 +-
 fs/iomap/swapfile.c  | 8 +-------
 2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/fs/iomap/direct-io.c b/fs/iomap/direct-io.c
index 9398b8c31323..e876a5f9d888 100644
--- a/fs/iomap/direct-io.c
+++ b/fs/iomap/direct-io.c
@@ -426,7 +426,7 @@ iomap_dio_actor(struct inode *inode, loff_t pos, loff_t length,
 		 * iomap_apply() call in the DIO path, then it will see the
 		 * DELALLOC block that the page-mkwrite allocated.
 		 */
-		pr_warn_ratelimited("Direct I/O collision with buffered writes! File: %pD4 Comm: %.20s\n",
+		pr_warn_ratelimited("Direct I/O collision with buffered writes! File: %pD Comm: %.20s\n",
 				    dio->iocb->ki_filp, current->comm);
 		return -EIO;
 	default:
diff --git a/fs/iomap/swapfile.c b/fs/iomap/swapfile.c
index 6250ca6a1f85..17032c14e466 100644
--- a/fs/iomap/swapfile.c
+++ b/fs/iomap/swapfile.c
@@ -73,13 +73,7 @@ static int iomap_swapfile_add_extent(struct iomap_swapfile_info *isi)
 
 static int iomap_swapfile_fail(struct iomap_swapfile_info *isi, const char *str)
 {
-	char *buf, *p = ERR_PTR(-ENOMEM);
-
-	buf = kmalloc(PATH_MAX, GFP_KERNEL);
-	if (buf)
-		p = file_path(isi->file, buf, PATH_MAX);
-	pr_err("swapon: file %s %s\n", IS_ERR(p) ? "<unknown>" : p, str);
-	kfree(buf);
+	pr_err("swapon: file %pD %s\n", isi->file, str);
 	return -EINVAL;
 }
 
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH RFC 08/13] fs/coredump: simplify the printing with '%pD' and '%pd' specifier
       [not found] <20210715031533.9553-1-justin.he@arm.com>
  2021-07-15  3:15 ` [PATCH RFC 03/13] fs: Remove the number postfix of '%pD' in format string Jia He
  2021-07-15  3:15 ` [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier Jia He
@ 2021-07-15  3:15 ` Jia He
  2 siblings, 0 replies; 6+ messages in thread
From: Jia He @ 2021-07-15  3:15 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Christoph Hellwig, nd, Jia He, Alexander Viro,
	linux-fsdevel

After the behavior of '%pD' is changed to print the full path of file,
the printing of dentry and struct file name can be simplified.

Given the space with proper length would be allocated in vprintk_store(),
it is worthy of dropping kmalloc()/kfree() to avoid additional space
allocation.

Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Jia He <justin.he@arm.com>
---
 fs/coredump.c | 26 ++++----------------------
 1 file changed, 4 insertions(+), 22 deletions(-)

diff --git a/fs/coredump.c b/fs/coredump.c
index 07afb5ddb1c4..88063056a801 100644
--- a/fs/coredump.c
+++ b/fs/coredump.c
@@ -156,35 +156,17 @@ int cn_esc_printf(struct core_name *cn, const char *fmt, ...)
 static int cn_print_exe_file(struct core_name *cn, bool name_only)
 {
 	struct file *exe_file;
-	char *pathbuf, *path, *ptr;
 	int ret;
 
 	exe_file = get_mm_exe_file(current->mm);
 	if (!exe_file)
 		return cn_esc_printf(cn, "%s (path unknown)", current->comm);
 
-	pathbuf = kmalloc(PATH_MAX, GFP_KERNEL);
-	if (!pathbuf) {
-		ret = -ENOMEM;
-		goto put_exe_file;
-	}
-
-	path = file_path(exe_file, pathbuf, PATH_MAX);
-	if (IS_ERR(path)) {
-		ret = PTR_ERR(path);
-		goto free_buf;
-	}
-
-	if (name_only) {
-		ptr = strrchr(path, '/');
-		if (ptr)
-			path = ptr + 1;
-	}
-	ret = cn_esc_printf(cn, "%s", path);
+	if (name_only)
+		ret = cn_esc_printf(cn, "%pd", exe_file->f_path.dentry);
+	else
+		ret = cn_esc_printf(cn, "%pD", exe_file);
 
-free_buf:
-	kfree(pathbuf);
-put_exe_file:
 	fput(exe_file);
 	return ret;
 }
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier
  2021-07-15  3:15 ` [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier Jia He
@ 2021-07-15 17:11   ` Darrick J. Wong
  2021-07-16  6:11   ` Christoph Hellwig
  1 sibling, 0 replies; 6+ messages in thread
From: Darrick J. Wong @ 2021-07-15 17:11 UTC (permalink / raw)
  To: Jia He
  Cc: linux-kernel, Linus Torvalds, Christoph Hellwig, nd, linux-xfs,
	linux-fsdevel

On Thu, Jul 15, 2021 at 11:15:27AM +0800, Jia He wrote:
> After the behavior of '%pD' is change to print the full path of file,
> iomap_swapfile_fail() can be simplified.
> 
> Given the space with proper length would be allocated in vprintk_store(),
> the kmalloc() is not required any more.
> 
> Besides, the previous number postfix of '%pD' in format string is
> pointless.
> 
> Cc: Christoph Hellwig <hch@infradead.org>
> Cc: "Darrick J. Wong" <djwong@kernel.org>
> Cc: linux-xfs@vger.kernel.org
> Cc: linux-fsdevel@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Jia He <justin.he@arm.com>

Seems reasonable to me...
Acked-by: Darrick J. Wong <djwong@kernel.org>

--D

> ---
>  fs/iomap/direct-io.c | 2 +-
>  fs/iomap/swapfile.c  | 8 +-------
>  2 files changed, 2 insertions(+), 8 deletions(-)
> 
> diff --git a/fs/iomap/direct-io.c b/fs/iomap/direct-io.c
> index 9398b8c31323..e876a5f9d888 100644
> --- a/fs/iomap/direct-io.c
> +++ b/fs/iomap/direct-io.c
> @@ -426,7 +426,7 @@ iomap_dio_actor(struct inode *inode, loff_t pos, loff_t length,
>  		 * iomap_apply() call in the DIO path, then it will see the
>  		 * DELALLOC block that the page-mkwrite allocated.
>  		 */
> -		pr_warn_ratelimited("Direct I/O collision with buffered writes! File: %pD4 Comm: %.20s\n",
> +		pr_warn_ratelimited("Direct I/O collision with buffered writes! File: %pD Comm: %.20s\n",
>  				    dio->iocb->ki_filp, current->comm);
>  		return -EIO;
>  	default:
> diff --git a/fs/iomap/swapfile.c b/fs/iomap/swapfile.c
> index 6250ca6a1f85..17032c14e466 100644
> --- a/fs/iomap/swapfile.c
> +++ b/fs/iomap/swapfile.c
> @@ -73,13 +73,7 @@ static int iomap_swapfile_add_extent(struct iomap_swapfile_info *isi)
>  
>  static int iomap_swapfile_fail(struct iomap_swapfile_info *isi, const char *str)
>  {
> -	char *buf, *p = ERR_PTR(-ENOMEM);
> -
> -	buf = kmalloc(PATH_MAX, GFP_KERNEL);
> -	if (buf)
> -		p = file_path(isi->file, buf, PATH_MAX);
> -	pr_err("swapon: file %s %s\n", IS_ERR(p) ? "<unknown>" : p, str);
> -	kfree(buf);
> +	pr_err("swapon: file %pD %s\n", isi->file, str);
>  	return -EINVAL;
>  }
>  
> -- 
> 2.17.1
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier
  2021-07-15  3:15 ` [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier Jia He
  2021-07-15 17:11   ` Darrick J. Wong
@ 2021-07-16  6:11   ` Christoph Hellwig
  2021-07-16  6:17     ` Justin He
  1 sibling, 1 reply; 6+ messages in thread
From: Christoph Hellwig @ 2021-07-16  6:11 UTC (permalink / raw)
  To: Jia He
  Cc: linux-kernel, Linus Torvalds, Christoph Hellwig, nd,
	Darrick J. Wong, linux-xfs, linux-fsdevel

On Thu, Jul 15, 2021 at 11:15:27AM +0800, Jia He wrote:
> After the behavior of '%pD' is change to print the full path of file,
> iomap_swapfile_fail() can be simplified.
> 
> Given the space with proper length would be allocated in vprintk_store(),
> the kmalloc() is not required any more.
> 
> Besides, the previous number postfix of '%pD' in format string is
> pointless.

This also touched iomap_dio_actor, but the commit og only mentions
iomap_swapfile_fail.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier
  2021-07-16  6:11   ` Christoph Hellwig
@ 2021-07-16  6:17     ` Justin He
  0 siblings, 0 replies; 6+ messages in thread
From: Justin He @ 2021-07-16  6:17 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: linux-kernel@vger.kernel.org, Linus Torvalds, nd, Darrick J. Wong,
	linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org

Hi Christoph

> -----Original Message-----
> From: Christoph Hellwig <hch@infradead.org>
> Sent: Friday, July 16, 2021 2:11 PM
> To: Justin He <Justin.He@arm.com>
> Cc: linux-kernel@vger.kernel.org; Linus Torvalds <torvalds@linux-
> foundation.org>; Christoph Hellwig <hch@infradead.org>; nd <nd@arm.com>;
> Darrick J. Wong <djwong@kernel.org>; linux-xfs@vger.kernel.org; linux-
> fsdevel@vger.kernel.org
> Subject: Re: [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with
> '%pD' specifier
> 
> On Thu, Jul 15, 2021 at 11:15:27AM +0800, Jia He wrote:
> > After the behavior of '%pD' is change to print the full path of file,
> > iomap_swapfile_fail() can be simplified.
> >
> > Given the space with proper length would be allocated in vprintk_store(),
> > the kmalloc() is not required any more.
> >
> > Besides, the previous number postfix of '%pD' in format string is
> > pointless.
> 
> This also touched iomap_dio_actor, but the commit og only mentions
> iomap_swapfile_fail.
Okay, I will refine the msg in next version.
Thanks


--
Cheers,
Justin (Jia He)



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-07-16  6:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20210715031533.9553-1-justin.he@arm.com>
2021-07-15  3:15 ` [PATCH RFC 03/13] fs: Remove the number postfix of '%pD' in format string Jia He
2021-07-15  3:15 ` [PATCH RFC 07/13] iomap: simplify iomap_swapfile_fail() with '%pD' specifier Jia He
2021-07-15 17:11   ` Darrick J. Wong
2021-07-16  6:11   ` Christoph Hellwig
2021-07-16  6:17     ` Justin He
2021-07-15  3:15 ` [PATCH RFC 08/13] fs/coredump: simplify the printing with '%pD' and '%pd' specifier Jia He

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).