Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Mar 2013 23:39:35 +0100
From:      Ralf Wenk <iz-rpi03@hs-karlsruhe.de>
To:        Andrew Turner <andrew@fubar.geek.nz>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: svn commit: r248856 - head/share/mk
Message-ID:  <E1UM4R2-0015BQ-Ez@smtp.hs-karlsruhe.de>
In-Reply-To: <20130329115734.202ed685@bender>
References:  <201303282249.r2SMnnpl030602@svn.freebsd.org>  <20130329115734.202ed685@bender>

next in thread | previous in thread | raw e-mail | index | archive | help
> As of this commit clang is the default compiler on little-endian ARM.
> Can people test this and report back any issues they find. I would like=

> to keep it as the compiler for when 10 is released.
>=20
> This doesn't affect big-endian ARM as it is not yet supported by
> llvm/clang.
>=20
> Andrew

Hi,

it looks like there is a reproduceable problem with geom when
creating/accessing a ufs using clang and EABI.

newfs(8) creates a filesystem, but tunefs(8) and mount(8) can not use it.=

The kernel and world revision is 248934. Both are build on a i386
9.1-STABLE revision 248678 with:

make -C =24SRCROOT -DWITH_ARM_EABI kernel-toolchain
make -C =24SRCROOT KERNCONF=3D=24KERNCONF WITH_FDT=3Dyes -DWITH_ARM_EABI =
buildkernel
make -C =24SRCROOT MALLOC_PRODUCTION=3Dyes -DWITH_ARM_EABI buildworld

KERNCONF is RPI-B with serial console enabled.

Initial SD-card layout:
=23 gpart show
=3D>      1  7788543  mmcsd0  MBR  (3.7G)
        1       62          - free -  (31k)
       63    65520       1  =2112  =5Bactive=5D  (32M)
    65583  2031561       2  freebsd  (992M)
  2097144  5691400          - free -  (2.7G)

=3D>      0  2031561  mmcsd0s2  BSD  (992M)
        0  2031561         1  freebsd-ufs  (992M)


Now I add a new MBR slice, create a BSD disklabel on it and add a
partition on that. After that I create a new ufs filesystem and try
tunefs(8) and mount(8) on it.

=23 gpart add -t freebsd mmcsd0
mmcsd0s3 added, but partition is not aligned on 65536 bytes

The alignment warning is caused by the stripesize=5B1=5D.

=23 gpart create -s BSD mmcsd0s3
mmcsd0s3 created
=23 gpart add -t freebsd-ufs mmcsd0s3
mmcsd0s3a added
=23 newfs /dev/mmcsd0s3a
/dev/mmcsd0s3a: 2778.8MB (5691008 sectors) block size 32768, fragment siz=
e 4096
        using 5 cylinder groups of 626.09MB, 20035 blks, 80256 inodes.
super-block backups (for fsck -b =23) at:
 192, 1282432, 2564672, 3846912, 5129152
=23 tunefs -n enable /dev/mmcsd0s3a
tunefs: /dev/mmcsd0s3a: could not read superblock to fill out disk
=23 mount /dev/mmcsd0s3a /mnt
mount: /dev/mmcsd0s3a: Invalid argument

Resulting SD-card layout:
=23 gpart show
=3D>      1  7788543  mmcsd0  MBR  (3.7G)
        1       62          - free -  (31k)
       63    65520       1  =2112  =5Bactive=5D  (32M)
    65583  2031561       2  freebsd  (992M)
  2097144       63          - free -  (31k)
  2097207  5691168       3  freebsd  (2.7G)
  7788375      169          - free -  (84k)

=3D>      0  2031561  mmcsd0s2  BSD  (992M)
        0  2031561         1  freebsd-ufs  (992M)

=3D>      0  5691168  mmcsd0s3  BSD  (2.7G)
        0       73            - free -  (36k)
       73  5691008         1  freebsd-ufs  (2.7G)
  5691081       87            - free -  (43k)


Creating the ufs on the i386 system results in a mountable filesystem on =
the
pi.

Ralf

=5B1=5D =23 diskinfo -v mmcsd0
mmcsd0
        512             =23 sectorsize
        3987734528      =23 mediasize in bytes (3.7G)
        7788544         =23 mediasize in sectors
        65536           =23 stripesize
        0               =23 stripeoffset
                        =23 Disk ident.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1UM4R2-0015BQ-Ez>