summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravg <avg@FreeBSD.org>2016-06-13 18:39:13 +0000
committeravg <avg@FreeBSD.org>2016-06-13 18:39:13 +0000
commit542bc13e581abc43081af7c269422f46a2da85e3 (patch)
tree2f82b70cef7d89de0b1791fb961dec938adb6931
parentccff332313188686e9815f4bc87de01bfa6919fd (diff)
downloadFreeBSD-src-542bc13e581abc43081af7c269422f46a2da85e3.zip
FreeBSD-src-542bc13e581abc43081af7c269422f46a2da85e3.tar.gz
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
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
index 3bb9146..cdc8009 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
@@ -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;
}
OpenPOWER on IntegriCloud