All of lore.kernel.org
 help / color / mirror / Atom feed
From: Akira Fujita <a-fujita@rs.jp.nec.com>
To: Theodore Tso <tytso@mit.edu>, adilger.kernel@dilger.ca
Cc: ext4 development <linux-ext4@vger.kernel.org>
Subject: [BUG] e2fsprogs: mke2fs -S and e2fsck cannot recover on ext4
Date: Thu, 27 Oct 2011 16:13:16 +0900	[thread overview]
Message-ID: <4EA9048C.8050801@rs.jp.nec.com> (raw)

Hi,

If all of the superblock and backup superblocks are corrupted,
mke2fs -S which reinitializes the superblock and
group descriptors only is a last resort to recover.

However, on ext4, all of the files are lost with this way.
Because mke2fs -S for ext4 sets uninit_bg and then later e2fsck regards
all of block group as uninitialized one so that it can not recover
with bitmaps.

Of course ext3 can recover all of the files with mke2fsk -S,
ext4 should be able to recover as well.
There is a avoidance (see #3 of the reproduce steps)
but an appropriate fix would be needed for e2fsck.

* Reproduce steps and log are as follows:
  My e2fprogs was e2fsprogs-1.42-WIP

1. mkfe2s -t ext4 /dev/sdaX
2. create some files on ext4
3. mkfe2s -t ext4 -S -b 4096 /dev/sdaX 
    # This problem does not occur,
    # when we remove uninit_bg feature flag (-O ^uninit_bg).
4. e2fsck /dev/sdaX

e2fsck 1.42-WIP (16-Oct-2011)
Backing up journal inode block information.

/dev/sda8 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Root inode not allocated.  Allocate<y>? yes

/lost+found not found.  Create<y>? yes

Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  -(8483--8486) -(33026--33027)
Fix<y>? yes

Free blocks count wrong for group #0 (24286, counted=24285).
Fix<y>? yes

Free blocks count wrong (1030071, counted=1030070).
Fix<y>? yes

Free inodes count wrong for group #0 (8191, counted=8190).
Fix<y>? yes

Directories count wrong for group #0 (1, counted=2).
Fix<y>? yes

Free inodes count wrong (262143, counted=262142).
Fix<y>? yes


/dev/sda8: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda8: 2/262144 files (0.0% non-contiguous), 18506/1048576 blocks


As I reported before, e2fsck -b also can not recover with
backup superblock correctly.
# http://marc.info/?l=linux-ext4&m=131541543931429&w=2

Is there any ideas to fix these issues?

Regards,
Akira Fujita

             reply	other threads:[~2011-10-27  7:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-27  7:13 Akira Fujita [this message]
2011-10-27 20:02 ` [BUG] e2fsprogs: mke2fs -S and e2fsck cannot recover on ext4 Eric Sandeen
2011-11-02  8:18   ` Akira Fujita

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EA9048C.8050801@rs.jp.nec.com \
    --to=a-fujita@rs.jp.nec.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.