public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [git pull] fatfs-2.6 patches
@ 2009-06-15 18:58 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2009-06-15 18:58 UTC (permalink / raw)
  To: Linus Torvalds, linux-kernel

Hi,

Those add the "errors=" option like ext*, and cleanup of ioctl.

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

Christoph Hellwig (1):
      fat: split fat_generic_ioctl

Denis Karpov (1):
      FAT: add 'errors' mount option

 Documentation/filesystems/vfat.txt |    5 +
 fs/fat/cache.c                     |    6 +-
 fs/fat/dir.c                       |    2 +-
 fs/fat/fat.h                       |    7 +-
 fs/fat/fatent.c                    |    4 +-
 fs/fat/file.c                      |  184 ++++++++++++++++++-----------------
 fs/fat/inode.c                     |   28 +++++-
 fs/fat/misc.c                      |   22 +++--
 fs/fat/namei_msdos.c               |    2 +-
 fs/fat/namei_vfat.c                |    2 +-
 10 files changed, 152 insertions(+), 110 deletions(-)
-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2009-06-20 14:24 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2009-06-20 14:24 UTC (permalink / raw)
  To: Linus Torvalds, linux-kernel

Hi,

This patch fixes the mistake of probably copy-and-paste.
[since the patch is small, it is attached for review]

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

OGAWA Hirofumi (1):
      fat: Fix the removal of opts->fs_dmask

 fs/fat/inode.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


diff -puN fs/fat/inode.c~fat-fix-dmask-removal fs/fat/inode.c
--- linux-2.6/fs/fat/inode.c~fat-fix-dmask-removal	2009-06-20 21:20:43.000000000 +0900
+++ linux-2.6-hirofumi/fs/fat/inode.c	2009-06-20 21:49:36.000000000 +0900
@@ -966,7 +966,7 @@ static int parse_options(char *options, 
 
 	opts->fs_uid = current_uid();
 	opts->fs_gid = current_gid();
-	opts->fs_fmask = current_umask();
+	opts->fs_fmask = opts->fs_dmask = current_umask();
 	opts->allow_utime = -1;
 	opts->codepage = fat_default_codepage;
 	opts->iocharset = fat_default_iocharset;
_
-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2009-09-25 14:02 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2009-09-25 14:02 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi,

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

OGAWA Hirofumi (2):
      fat/nls: Fix handling of utf8 invalid char
      fat: Check s_dirt in fat_sync_fs()

Paul Wise (1):
      vfat: change the default from shortname=lower to shortname=mixed

 Documentation/filesystems/vfat.txt |    2 +-
 fs/fat/fat.h                       |    2 +-
 fs/fat/inode.c                     |   18 +++++++++++-------
 fs/fat/misc.c                      |    8 +++++---
 fs/fat/namei_vfat.c                |   15 ++++-----------
 fs/nls/nls_base.c                  |    8 ++++----
 6 files changed, 26 insertions(+), 27 deletions(-)
-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2009-12-16  5:48 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2009-12-16  5:48 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi,

This adds "discard" option to enable discard stuff, and disable it by
default instead. Since one patch, the patch was attached for review.

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

Christoph Hellwig (1):
      fat: make discard a mount option

 fs/fat/fat.h    |    3 ++-
 fs/fat/fatent.c |   25 +++++++++++++++----------
 fs/fat/inode.c  |    8 +++++++-
 3 files changed, 24 insertions(+), 12 deletions(-)

-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

Subject: [PATCH] fat: make discard a mount option

Currently shipping discard capable SSDs and arrays have rather sub-optimal
implementations of the command and can the use of it can cause massive
slowdowns.  Make issueing these commands option as it's already in btrfs
and gfs2.

Signed-off-by: Christoph Hellwig <hch@lst.de>
[hirofumi@mail.parknet.co.jp: tweaks, and add "discard" to fat_show_options]
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
---
 fs/fat/fat.h    |    3 ++-
 fs/fat/fatent.c |   25 +++++++++++++++----------
 fs/fat/inode.c  |    8 +++++++-
 3 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/fs/fat/fat.h b/fs/fat/fat.h
index 7db0979..e6efdfa 100644
--- a/fs/fat/fat.h
+++ b/fs/fat/fat.h
@@ -44,7 +44,8 @@ struct fat_mount_options {
 		 nocase:1,	  /* Does this need case conversion? 0=need case conversion*/
 		 usefree:1,	  /* Use free_clusters for FAT32 */
 		 tz_utc:1,	  /* Filesystem timestamps are in UTC */
-		 rodir:1;	  /* allow ATTR_RO for directory */
+		 rodir:1,	  /* allow ATTR_RO for directory */
+		 discard:1;	  /* Issue discard requests on deletions */
 };
 
 #define FAT_HASH_BITS	8
diff --git a/fs/fat/fatent.c b/fs/fat/fatent.c
index a810377..81184d3 100644
--- a/fs/fat/fatent.c
+++ b/fs/fat/fatent.c
@@ -566,16 +566,21 @@ int fat_free_clusters(struct inode *inode, int cluster)
 			goto error;
 		}
 
