* [PATCH] fs/ext2/super.c: Use printf extension %pV
@ 2010-11-09 18:16 Joe Perches
2010-11-09 22:47 ` Jan Kara
0 siblings, 1 reply; 2+ messages in thread
From: Joe Perches @ 2010-11-09 18:16 UTC (permalink / raw)
To: Jan Kara; +Cc: linux-ext4, linux-kernel
Using %pV reduces the number of printk calls and
eliminates any possible message interleaving from
other printk calls.
Signed-off-by: Joe Perches <joe@perches.com>
---
fs/ext2/super.c | 25 +++++++++++++++++--------
1 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/fs/ext2/super.c b/fs/ext2/super.c
index d89e0b6..27822b9 100644
--- a/fs/ext2/super.c
+++ b/fs/ext2/super.c
@@ -43,9 +43,10 @@ static int ext2_remount (struct super_block * sb, int * flags, char * data);
static int ext2_statfs (struct dentry * dentry, struct kstatfs * buf);
static int ext2_sync_fs(struct super_block *sb, int wait);
-void ext2_error (struct super_block * sb, const char * function,
- const char * fmt, ...)
+void ext2_error(struct super_block *sb, const char *function,
+ const char *fmt, ...)
{
+ struct va_format vaf;
va_list args;
struct ext2_sb_info *sbi = EXT2_SB(sb);
struct ext2_super_block *es = sbi->s_es;
@@ -59,9 +60,13 @@ void ext2_error (struct super_block * sb, const char * function,
}
va_start(args, fmt);
- printk(KERN_CRIT "EXT2-fs (%s): error: %s: ", sb->s_id, function);
- vprintk(fmt, args);
- printk("\n");
+
+ vaf.fmt = fmt;
+ vaf.va = &args;
+
+ printk(KERN_CRIT "EXT2-fs (%s): error: %s: %pV\n",
+ sb->s_id, function, &vaf);
+
va_end(args);
if (test_opt(sb, ERRORS_PANIC))
@@ -76,12 +81,16 @@ void ext2_error (struct super_block * sb, const char * function,
void ext2_msg(struct super_block *sb, const char *prefix,
const char *fmt, ...)
{
+ struct va_format vaf;
va_list args;
va_start(args, fmt);
- printk("%sEXT2-fs (%s): ", prefix, sb->s_id);
- vprintk(fmt, args);
- printk("\n");
+
+ vaf.fmt = fmt;
+ vaf.va = &args;
+
+ printk("%sEXT2-fs (%s): %pV\n", prefix, sb->s_id, &vaf);
+
va_end(args);
}
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] fs/ext2/super.c: Use printf extension %pV
2010-11-09 18:16 [PATCH] fs/ext2/super.c: Use printf extension %pV Joe Perches
@ 2010-11-09 22:47 ` Jan Kara
0 siblings, 0 replies; 2+ messages in thread
From: Jan Kara @ 2010-11-09 22:47 UTC (permalink / raw)
To: Joe Perches; +Cc: Jan Kara, linux-ext4, linux-kernel
On Tue 09-11-10 10:16:03, Joe Perches wrote:
> Using %pV reduces the number of printk calls and
> eliminates any possible message interleaving from
> other printk calls.
Thanks. Merged.
Honza
>
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
> fs/ext2/super.c | 25 +++++++++++++++++--------
> 1 files changed, 17 insertions(+), 8 deletions(-)
>
> diff --git a/fs/ext2/super.c b/fs/ext2/super.c
> index d89e0b6..27822b9 100644
> --- a/fs/ext2/super.c
> +++ b/fs/ext2/super.c
> @@ -43,9 +43,10 @@ static int ext2_remount (struct super_block * sb, int * flags, char * data);
> static int ext2_statfs (struct dentry * dentry, struct kstatfs * buf);
> static int ext2_sync_fs(struct super_block *sb, int wait);
>
> -void ext2_error (struct super_block * sb, const char * function,
> - const char * fmt, ...)
> +void ext2_error(struct super_block *sb, const char *function,
> + const char *fmt, ...)
> {
> + struct va_format vaf;
> va_list args;
> struct ext2_sb_info *sbi = EXT2_SB(sb);
> struct ext2_super_block *es = sbi->s_es;
> @@ -59,9 +60,13 @@ void ext2_error (struct super_block * sb, const char * function,
> }
>
> va_start(args, fmt);
> - printk(KERN_CRIT "EXT2-fs (%s): error: %s: ", sb->s_id, function);
> - vprintk(fmt, args);
> - printk("\n");
> +
> + vaf.fmt = fmt;
> + vaf.va = &args;
> +
> + printk(KERN_CRIT "EXT2-fs (%s): error: %s: %pV\n",
> + sb->s_id, function, &vaf);
> +
> va_end(args);
>
> if (test_opt(sb, ERRORS_PANIC))
> @@ -76,12 +81,16 @@ void ext2_error (struct super_block * sb, const char * function,
> void ext2_msg(struct super_block *sb, const char *prefix,
> const char *fmt, ...)
> {
> + struct va_format vaf;
> va_list args;
>
> va_start(args, fmt);
> - printk("%sEXT2-fs (%s): ", prefix, sb->s_id);
> - vprintk(fmt, args);
> - printk("\n");
> +
> + vaf.fmt = fmt;
> + vaf.va = &args;
> +
> + printk("%sEXT2-fs (%s): %pV\n", prefix, sb->s_id, &vaf);
> +
> va_end(args);
> }
>
>
>
--
Jan Kara <jack@suse.cz>
SUSE Labs, CR
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-11-09 22:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-09 18:16 [PATCH] fs/ext2/super.c: Use printf extension %pV Joe Perches
2010-11-09 22:47 ` Jan Kara
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).