Displaying 1 result from an estimated 1 matches for "b_datalock".
2008 Jul 29
2
Unexpected b_hdr change.
Hi.
We''re testing the most recent ZFS version from OpenSolaris ported to
FreeBSD. Kris (CCed) observed strange situation. In function arc_read()
he had a panic on assertion that we try to unlock a lock which is not
beeing held:
rw_enter(&pbuf->b_hdr->b_datalock, RW_READER);
err = arc_read_nolock(pio, spa, bp, done, private, priority,
flags, arc_flags, zb);
rw_exit(&pbuf->b_hdr->b_datalock); <--- THIS ONE
The only possiblity was that b_hdr for pbuf was changed somewhere. We
diagnozed this further and the b_hdr field is changed in arc...