[trivial PATCH] vfs: fs_context: Deduplicate logging calls to reduce object size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Deduplicate the logging calls by using a temporary for KERN_<LEVEL>
with miscellaneous source code neatening of the output calls.

$ size fs/fs_context.o* #defconfig x86_64
   text	   data	    bss	    dec	    hex	filename
   6727	    192	      0	   6919	   1b07	fs/fs_context.o.new
   6802	    192	      0	   6994	   1b52	fs/fs_context.o.old

Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
---
 fs/fs_context.c | 27 +++++++++++++++++----------
 1 file changed, 17 insertions(+), 10 deletions(-)

diff --git a/fs/fs_context.c b/fs/fs_context.c
index 2834d1afa6e80..2a6ff20da40f5 100644
--- a/fs/fs_context.c
+++ b/fs/fs_context.c
@@ -359,33 +359,40 @@ EXPORT_SYMBOL(vfs_dup_fs_context);
  * @fc: The filesystem context to log to.
  * @fmt: The format of the buffer.
  */
-void logfc(struct fc_log *log, const char *prefix, char level, const char *fmt, ...)
+void logfc(struct fc_log *log, const char *prefix, char level,
+	   const char *fmt, ...)
 {
 	va_list va;
 	struct va_format vaf = {.fmt = fmt, .va = &va};
 
 	va_start(va, fmt);
 	if (!log) {
+		const char *kern_level;
+
 		switch (level) {
 		case 'w':
-			printk(KERN_WARNING "%s%s%pV\n", prefix ? prefix : "",
-						prefix ? ": " : "", &vaf);
+			kern_level = KERN_WARNING;
 			break;
 		case 'e':
-			printk(KERN_ERR "%s%s%pV\n", prefix ? prefix : "",
-						prefix ? ": " : "", &vaf);
+			kern_level = KERN_ERR;
 			break;
 		default:
-			printk(KERN_NOTICE "%s%s%pV\n", prefix ? prefix : "",
-						prefix ? ": " : "", &vaf);
+			kern_level = KERN_NOTICE;
 			break;
 		}
+		printk("%s%s%s%pV\n",
+		       kern_level,
+		       prefix ? prefix : "",
+		       prefix ? ": " : "",
+		       &vaf);
 	} else {
 		unsigned int logsize = ARRAY_SIZE(log->buffer);
 		u8 index;
-		char *q = kasprintf(GFP_KERNEL, "%c %s%s%pV\n", level,
-						prefix ? prefix : "",
-						prefix ? ": " : "", &vaf);
+		char *q = kasprintf(GFP_KERNEL, "%c %s%s%pV\n",
+				    level,
+				    prefix ? prefix : "",
+				    prefix ? ": " : "",
+				    &vaf);
 
 		index = log->head & (logsize - 1);
 		BUILD_BUG_ON(sizeof(log->head) != sizeof(u8) ||





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux