Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Does e2fsprogs-1.40.6 support ext4dev fs?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Mon Feb 11, 2008 5:47 pm    Post subject: Does e2fsprogs-1.40.6 support ext4dev fs? Reply with quote

Decided to give ext4dev fs another try when I saw that e2fsprogs-1.40.6 had its blkid library updated to identify ext4/ext4dev.

Steps I took before I actually booted my Gentoo os:

1. reformatted partition from Slackware (which also has e2fsprogs-1.40.6) with mkfs.ext3 -j /dev/sda7
2. mounted Gentoo partition with mount -t ext4dev -o extents /dev/sda7
3. extracted saved contents from Gentoo tarball to sda7, including 2.6.24.1 kernel with ext3 & ext4dev support
4. updated fstab: /dev/sda7 / ext4dev defaults,noatime,nodiratime 0 1
5. made a symbolic link from /sbin/e2fsck to /sbin/fsck.ext4dev

when I booted into Gentoo I got the dreaded

e2fsck 1.40.6
e2fsck: Filesystem has unsupported feature(s) while trying to open /dev/sda7

The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>

I rebooted into Slackware and tried e2fsck /dev/sda7 and received same message.

Was I mistaken to believe e2fsprogs 1.40.6 supports e2fscking a partition mounted with ext4dev with extents?

Running tune2fs -l /dev/sda7 from Slackware gives:

tune2fs 1.40.6 (09-Feb-2008)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: c8627a22-7b71-411c-a2e2-7db26c306097
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype extents sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 524288
Block count: 2096474
Reserved block count: 0
Free blocks: 1469294
Free inodes: 262904
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 511
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Filesystem created: Mon Feb 11 10:07:11 2008
Last mount time: Mon Feb 11 10:10:21 2008
Last write time: Mon Feb 11 10:18:17 2008
Mount count: 1
Maximum mount count: 50
Last checked: Mon Feb 11 10:07:11 2008
Check interval: 15552000 (6 months)
Next check after: Sat Aug 9 10:07:11 2008
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 1ae6db3e-46df-4399-8fa7-826d494f06d9
Journal backup: inode blocks

So tune2fs 1.40.6 appears to recognize extents.

Any suggestions??

Did I miss a step here? I was careful to mount the newly formatted sda7 partition with the extent flag before I untarred Gentoo into it, to ensure that all the new files would have extents, otherwise it would still be an ext3 fs.

Thanks,
Gary :(
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Mon Feb 11, 2008 6:41 pm    Post subject: Reply with quote

Update-

as expected trying to run e2fsck on ext4dev corrupted superblock.

Redid everything, same steps except turned off fscking in fstab.

Without e2fscking, gentoo boots up fine on ext4dev. Memory and cpu usage is ever so slightly higher. On a clean reboot using init3 ext3 would quickly settle down to 0.0sys and 0.0usr with only an occasional blip. Ext4dev stays at 0.2 -0.3% system cpu usage. Memory is only 100-200k higher.

Don't like not having a functioning e2fsck though.

Any ideas on fixing that without degrading to older 1.39-tyt-3 version of e2fsprogs?

Gary :?
Back to top
View user's profile Send private message
Thargor
Apprentice
Apprentice


Joined: 23 Dec 2005
Posts: 239
Location: Bamberg/Germany

PostPosted: Mon Feb 11, 2008 8:57 pm    Post subject: Reply with quote

No, e2fsprogs-1.40.* does not support ext4dev/ext4.
The only way is to either use a patched 1.39 version or the "pu" branch from e2fsprogs-git.
I _really_ encourage everyone to do the first because the git is likely to be broken.
Strictly speaking, yesterday, someone reported on irc that he broke his fs by using the git version.
_________________
Ideas are bulletproof
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Tue Feb 12, 2008 12:42 am    Post subject: Reply with quote

Thanks for the info, Thargor

Been awhile since I used git. I would imagine the git version is 1.40.6 patched for ext4/ext4dev support? Any quick link to a git tutorial? Thought I would try the git version before I downgraded to 1.39-3.

Thanks,
Gary :)
Back to top
View user's profile Send private message
skellr
l33t
l33t


Joined: 18 Jun 2005
Posts: 976
Location: The Village, Portmeirion

PostPosted: Tue Feb 12, 2008 1:43 am    Post subject: Reply with quote

http://ext4.wiki.kernel.org/index.php/Ext4_Howto

Have fun

Edit, ohh yeah, ss and com_err are also split seperate from e2fsprogs.
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Tue Feb 12, 2008 2:16 am    Post subject: Reply with quote

Thanks for the link to ext4wiki, Rainskellar,

Followed the steps from the wiki.

It doesn't seem like the pu branch is any different than the other branch. When I did the "git-pull" it says everything was up-to-date in the git/e2fsprogs directory. Built the contents with ./configure && make && make install and tried e2fsck -f /dev/sda7 and got the same error:

e2fsck: Filesystem has unsupported feature(s) while trying to open /dev/sda7

The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>


Is this .git version ext4dev capable or is it just the most up to date version of 1.40.6? And do I need to edit com_err or ss?

Help!

Gary :(
Back to top
View user's profile Send private message
skellr
l33t
l33t


Joined: 18 Jun 2005
Posts: 976
Location: The Village, Portmeirion

PostPosted: Tue Feb 12, 2008 3:31 am    Post subject: Reply with quote

hmm, Is the old fsck still in path before the new one?

Keep in mind that mount (util-linux) is linked against libblkid.so.1 and libuuid.so.1, both provided by e2fsprogs, things could get ugly.

I can't really help much as I don't run fsck on ext4dev, it always did more bad than god so I just gave up on it. :lol: But that was some time ago.
Back to top
View user's profile Send private message
micr0c0sm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Oct 2005
Posts: 148
Location: New York

PostPosted: Tue Feb 12, 2008 3:32 am    Post subject: Reply with quote

paludis:
Code:

cd /var/paludis/repositories/local
echo ">=sys-fs/e2fsprogs-1.40.0" >> /etc/paludis/package_mask.conf
wget http://www.dirrt.org/gentoo/ext4.tar.bz2
tar xvjf ext4.tar.bz2
paludis -u e2fsprogs
paludis -i e2fsprogs


portage:
Code:

cd /usr/portage/repositories/local
echo ">=sys-fs/e2fsprogs-1.40.0" >> /etc/portage/package.mask
wget http://www.dirrt.org/gentoo/ext4.tar.bz2
tar xvjf ext4.tar.bz2
emerge -C e2fsprogs
emerge e2fsprogs


Tell me if there are any prolems (note you should have already setup a local repository).
Back to top
View user's profile Send private message
skellr
l33t
l33t


Joined: 18 Jun 2005
Posts: 976
Location: The Village, Portmeirion

PostPosted: Tue Feb 12, 2008 8:34 am    Post subject: Reply with quote

Thanks.

HEADCAT made my day. :)
Back to top
View user's profile Send private message
dodo1122
Guru
Guru


Joined: 02 Sep 2006
Posts: 347
Location: York, England

PostPosted: Tue Feb 12, 2008 4:21 pm    Post subject: Reply with quote

As to the git version, it was me who broke his ext4 partition while fsck'ing with the unstable e2fsck ;P
All you have to do is git clone the repo, then git checkout -b pu origin/pu, and you'll be in the right branch. Then you compile it ;P
But i wouldn't recommend it, since it didn't work for me. Could be that my filesystem was too broken though :P. I had ext4 on /, and system freezed, so i had to reboot, and the kernel would no longer be able to mount / (kernel panic). I got some pretty heavy errors while fsck'ing is well. e2fsck ended up correcting things in a loop though (i left it for 2h and it was still fixing the same inodes >_>), so the pu branch is not really that stable ;P.

dodo
_________________
#zen-sources on irc.rizon.net
Back to top
View user's profile Send private message
Dottout
l33t
l33t


Joined: 07 Mar 2006
Posts: 882

PostPosted: Wed Feb 13, 2008 1:03 pm    Post subject: Reply with quote

I had the loop problem also with older versions, each time I had to rm those files and start again fsck. dirty, I know it.

edit: btw, Im using e2fsprogs from sabayon overlay, it applies this http://svn.sabayonlinux.org/overlay//sys-fs/e2fsprogs/files/e2fsprogs-1.40-extents.patch patch to add extents support
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Fri Feb 15, 2008 6:48 pm    Post subject: Reply with quote

Dodo1122,

When I tried the e2fsprogs git repository there didn't seem to be a difference between the main branch and the -pu branch. Followed the instructions here, but neither branch could handle e2fscking ext4dev fs with extents enabled.

The way I resolved it was to format my gentoo partition with e2fsprogs-1.40.6 which gave me the 256-byte inodes and ext_attr by default. I untarred my data onto it, turned off e2fscking and booted into Gentoo. Then I downgraded to e2fsprogs-1.39-tyt3 and turned on e2fscking.

A LOT of errors on a forced e2fsck after a reboot but finally everything was fixed. I think ext4dev is quicker, particularly on syncing the portage tree.

Any suggestions on how I might get the -pu branch of the git repository to handle ext4dev e2fscking? I would love to have a patched fully functioning e2fsprogs-1.40.6 version.

Thanks,
Gary

P.S. All this was done with 2.6.24.2 vanilla-sources kernel on a 99% x86 stable system.
Back to top
View user's profile Send private message
dodo1122
Guru
Guru


Joined: 02 Sep 2006
Posts: 347
Location: York, England

PostPosted: Fri Feb 15, 2008 8:03 pm    Post subject: Reply with quote

SlackwareInAZ wrote:
Dodo1122,

When I tried the e2fsprogs git repository there didn't seem to be a difference between the main branch and the -pu branch. Followed the instructions here, but neither branch could handle e2fscking ext4dev fs with extents enabled.

The way I resolved it was to format my gentoo partition with e2fsprogs-1.40.6 which gave me the 256-byte inodes and ext_attr by default. I untarred my data onto it, turned off e2fscking and booted into Gentoo. Then I downgraded to e2fsprogs-1.39-tyt3 and turned on e2fscking.

A LOT of errors on a forced e2fsck after a reboot but finally everything was fixed. I think ext4dev is quicker, particularly on syncing the portage tree.

Any suggestions on how I might get the -pu branch of the git repository to handle ext4dev e2fscking? I would love to have a patched fully functioning e2fsprogs-1.40.6 version.

Thanks,
Gary

P.S. All this was done with 2.6.24.2 vanilla-sources kernel on a 99% x86 stable system.


Use e2fsprogs-interim branch. It apparently works really good with ext4, and supports mballoc, but does not support 64-bit sized ext4 yet (noone uses a partition that big anyway). It is also based on 1.40.6 :).

dodo
_________________
#zen-sources on irc.rizon.net
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Fri Feb 15, 2008 8:37 pm    Post subject: Reply with quote

dodo1122,

followed the ext4wiki instructions substituting interim for pu branch.

In both cases whenever I switch branches, either from the main to pu, or from the main to interim, then do a git pull, it always since the branch is up to date. What changes occur when you switch from one branch to another, since in my case nothing seems to happen.

Is there a way to git clone to the interim branch so that I know the my tree is the interim branch?

Thanks,
Gary
Back to top
View user's profile Send private message
creidiki
Apprentice
Apprentice


Joined: 23 Mar 2007
Posts: 283
Location: Varese (Italy)

PostPosted: Fri Feb 15, 2008 8:55 pm    Post subject: Reply with quote

when you do git pull it dls all data for all branches.

git checkout <branch> puts you in the branch you choose of the revision you have locally.

so yes, it would say that.
_________________
'((eINIT) (soor overlay))
Back to top
View user's profile Send private message
dodo1122
Guru
Guru


Joined: 02 Sep 2006
Posts: 347
Location: York, England

PostPosted: Fri Feb 15, 2008 9:15 pm    Post subject: Reply with quote

git checkout -b e2fsprogs-interim origin/e2fsprogs-interim

^ will do it; you'll be in e2fsprogs-interim branch, and all you have to do it compile ;P


dodo
_________________
#zen-sources on irc.rizon.net
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Fri Feb 15, 2008 11:24 pm    Post subject: Reply with quote

dodo1122,

tried your last instructions as follows:

gentoo sda8 # git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
Initialized empty Git repository in /sda8/e2fsprogs/.git/
remote: Counting objects: 22079, done.
remote: Compressing objects: 100% (4480/4480), done.
Indexing 22079 objects...
remote: Total 22079 (delta 17667), reused 21744 (delta 17388)
100% (22079/22079) done
Resolving 17667 deltas...
100% (17667/17667) done
gentoo sda8 # cd /sda8/e2fsprogs
gentoo e2fsprogs # git checkout -b e2fsprogs-interim origin/e2fsprogs-interim
Branch e2fsprogs-interim set up to track remote branch refs/remotes/origin/e2fsprogs-interim.
Switched to a new branch "e2fsprogs-interim"
gentoo e2fsprogs # git branch
* e2fsprogs-interim
master
gentoo e2fsprogs # git pull git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
Auto-merged debugfs/debugfs.c
Auto-merged debugfs/set_fields.c
Auto-merged e2fsck/Makefile.in
Auto-merged e2fsck/e2fsck.8.in
Auto-merged e2fsck/e2fsck.h
Auto-merged e2fsck/journal.c
Auto-merged e2fsck/pass1.c
Auto-merged e2fsck/pass2.c
Auto-merged e2fsck/pass3.c
Auto-merged e2fsck/pass4.c
Auto-merged e2fsck/pass5.c
Auto-merged e2fsck/super.c
CONFLICT (content): Merge conflict in e2fsck/super.c
Removed e2fsck/swapfs.c
Auto-merged e2fsck/unix.c
Auto-merged e2fsck/util.c
Auto-merged lib/e2p/feature.c
CONFLICT (content): Merge conflict in lib/e2p/feature.c
Auto-merged lib/ext2fs/Makefile.in
CONFLICT (content): Merge conflict in lib/ext2fs/Makefile.in
Auto-merged lib/ext2fs/bitops.h
Auto-merged lib/ext2fs/bmap.c
Auto-merged lib/ext2fs/closefs.c
Removed lib/ext2fs/cmp_bitmaps.c
Auto-merged lib/ext2fs/ext2_fs.h
Auto-merged lib/ext2fs/ext2fs.h
CONFLICT (content): Merge conflict in lib/ext2fs/ext2fs.h
Auto-merged lib/ext2fs/ext_attr.c
CONFLICT (content): Merge conflict in lib/ext2fs/ext_attr.c
Auto-merged lib/ext2fs/ind_block.c
CONFLICT (content): Merge conflict in lib/ext2fs/ind_block.c
Auto-merged lib/ext2fs/initialize.c
Auto-merged lib/ext2fs/inode.c
Auto-merged lib/ext2fs/openfs.c
Removed lib/ext2fs/rs_bitmap.c
Auto-merged lib/ext2fs/rw_bitmaps.c
Auto-merged lib/ext2fs/swapfs.c
Auto-merged misc/dumpe2fs.c
Auto-merged misc/mke2fs.c
CONFLICT (content): Merge conflict in misc/mke2fs.c
Auto-merged misc/tune2fs.c
CONFLICT (content): Merge conflict in misc/tune2fs.c
Auto-merged resize/resize2fs.c
Removed tests/f_swapfs/debugfs.cmd
Removed tests/f_swapfs/expect
Removed tests/f_swapfs/image
Removed tests/f_swapfs/image.gz
Removed tests/f_swapfs/name
Removed tests/f_swapfs/script
Automatic merge failed; fix conflicts and then commit the result.

Now I know something's going on. Instead of just saying branch is up-to-date.

What are these conflicts and how do I (or do I need to) resolve them?

Gary :?
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Fri Feb 15, 2008 11:29 pm    Post subject: Reply with quote

Update:

tried to compile e2fsprogs (interim branch) but it gave this error: (guess those conflicts need to be resolved)

make[2]: Leaving directory `/sda8/e2fsprogs/lib/ss'
making all in lib/e2p
make[2]: Entering directory `/sda8/e2fsprogs/lib/e2p'
CC feature.c
feature.c:70: error: expected expression before '<<' token
make[2]: *** [feature.o] Error 1
make[2]: Leaving directory `/sda8/e2fsprogs/lib/e2p'
make[1]: *** [all-libs-recursive] Error 1
make[1]: Leaving directory `/sda8/e2fsprogs'
make: *** [all] Error 2

Gary :(

Must be omitted or adding an extra step in the git clone/git pull procedure ??
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Fri Feb 15, 2008 11:34 pm    Post subject: Reply with quote

Update 2:

modified my last git clone/pull by removing:
git branch
* e2fsprogs-interim
master

before I ran-- git pull git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git

No difference.

Same make errors--

make[2]: Leaving directory `/sda8/e2fsprogs/lib/ss'
making all in lib/e2p
make[2]: Entering directory `/sda8/e2fsprogs/lib/e2p'
CC feature.c
feature.c:70: error: expected expression before '<<' token
make[2]: *** [feature.o] Error 1
make[2]: Leaving directory `/sda8/e2fsprogs/lib/e2p'
make[1]: *** [all-libs-recursive] Error 1
make[1]: Leaving directory `/sda8/e2fsprogs'
make: *** [all] Error 2

Gary :?
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Sat Feb 16, 2008 9:10 pm    Post subject: Reply with quote

dodo1122,

tried the -pu branch. Compiled fine, but e2fsck doesn't work on ext4dev fs.

tried the interim branch, modifying your instructions slightly. After the git clone, and cd /e2fsprogs, I did "git checkout -b interim" followed by git branch before compiling. Identical file sizes to the pu branch. Still no joy with e2fscking ext4dev partition.

What gives :(

Gary
Back to top
View user's profile Send private message
dodo1122
Guru
Guru


Joined: 02 Sep 2006
Posts: 347
Location: York, England

PostPosted: Sun Feb 17, 2008 4:46 pm    Post subject: Reply with quote

nono, you don't git pull like that. just do 'git pull' without the url. Also, you need linux-headers-2.6.23 to compile e2fsprogs-interim branch, not .24. You also need newer ss and com_err. ebuilds for the whole lot:

ss-9999.ebuild - http://rafb.net/p/hvS3jf16.html
com_err-9999.ebuild - http://rafb.net/p/wMrZBW94.html
e2fsprogs-9999 (from interim branch) - http://rafb.net/p/7lIEI130.html


dodo
_________________
#zen-sources on irc.rizon.net
Back to top
View user's profile Send private message
Dottout
l33t
l33t


Joined: 07 Mar 2006
Posts: 882

PostPosted: Sun Feb 17, 2008 5:15 pm    Post subject: Reply with quote

dodo: where to find patches for e2fsprogs? like ${PN}-9999-libintl.patch
Back to top
View user's profile Send private message
dodo1122
Guru
Guru


Joined: 02 Sep 2006
Posts: 347
Location: York, England

PostPosted: Sun Feb 17, 2008 5:19 pm    Post subject: Reply with quote

e2fsprogs-9999-libintl.patch - http://rafb.net/p/MoBOmD68.html



dodo
_________________
#zen-sources on irc.rizon.net
Back to top
View user's profile Send private message
SlackwareInAZ
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2005
Posts: 92

PostPosted: Mon Feb 18, 2008 9:23 am    Post subject: Reply with quote

dodo1122,

Thanks for your patience with me concerning numerous errors in following your instructions.

Trying your ebuilds to emerge e2fsprogs-1.40.5-r1. Almost there but the .ebuild needs these 3 patches:
${PN}-1.38-tests-locale.patch #99766
${PN}-1.40-fbsd.patch
${PN}-wtf-git-conflict.patch

I figured you would know where to get them.

Thanks,
Gary :)
Back to top
View user's profile Send private message
Dottout
l33t
l33t


Joined: 07 Mar 2006
Posts: 882

PostPosted: Mon Feb 18, 2008 9:29 am    Post subject: Reply with quote

SlackwareInAZ wrote:
dodo1122,

Thanks for your patience with me concerning numerous errors in following your instructions.

Trying your ebuilds to emerge e2fsprogs-1.40.5-r1. Almost there but the .ebuild needs these 3 patches:
${PN}-1.38-tests-locale.patch #99766
${PN}-1.40-fbsd.patch
${PN}-wtf-git-conflict.patch

I figured you would know where to get them.

Thanks,
Gary :)

first of all, dodo's ebuilds wont merge 1.40.5 but latest from git. about the patches: you find them in /usr/portage/sys-fs/e2fsprogs/files/
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum