ZFS small fix in arc.c and zvol.c

Mickaël Maillot mickael.maillot at gmail.com
Tue Dec 29 21:13:14 UTC 2009


Hi,

/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
in arc.c, a mutex is not properly detroyed:

--- arc.c.orig	2009-12-29 21:15:31.192819155 +0100
+++ arc.c	2009-12-29 21:16:58.034271766 +0100
@@ -3626,6 +3626,7 @@
 	mutex_destroy(&arc_mru_ghost->arcs_mtx);
 	mutex_destroy(&arc_mfu->arcs_mtx);
 	mutex_destroy(&arc_mfu_ghost->arcs_mtx);
+	mutex_destroy(&arc_l2c_only->arcs_mtx);

 	mutex_destroy(&zfs_write_limit_lock);


i dont know if it's ok but in zvol.c
opensolaris call zvol_size_changed
just after zil_replay in zvol_create_minor function

--- zvol.c.orig	2009-12-29 21:31:42.111529028 +0100
+++ zvol.c	2009-12-29 21:32:32.347413297 +0100
@@ -837,6 +837,7 @@
 	zv->zv_volblocksize = doi.doi_data_block_size;

 	zil_replay(os, zv, &zv->zv_txg_assign, zvol_replay_vector, NULL);
+	zvol_size_changed(zv, maj);

 	/* XXX this should handle the possible i/o error */
 	VERIFY(dsl_prop_register(dmu_objset_ds(zv->zv_objset),


More information about the freebsd-fs mailing list