-		/* 
-		 * Issue discard for the sectors we no longer care about,
-		 * batching contiguous clusters into one request
-		 */
-		if (cluster != fatent.entry + 1) {
-			int nr_clus = fatent.entry - first_cl + 1;
-
-			sb_issue_discard(sb, fat_clus_to_blknr(sbi, first_cl),
-					 nr_clus * sbi->sec_per_clus);
-			first_cl = cluster;
+		if (sbi->options.discard) {
+			/*
+			 * Issue discard for the sectors we no longer
+			 * care about, batching contiguous clusters
+			 * into one request
+			 */
+			if (cluster != fatent.entry + 1) {
+				int nr_clus = fatent.entry - first_cl + 1;
+
+				sb_issue_discard(sb,
+					fat_clus_to_blknr(sbi, first_cl),
+					nr_clus * sbi->sec_per_clus);
+
+				first_cl = cluster;
+			}
 		}
 
 		ops->ent_put(&fatent, FAT_ENT_FREE);
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index 76b7961..14da530 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -858,6 +858,8 @@ static int fat_show_options(struct seq_file *m, struct vfsmount *mnt)
 		seq_puts(m, ",errors=panic");
 	else
 		seq_puts(m, ",errors=remount-ro");
+	if (opts->discard)
+		seq_puts(m, ",discard");
 
 	return 0;
 }
@@ -871,7 +873,7 @@ enum {
 	Opt_shortname_winnt, Opt_shortname_mixed, Opt_utf8_no, Opt_utf8_yes,
 	Opt_uni_xl_no, Opt_uni_xl_yes, Opt_nonumtail_no, Opt_nonumtail_yes,
 	Opt_obsolate, Opt_flush, Opt_tz_utc, Opt_rodir, Opt_err_cont,
-	Opt_err_panic, Opt_err_ro, Opt_err,
+	Opt_err_panic, Opt_err_ro, Opt_discard, Opt_err,
 };
 
 static const match_table_t fat_tokens = {
@@ -899,6 +901,7 @@ static const match_table_t fat_tokens = {
 	{Opt_err_cont, "errors=continue"},
 	{Opt_err_panic, "errors=panic"},
 	{Opt_err_ro, "errors=remount-ro"},
+	{Opt_discard, "discard"},
 	{Opt_obsolate, "conv=binary"},
 	{Opt_obsolate, "conv=text"},
 	{Opt_obsolate, "conv=auto"},
@@ -1136,6 +1139,9 @@ static int parse_options(char *options, int is_vfat, int silent, int *debug,
 		case Opt_rodir:
 			opts->rodir = 1;
 			break;
+		case Opt_discard:
+			opts->discard = 1;
+			break;
 
 		/* obsolete mount options */
 		case Opt_obsolate:
-- 
1.6.5.6.dirty


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

* [git pull] fatfs-2.6 patches
@ 2010-05-22 18:22 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2010-05-22 18:22 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

Andy Shevchenko (1):
      fat: use pack_hex_byte() instead of custom one

Arnd Bergmann (1):
      fat: convert to unlocked_ioctl

OGAWA Hirofumi (1):
      fat: Cleanup nls_unload() usage

 fs/fat/dir.c   |   28 ++++++++++++----------------
 fs/fat/fat.h   |    4 ++--
 fs/fat/file.c  |   19 ++++++++++++++++---
 fs/fat/inode.c |    6 ++----
 4 files changed, 32 insertions(+), 25 deletions(-)

Thanks.
-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2011-05-24  1:09 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2011-05-24  1:09 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi,

Those are cleanup and fixes patches.

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

Alexey Fisher (3):
      fat: Convert fat_fs_error to use %pV
      fat: Add fat_msg() function for preformated FAT messages
      fat: Replace all printk with fat_msg()

OGAWA Hirofumi (3):
      fat: use new setup() for ->dir_ops too
      fat: Fix possible null deref in fat_cache_add()
      fat: Fix statfs->f_namelen

 fs/fat/cache.c       |    7 +++++
 fs/fat/dir.c         |   32 +++++++++++----------
 fs/fat/fat.h         |   15 +++++-----
 fs/fat/fatent.c      |    4 +-
 fs/fat/inode.c       |   74 ++++++++++++++++++++++++-------------------------
 fs/fat/misc.c        |   44 ++++++++++++++++++++---------
 fs/fat/namei_msdos.c |    4 +-
 fs/fat/namei_vfat.c  |    4 +-
 8 files changed, 104 insertions(+), 80 deletions(-)

-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2011-06-06 11:20 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2011-06-06 11:20 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi,

This is bug fix patch.

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

OGAWA Hirofumi (1):
      fat: Fix corrupt inode flags when remove ATTR_SYS flag

 fs/fat/file.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

* [git pull] fatfs-2.6 patches
@ 2011-08-18 14:58 OGAWA Hirofumi
  0 siblings, 0 replies; 8+ messages in thread
From: OGAWA Hirofumi @ 2011-08-18 14:58 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi,

Those are small fixes, and one line change to allow 4GB file size.

Please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6.git master

to get these changes:

Jonas Aberg (1):
      fat: fix build warning

Mihai Moldovan (1):
      fat: fix utf8 iocharset warning message

Namjae Jeon (1):
      fat: fat16 support maximum 4GB file/vol size as WinXP or 7.

 fs/fat/dir.c   |    2 +-
 fs/fat/inode.c |    7 +++----
 2 files changed, 4 insertions(+), 5 deletions(-)

-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

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

end of thread, other threads:[~2011-08-18 14:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-15 18:58 [git pull] fatfs-2.6 patches OGAWA Hirofumi
  -- strict thread matches above, loose matches on Subject: below --
2009-06-20 14:24 OGAWA Hirofumi
2009-09-25 14:02 OGAWA Hirofumi
2009-12-16  5:48 OGAWA Hirofumi
2010-05-22 18:22 OGAWA Hirofumi
2011-05-24  1:09 OGAWA Hirofumi
2011-06-06 11:20 OGAWA Hirofumi
2011-08-18 14:58 OGAWA Hirofumi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox