]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit - contrib/unbound/libunbound/python/examples/dnssec-valid.py
MFV r322236: 8126 ztest assertion failed in dbuf_dirty due to dn_nlevels changing
authorAndriy Gapon <avg@FreeBSD.org>
Tue, 8 Aug 2017 11:14:40 +0000 (11:14 +0000)
committerAndriy Gapon <avg@FreeBSD.org>
Tue, 8 Aug 2017 11:14:40 +0000 (11:14 +0000)
commit3cf2ea1aea978a12c2c9a61790361ab9b11eda68
treea0a536e4de324ddcb87fe5e3384d5df6eda7a2dd
parent98a9c8e68a45efd50ef1fc4228dde81043cd3e13
parent5f25e2543572120b0e65cfe133d1eeaee92b334c
MFV r322236: 8126 ztest assertion failed in dbuf_dirty due to dn_nlevels changing

illumos/illumos-gate@dcb6872c565819ac88acbc2ece999ef241c8b982
https://github.com/illumos/illumos-gate/commit/dcb6872c565819ac88acbc2ece999ef241c8b982

https://www.illumos.org/issues/8126
  The sync thread is concurrently modifying dn_phys->dn_nlevels
  while dbuf_dirty() is trying to assert something about it, without
  holding the necessary lock. We need to move this assertion further down
  in the function, after we have acquired the dn_struct_rwlock.

Reviewed by: Pavel Zakharov <pavel.zakharov@delphix.com>
Reviewed by: Serapheim Dimitropoulos <serapheim@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Matthew Ahrens <mahrens@delphix.com>

MFC after: 2 weeks
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c