lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87lj51pg54.fsf@devron.myhome.or.jp>
Date:	Wed, 10 Nov 2010 20:33:27 +0900
From:	OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
To:	Alexey Fisher <bug-track@...her-privat.net>
Cc:	<linux-kernel@...r.kernel.org>, joe@...ches.com
Subject: Re: [PATCH 1/2] Idd fat_msg() to unified kernel messages for FAT fs.

Alexey Fisher <bug-track@...her-privat.net> writes:

> Add fat_msg() function to unify printkas. And use it
> to report mounts and remounts.

Sorry, I missed to see the intent of this. What's for?

Passed options and accepted options are not same, IMO, so reporting
passed option are confusable. No?

Thanks.

> new dmesg looks like this:
> [ 6264.957109] FAT-fs (sdg1): Mounted. Opts: uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush
> [ 6402.175028] FAT-fs (sdg1): re-mounted. Opts: (null)
>
> v2 - add prototype to fat.h;
>      炭se %pV; rename prefix to level;
>
> Signed-off-by: Alexey Fisher <bug-track@...her-privat.net>
> ---
>  fs/fat/fat.h   |    2 ++
>  fs/fat/inode.c |   24 ++++++++++++++++++++++++
>  2 files changed, 26 insertions(+), 0 deletions(-)
>
> diff --git a/fs/fat/fat.h b/fs/fat/fat.h
> index d75a77f..c9e4553 100644
> --- a/fs/fat/fat.h
> +++ b/fs/fat/fat.h
> @@ -345,4 +345,6 @@ void fat_cache_destroy(void);
>  /* helper for printk */
>  typedef unsigned long long	llu;
>  
> +void fat_msg(struct super_block *sb, const char *level, const char *fmt, ...);
> +
>  #endif /* !_FAT_H */
> diff --git a/fs/fat/inode.c b/fs/fat/inode.c
> index ad6998a..a4e8f26 100644
> --- a/fs/fat/inode.c
> +++ b/fs/fat/inode.c
> @@ -37,6 +37,24 @@
>  static int fat_default_codepage = CONFIG_FAT_DEFAULT_CODEPAGE;
>  static char fat_default_iocharset[] = CONFIG_FAT_DEFAULT_IOCHARSET;
>  
> +/** 
> + * fat_msg() - print preformated FAT specific messages.
> + * this function is copy of ext4_msg() from fs/ext4/super.c
> + */
> +void __attribute__ ((format (printf, 3, 4)))
> +fat_msg(struct super_block *sb, const char *level, const char *fmt, ...)
> +{
> +	struct va_format vaf;
> +	va_list args;
> +
> +	va_start(args, fmt);
> +	vaf.fmt = fmt;
> +	vaf.va = &args;
> +
> +	printk("%sFAT-fs (%s): %pV\n", level, sb->s_id, &vaf);
> +
> +	va_end(args);
> +}
>  
>  static int fat_add_cluster(struct inode *inode)
>  {
> @@ -552,6 +570,8 @@ static int fat_remount(struct super_block *sb, int *flags, char *data)
>  {
>  	struct msdos_sb_info *sbi = MSDOS_SB(sb);
>  	*flags |= MS_NODIRATIME | (sbi->options.isvfat ? 0 : MS_NOATIME);
> +
> +	fat_msg(sb, KERN_INFO, "re-mounted. Opts: %s", data);
>  	return 0;
>  }
>  
> @@ -1249,6 +1269,7 @@ int fat_fill_super(struct super_block *sb, void *data, int silent,
>  	unsigned int media;
>  	long error;
>  	char buf[50];
> +	char *orig_data = kstrdup(data, GFP_KERNEL);
>  
>  	/*
>  	 * GFP_KERNEL is ok here, because while we do hold the
> @@ -1502,6 +1523,9 @@ int fat_fill_super(struct super_block *sb, void *data, int silent,
>  		goto out_fail;
>  	}
>  
> +	fat_msg(sb, KERN_INFO, "Mounted. Opts: %s", orig_data);
> +	kfree(orig_data);
> +
>  	return 0;
>  
>  out_invalid:

-- 
OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