Well, if I'd just kept reading the comments next to the function, it
clearly says to keep calling until NULL.
So, now I can focus on the actual panic..
Sorry for the noise,
Lund
Jorgen Lundman wrote:
>
> Hello list,
>
> Dealing with a panic that looks like:
>
> 0xffffff8210073c00 : 0xffffff80066f4486 mach_kernel :
> _return_from_trap + 0xe6
> 0xffffff8210073c20 : 0xffffff7f86d65cab : _zio_unique_parent + 0x3b
> 0xffffff8210073d40 : 0xffffff7f86d66cf8 : _zio_flush + 0x38
> 0xffffff8210073d60 : 0xffffff7f86d63ddc : _zil_commit + 0x83c
> 0xffffff8210073e80 : 0xffffff7f86d543d6 : _zfs_fsync + 0x86
>
>
> I took a look at:
>
> zio_unique_parent(zio_t *cio)
> {
> zio_t *pio = zio_walk_parents(cio);
>
> VERIFY(zio_walk_parents(cio) == NULL);
> return (pio);
> }
>
> That appears to call zio_walk_parents() twice, is there a reason this has
> to happen, as opposed to just combining it into one VERIFY-and-assign call?
>
> I am rather unfamiliar with this section, so it is probably just me reading
> it wrong again :)
>
> Lund
>
--
Jorgen Lundman | <[email protected]>
Unix Administrator | +81 (0)90-5578-8500 (work)
Shibuya-ku, Tokyo | +81 (0)80-2090-5800 (cell)
Japan | +81 (0)3 -3375-1767 (home)
_______________________________________________
developer mailing list
[email protected]
http://lists.open-zfs.org/mailman/listinfo/developer