--- e2fsck/unix.c 2012-09-22 20:57:14.000000000 -0400 +++ e2fsck/unix.c 2013-01-20 11:43:26.000000000 -0500 @@ -237,20 +237,19 @@ } /* - * If the filesystem isn't mounted, or it's the root - * filesystem and it's mounted read-only, and we're not doing - * a read/write check, then everything's fine. + * If the filesystem isn't mounted, or it's mounted read-only, and we're not + * doing a read/write check, then everything's fine. */ if ((!(ctx->mount_flags & (EXT2_MF_MOUNTED | EXT2_MF_BUSY))) || - ((ctx->mount_flags & EXT2_MF_ISROOT) && - (ctx->mount_flags & EXT2_MF_READONLY) && - !(ctx->options & E2F_OPT_WRITECHECK))) - return; - - if (((ctx->options & E2F_OPT_READONLY) || - ((ctx->options & E2F_OPT_FORCE) && - (ctx->mount_flags & EXT2_MF_READONLY))) && - !(ctx->options & E2F_OPT_WRITECHECK)) { + (((ctx->options & E2F_OPT_READONLY) || + (ctx->mount_flags & EXT2_MF_READONLY)) && + !(ctx->options & E2F_OPT_WRITECHECK))) { + /* + * If the filesystem isn't root and it is mounted, let's display a + * warning + */ + if (!(ctx->mount_flags & EXT2_MF_ISROOT) && + (ctx->mount_flags & (EXT2_MF_MOUNTED | EXT2_MF_BUSY))) log_out(ctx, _("Warning! %s is %s.\n"), ctx->filesystem_name, ctx->mount_flags & EXT2_MF_MOUNTED ? @@ -1256,8 +1255,7 @@ flags |= EXT2_FLAG_64BITS; if ((ctx->options & E2F_OPT_READONLY) == 0) { flags |= EXT2_FLAG_RW; - if (!(ctx->mount_flags & EXT2_MF_ISROOT && - ctx->mount_flags & EXT2_MF_READONLY)) + if (!(ctx->mount_flags & EXT2_MF_READONLY)) flags |= EXT2_FLAG_EXCLUSIVE; if ((ctx->mount_flags & EXT2_MF_READONLY) && (ctx->options & E2F_OPT_FORCE))