Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Apr 2015 11:08:42 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 199804] ZFS: i/o error - all block copies unavailable
Message-ID:  <bug-199804-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=199804

            Bug ID: 199804
           Summary: ZFS: i/o error - all block copies unavailable
           Product: Base System
           Version: 10.1-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: tsoome@me.com

Created attachment 156141
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=156141&action=edit
zfsimpl.c diff for HOLE issue.

the freebsd bootloader zfs code does not check properly for holes
(BP_IS_HOLE()) while traversing dnodes, and is calling zio_read() on hole, and
as hole does not have data, DVA pointers are 0, and result is error: ZFS: i/o
error - all block copies unavailable.

the problem is in sys/boot/zfs/zfsimpl.c dnode_get() function; bp should be
checked for hole, if it is hole, its zero block and no physical read can be
done as there are no physical blocks - instead the zero filled block should be
constructed and returned for caller.

attached diff as possible fix for this issue.

-- 
You are receiving this mail because:
You are the assignee for the bug.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-199804-8>