ZFS: i/o error - all block copies unavailable after upgrading to r225312

Peter Jeremy peterjeremy at acm.org
Sat Sep 10 11:03:16 UTC 2011


On 2011-Sep-10 12:46:50 +0300, Andriy Gapon <avg at 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 correct
>> 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.

-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20110910/eea5c535/attachment.pgp


More information about the freebsd-fs mailing list