]> granicus.if.org Git - zfs/commitdiff
Add fix-evict-dbufs branch
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 20 Nov 2008 20:52:00 +0000 (12:52 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 20 Nov 2008 20:52:00 +0000 (12:52 -0800)
.topdeps [new file with mode: 0644]
.topmsg [new file with mode: 0644]
zfs/lib/libzpool/dnode_sync.c

diff --git a/.topdeps b/.topdeps
new file mode 100644 (file)
index 0000000..1f7391f
--- /dev/null
+++ b/.topdeps
@@ -0,0 +1 @@
+master
diff --git a/.topmsg b/.topmsg
new file mode 100644 (file)
index 0000000..4baec11
--- /dev/null
+++ b/.topmsg
@@ -0,0 +1,8 @@
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Subject: [PATCH] fix dbuf evict assertion
+
+Replace non-fatal assertion with warning
+
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+
+---
index 0fdd27ecf0af102ebf953ddb1b935b98a35cabb4..2a4a9969f4e1752471838e9ff160d3fd15f9c7a9 100644 (file)
@@ -394,9 +394,13 @@ dnode_evict_dbufs(dnode_t *dn)
                if (evicting)
                        delay(1);
                pass++;
-               ASSERT(pass < 100); /* sanity check */
+               if ((pass % 100) == 0)
+                       dprintf("Exceeded %d passes evicting dbufs\n", pass);
        } while (progress);
 
+       if (pass >= 100)
+               dprintf("Required %d passes to evict dbufs\n", pass);
+
        rw_enter(&dn->dn_struct_rwlock, RW_WRITER);
        if (dn->dn_bonus && refcount_is_zero(&dn->dn_bonus->db_holds)) {
                mutex_enter(&dn->dn_bonus->db_mtx);