Author: avg
Date: Mon Jun 13 18:39:13 2016
New Revision: 301873
URL: https://svnweb.freebsd.org/changeset/base/301873

Log:
  l2arc: reset b_tmp_cdata to NULL in the case of unset b_daddr
  
  The change is in arc_buf_l2_cdata_free().
  Without this we can trip the assertion in arc_hdr_realloc()
  if INVARIANTS option is enabled.
  
  Approved by:  re (kib)
  MFC after:    1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c   Mon Jun 13 
16:48:27 2016        (r301872)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c   Mon Jun 13 
18:39:13 2016        (r301873)
@@ -2249,6 +2249,7 @@ arc_buf_l2_cdata_free(arc_buf_hdr_t *hdr
                ASSERT3P(hdr->b_l1hdr.b_tmp_cdata, ==,
                    hdr->b_l1hdr.b_buf->b_data);
                ASSERT3U(hdr->b_l2hdr.b_compress, ==, ZIO_COMPRESS_OFF);
+               hdr->b_l1hdr.b_tmp_cdata = NULL;
                return;
        }
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to