|
@@ -3483,7 +3483,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
|
|
|
}
|
|
|
if (test_opt(sb, DIOREAD_NOLOCK)) {
|
|
|
ext4_msg(sb, KERN_ERR, "can't mount with "
|
|
|
- "both data=journal and delalloc");
|
|
|
+ "both data=journal and dioread_nolock");
|
|
|
goto failed_mount;
|
|
|
}
|
|
|
if (test_opt(sb, DELALLOC))
|
|
@@ -4727,6 +4727,21 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data)
|
|
|
goto restore_opts;
|
|
|
}
|
|
|
|
|
|
+ if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_JOURNAL_DATA) {
|
|
|
+ if (test_opt2(sb, EXPLICIT_DELALLOC)) {
|
|
|
+ ext4_msg(sb, KERN_ERR, "can't mount with "
|
|
|
+ "both data=journal and delalloc");
|
|
|
+ err = -EINVAL;
|
|
|
+ goto restore_opts;
|
|
|
+ }
|
|
|
+ if (test_opt(sb, DIOREAD_NOLOCK)) {
|
|
|
+ ext4_msg(sb, KERN_ERR, "can't mount with "
|
|
|
+ "both data=journal and dioread_nolock");
|
|
|
+ err = -EINVAL;
|
|
|
+ goto restore_opts;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED)
|
|
|
ext4_abort(sb, "Abort forced by user");
|
|
|
|