|
@@ -26,6 +26,7 @@
|
|
|
#include <linux/writeback.h>
|
|
|
#include <linux/log2.h>
|
|
|
#include <linux/hash.h>
|
|
|
+#include <linux/blkdev.h>
|
|
|
#include <asm/unaligned.h>
|
|
|
#include "fat.h"
|
|
|
|
|
@@ -1431,6 +1432,14 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat,
|
|
|
goto out_fail;
|
|
|
}
|
|
|
|
|
|
+ if (sbi->options.discard) {
|
|
|
+ struct request_queue *q = bdev_get_queue(sb->s_bdev);
|
|
|
+ if (!blk_queue_discard(q))
|
|
|
+ fat_msg(sb, KERN_WARNING,
|
|
|
+ "mounting with \"discard\" option, but "
|
|
|
+ "the device does not support discard");
|
|
|
+ }
|
|
|
+
|
|
|
return 0;
|
|
|
|
|
|
out_invalid:
|