6842815 SUNWzfsu package dependency on SUNWPython is not captured onnv_118
authorLin Ling <Lin.Ling@Sun.COM>
Mon, 22 Jun 2009 23:07:46 -0700
changeset 9951 a4895b3dd543
parent 9950 78fc41aa9bc5
child 9952 1dcbfc9c84b6
6842815 SUNWzfsu package dependency on SUNWPython is not captured 6844900 zfs_ioc_userspace_upgrade leaks 6852821 memory leak in zfs_putapage
usr/src/pkgdefs/SUNWzfsu/depend
usr/src/uts/common/fs/zfs/dmu.c
usr/src/uts/common/fs/zfs/dmu_objset.c
usr/src/uts/common/fs/zfs/zfs_vnops.c
--- a/usr/src/pkgdefs/SUNWzfsu/depend	Mon Jun 22 22:44:27 2009 -0600
+++ b/usr/src/pkgdefs/SUNWzfsu/depend	Mon Jun 22 23:07:46 2009 -0700
@@ -20,11 +20,9 @@
 #
 
 #
-# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
-# ident	"%Z%%M%	%I%	%E% SMI"
-#
 # This package information file defines software dependencies associated
 # with the pkg.  You can define three types of pkg dependencies with this file:
 #	 P indicates a prerequisite for installation
@@ -54,3 +52,4 @@
 P SUNWsmapi	Storage Management APIs
 P SUNWlxml	The XML library
 P SUNWzlib	The Zip compression library
+P SUNWPython	The Python interpreter, libraries and utilities
--- a/usr/src/uts/common/fs/zfs/dmu.c	Mon Jun 22 22:44:27 2009 -0600
+++ b/usr/src/uts/common/fs/zfs/dmu.c	Mon Jun 22 23:07:46 2009 -0700
@@ -798,9 +798,6 @@
 		if (tocpy == db->db_size)
 			dmu_buf_fill_done(db, tx);
 
-		if (err)
-			break;
-
 		offset += tocpy;
 		size -= tocpy;
 	}
--- a/usr/src/uts/common/fs/zfs/dmu_objset.c	Mon Jun 22 22:44:27 2009 -0600
+++ b/usr/src/uts/common/fs/zfs/dmu_objset.c	Mon Jun 22 23:07:46 2009 -0700
@@ -1130,7 +1130,7 @@
 	 */
 
 	for (obj = 0; err == 0; err = dmu_object_next(os, &obj, FALSE, 0)) {
-		dmu_tx_t *tx = dmu_tx_create(os);
+		dmu_tx_t *tx;
 		dmu_buf_t *db;
 		int objerr;
 
@@ -1140,6 +1140,7 @@
 		objerr = dmu_bonus_hold(os, obj, FTAG, &db);
 		if (objerr)
 			continue;
+		tx = dmu_tx_create(os);
 		dmu_tx_hold_bonus(tx, obj);
 		objerr = dmu_tx_assign(tx, TXG_WAIT);
 		if (objerr) {
--- a/usr/src/uts/common/fs/zfs/zfs_vnops.c	Mon Jun 22 22:44:27 2009 -0600
+++ b/usr/src/uts/common/fs/zfs/zfs_vnops.c	Mon Jun 22 23:07:46 2009 -0700
@@ -3724,8 +3724,8 @@
 	if (err == 0) {
 		zfs_time_stamper(zp, CONTENT_MODIFIED, tx);
 		zfs_log_write(zfsvfs->z_log, tx, TX_WRITE, zp, off, len, 0);
-		dmu_tx_commit(tx);
 	}
+	dmu_tx_commit(tx);
 
 out:
 	pvn_write_done(pp, (err ? B_ERROR : 0) | flags);