aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNamjae Jeon <linkinjeon@gmail.com>2012-12-17 19:02:56 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-12-17 20:15:22 -0500
commitf562146a3daf6aa0bbf2a1bc4b6b7da031ed5dcd (patch)
tree18a0b65b13f86a5cf464459fb81744c1431a9c6b
parent6920d996e3fee4ac5dcb7d34cb290b6f67bb69d0 (diff)
fat: notify when discard is not supported
Change fatfs so that a warning is emitted when an attempt is made to mount a filesystem with the unsupported `discard' option. ext4 aready does this: http://patchwork.ozlabs.org/patch/192668/ Signed-off-by: Namjae Jeon <linkinjeon@gmail.com> Signed-off-by: Amit Sahrawat <amit.sahrawat83@gmail.com> Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--fs/fat/inode.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index 5bafaad00530..7b186a5d51b1 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -26,6 +26,7 @@
26#include <linux/writeback.h> 26#include <linux/writeback.h>
27#include <linux/log2.h> 27#include <linux/log2.h>
28#include <linux/hash.h> 28#include <linux/hash.h>
29#include <linux/blkdev.h>
29#include <asm/unaligned.h> 30#include <asm/unaligned.h>
30#include "fat.h" 31#include "fat.h"
31 32
@@ -1431,6 +1432,14 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat,
1431 goto out_fail; 1432 goto out_fail;
1432 } 1433 }
1433 1434
1435 if (sbi->options.discard) {
1436 struct request_queue *q = bdev_get_queue(sb->s_bdev);
1437 if (!blk_queue_discard(q))
1438 fat_msg(sb, KERN_WARNING,
1439 "mounting with \"discard\" option, but "
1440 "the device does not support discard");
1441 }
1442
1434 return 0; 1443 return 0;
1435 1444
1436out_invalid: 1445out_invalid: