[OE-core] [PATCH 0/4] replace genext2fs with populate-extfs.sh

Jonathan Liu net147 at gmail.com
Mon May 13 04:59:50 UTC 2013


Hi Robert,

I get the following errors doing filesystem check on the ext4 image:

# fsck.ext4 -fn tmp/deploy/images/custom-image-custom.ext4.ext4
e2fsck 1.42.7 (21-Jan-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Entry 'mtd7' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd4' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'fb0' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd5' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty6' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'random' in /dev (2739) has an incorrect filetype (was 4, should be
3).
Fix? no

Entry 'mtd1' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'urandom' in /dev (2739) has an incorrect filetype (was 4, should be
3).
Fix? no

Entry 'zero' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'null' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'kmsg' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'kmem' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd6' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty7' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty4' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'apm_bios' in /dev (2739) has an incorrect filetype (was 4, should be
3).
Fix? no

Entry 'tty5' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd0' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty0' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'ttySA0' in /dev (2739) has an incorrect filetype (was 4, should be
3).
Fix? no

Entry 'mem' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd2' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty8' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'console' in /dev (2739) has an incorrect filetype (was 4, should be
3).
Fix? no

Entry 'ttyS0' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty2' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'mtd3' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty1' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Entry 'tty3' in /dev (2739) has an incorrect filetype (was 4, should be 3).
Fix? no

Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Inode 774 ref count is 9, should be 10.  Fix? no

Pass 5: Checking group summary information

tmp/deploy/images/custom-image-custom.ext4.ext4: ********** WARNING:
Filesystem still has errors **********

tmp/deploy/images/custom-image-custom.ext4.ext4: 3899/21336 files (0.5%
non-contiguous), 131042/169656 blocks


After booting the image I get the following:
# dmesg | grep EXT4-fs
EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-machine: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-machine: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-journal: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs (sda2): re-mounted. Opts: (null)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-journal: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-journal: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-journal: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #883: comm
systemd-journal: bad header/extent: invalid magic - magic 0, entries 0, max
0(0), depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #810: comm
login: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)
EXT4-fs error (device sda2): ext4_ext_check_inode:467: inode #810: comm
sshd: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)


# systemctl --failed | cat
UNIT                     LOAD   ACTIVE SUB    DESCRIPTION
machineid.service        loaded failed failed Machine ID first boot
configure
systemd-journald.service loaded failed failed Journal Service
systemd-journald.socket  loaded failed failed Journal Socket

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

3 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.


I am booting kernel with rootfstype=ext4. IMAGE_FSTYPES = "ext4".

Regards,
Jonathan


On 7 May 2013 19:48, Robert Yang <liezhi.yang at windriver.com> wrote:

> * The benefits:
>   - Really support ext4
>   - Support the sparse file (the sparse file became into the common file
> before)
>   - Have a uniform code for ext2/3/4 generation
>   - Remove the depends on genext2fs-native
>
> * Impact
>   - Build time:
>     a) If we build fresh core-image-sato, there is nearly no impact.
>     b) If we do the image generation, which means:
>        $ bitbake core-image-sato
>        $ bitbake core-image-sato -ccleansstate
>        $ bitbake core-image-sato
>    About 50 extra seconds are needed, here is my test result:
>    Before the patches: 4m25s
>    After the patches: 5m17s
>    This is because the genext2fs is much faster than the
>    populate-extfs.sh, we will replace this script by the mke2fs when it
>    supports create the filesystem from a initial directory.
>
>   - Disk space (take core-image-sato as an example)
>     a) The image file size is the same as before (529M)
>     b) The disk usage is a little different: (du -sh)
>               before       now
>        ext2:  364M         388M
>        ext3:  381M         404M
>        ext4:  380M         387M
>
>    We may need to adjust the IMAGE_OVERHEAD_FACTOR from 1.3 to 1.4.
>
>    I have done some simple runtime testing on core-image-sato and
>    core-image-minimal, they worked well.
>
> // Robert
>
> The following changes since commit
> 3472c1f7ab409cd91c1d4782d9e00880b84e3ae8:
>
>   grub-efi-native: Cleanup whitespace (2013-05-03 16:37:05 +0100)
>
> are available in the git repository at:
>
>   git://git.pokylinux.org/poky-contrib robert/ext4
>   http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/ext4
>
> Robert Yang (4):
>   e2fsprogs: the max length of debugfs argument is too short
>   e2fsprogs: let debugfs do sparse copy
>   e2fsprogs: add populate-extfs.sh
>   image_types.bbclass: replace genext2fs with populate-extfs.sh
>
>  meta/classes/image_types.bbclass                   |   46 ++++----
>  .../e2fsprogs-1.42.7/debugfs-too-short.patch       |   28 +++++
>  .../e2fsprogs/e2fsprogs-1.42.7/populate-extfs.sh   |   93 ++++++++++++++++
>  .../e2fsprogs/e2fsprogs-1.42.7/sparse_copy.patch   |  114
> ++++++++++++++++++++
>  .../recipes-devtools/e2fsprogs/e2fsprogs_1.42.7.bb |    4 +
>  5 files changed, 257 insertions(+), 28 deletions(-)
>  create mode 100644
> meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42.7/debugfs-too-short.patch
>  create mode 100644
> meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42.7/populate-extfs.sh
>  create mode 100644
> meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42.7/sparse_copy.patch
>
> --
> 1.7.10.4
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20130513/60f09b30/attachment-0001.html>


More information about the Openembedded-core mailing list