Re: ZFS: i/o error - all block copies unavailable after upgradin
--zhXaljGHf11kAtnf
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On 2011-Sep-10 12:46:50 +0300, Andriy Gapon <avg@FreeBSD.org> wrote:
>on 10/09/2011 11:07 Andriy Gapon said the following:
>> Actually, removing either -mrtd _or_ -fno-unit-at-a-time produces the co=
rrect
>> code. Puzzled.
>
>The problem is reproducible with base gcc and gcc42, it is not reproducible
>with gcc45, gcc46 and clang.
I was just checking gcc44 & gcc46. gcc44 inlines the entire function
and I couldn't quickly find the offending code to see if the bug was
there or not. I agree you've triggered a gcc bug but I'm not sure of
the correct approach to fix it. I've tried a few trivial code
transforms within vdev_read_phys() but haven't stumbled on one that
avoids the problem.
Since -mrtd changes the calling convention, it's a more intrusive
change. I'm not sure if there's any simple way to alter CFLAGS for
a single file (since we only want to alter the zfsboot.c compilation.
--=20
Peter Jeremy
--zhXaljGHf11kAtnf
Content-Type: application/pgp-signature
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (FreeBSD)
iEYEARECAAYFAk5rQ+4ACgkQ/opHv/APuIdXagCeMrMRpjGHkXnmxlmUG0v7GUGG
YZgAoLzV4ypU07F261aURRMIARZa+2VF
=imQJ
-----END PGP SIGNATURE-----
--zhXaljGHf11kAtnf--
討論串 (同標題文章)
完整討論串 (本文為第 11 之 18 篇):