Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jan 2013 17:41:58 -0500
From:      Chris Ross <cross+freebsd@distal.com>
To:        Marius Strobl <marius@alchemy.franken.de>
Cc:        freebsd-sparc64@freebsd.org, avg@freebsd.org, Kurt Lidl <lidl@pix.net>
Subject:   Re: Changes to kern.geom.debugflags?
Message-ID:  <BD3E2E30-457F-4D8A-8057-3ECED966419F@distal.com>
In-Reply-To: <20130104234616.GA37999@alchemy.franken.de>
References:  <7AA0B5D0-D49C-4D5A-8FA0-AA57C091C040@distal.com> <6A0C1005-F328-4C4C-BB83-CA463BD85127@distal.com> <20121225232507.GA47735@alchemy.franken.de> <8D01A854-97D9-4F1F-906A-7AB59BF8850B@distal.com> <A947C892-5379-4F70-BFA0-0A7AB94DF0C6@distal.com> <6FC4189B-85FA-466F-AA00-C660E9C16367@distal.com> <20121230032403.GA29164@pix.net> <56B28B8A-2284-421D-A666-A21F995C7640@distal.com> <EEB60849-3192-46E2-8626-EC6824182515@distal.com> <20130104234616.GA37999@alchemy.franken.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On Jan 4, 2013, at 18:46 , Marius Strobl <marius@alchemy.franken.de> =
wrote:
>>  So, now that we're past the holiday madness, and I haven't heard =
anything back
>> on this is there some other group or list I should ask the questions =
of ZFS internals
>> to figure out why the sparc64 MD boot loader code is seeing a =
dn_datablkszsec
>> of 0, and what it should be set to?
>>=20
>>  Thanks.  I'm happy to compose another message to include people who =
might
>> be able to help.  I'm out of my "comfort zone" in ZFS.
>=20
> The most straightforward way is to identify the commit that broke
> it via a binary search and email the corresponding commit.

  Okay.  I've completed this search.  SVN rev 242228 works, boots up, =
the first call
to dnode_read() (in sys/boot/zfs/zfsimpl.c) (well, "first" call after =
the console is initialized)
shows (due to a printf I added) :

dnode_read(): offset 512, bsize 16384, dn_datablkszsec 32

  I notice in all of the many following calls that bsize is always 512 =
or 16384, and
dn_datablkszsec is sometimes as small as 1, or as large as 68, but =
always non-zero.

  SVN revision 242230 fails in the same way the head of stable/9 does.  =
The first output
I see from my printf in dnode_read() is (and the following trap):

dnode_read(): offset 512, bsize 0, dn_datablkszsec 0
ERROR: Last Trap: Division by Zero

  I didn't test 242229,. but could if needed, because both 242229 and =
242230 were
ZFS changes in the boot code, and by the same person.

------------------------------------------------------------------------
r242229 | avg | 2012-10-28 11:45:18 -0400 (Sun, 28 Oct 2012) | 3 lines

MFC r241283: zfs boot: add code for listing child datasets of a given
dataset

------------------------------------------------------------------------
------------------------------------------------------------------------
r242230 | avg | 2012-10-28 11:47:56 -0400 (Sun, 28 Oct 2012) | 2 lines

MFC r241289: boot/zfs: call zfs_spa_init for all found pools

------------------------------------------------------------------------

  Should this go to Andriy, or is someone else more familiar with spar64
issues?  These seem to come from a range of ZFS changes
by Andriy (r241282 - r241294) on October 6.  Something got messed up for
the sparc64 code, though.

  Thanks.

                                    - Chris




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BD3E2E30-457F-4D8A-8057-3ECED966419F>