I'm a little confused by e2fsck's time fudge current behavior, vs its apparent intent. We do: if ( ... && fs->super->s_mtime > (__u32) ctx->now) { pctx.num = fs->super->s_mtime; problem = PR_0_FUTURE_SB_LAST_MOUNT; if (fs->super->s_mtime <= (__u32) ctx->now + ctx->time_fudge) problem = PR_0_FUTURE_SB_LAST_MOUNT_FUDGED; if (fix_problem(ctx, problem, &pctx)) { fs->super->s_mtime = ctx->now; fs->flags |= EXT2_FLAG_DIRTY; } So if we are inside the time_fudge value we simply change the problem, but PR_0_FUTURE_SB_LAST_MOUNT_FUDGED behaves exactly like PR_0_FUTURE_SB_LAST_MOUNT, other than the message: /* Last mount time is in the future (fudged) */ { PR_0_FUTURE_SB_LAST_MOUNT_FUDGED, N_("@S last mount time is in the future.\n\t(by less than a day, " "probably due to the hardware clock being incorrectly set) "), PROMPT_FIX, PR_PREEN_OK | PR_NO_OK }, vs: /* Last mount time is in the future */ { PR_0_FUTURE_SB_LAST_MOUNT, N_("@S last mount time (%t,\n\tnow = %T) is in the future.\n"), PROMPT_FIX, PR_PREEN_OK | PR_NO_OK }, So unless I'm missing something, the whole fudge_time dance does nothing except change the message, and after reading lots of words in the e2fsck.conf manpage ;) this bit seems relevant as to the intent: > So by default, we allow the superblock times to > be fudged by up to 24 hours. I had the impression that "allow" meant "ignore" but this still triggers exactly the same action and correction. Is that as intended? I'll send a patch do a printf and take no other action if inside the fudge_time window, if that seems like the right thing to do. Thanks, -Eric -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html