diff --git a/super.c b/super.c index 391cc171f04e..5ed7165a1808 100644 --- a/super.c +++ b/super.c @@ -362,6 +362,7 @@ enum { Opt_err_ro, Opt_err, Opt_discard, + Opt_time_offset, Opt_fs, }; @@ -452,6 +453,17 @@ static int parse_options(struct super_block *sb, char *options, int silent, case Opt_discard: opts->discard = 1; break; + case Opt_time_offset: + if (match_int(&args[0], &option)) + return -EINVAL; + /* + * Make the limit 24 just in case someone + * invents something unusual. + */ + if (option < -24 * 60 || option > 24 * 60) + return -EINVAL; + opts->time_offset = option; + break; default: if (!silent) { exfat_msg(sb, KERN_ERR,