changeset 3163:163b8acfdadd

6433292 Apparent dblk refrence counting issues in TCP/IP
author georges
date Fri, 24 Nov 2006 01:29:43 -0800
parents b8af42ef962d
children 475efbf127ed
files usr/src/uts/common/io/stream.c
diffstat 1 files changed, 1 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/common/io/stream.c	Thu Nov 23 10:03:18 2006 -0800
+++ b/usr/src/uts/common/io/stream.c	Fri Nov 24 01:29:43 2006 -0800
@@ -592,17 +592,7 @@
 
 	STR_FTEVENT_MBLK(mp, caller(), FTEV_DUPB, dbp->db_ref);
 
-	/*
-	 * First-dup optimization.  The enabling assumption is that there
-	 * can can never be a race (in correct code) to dup the first copy
-	 * of a message.  Therefore we don't need to do it atomically.
-	 */
-	if (dbp->db_free != dblk_decref) {
-		dbp->db_free = dblk_decref;
-		dbp->db_ref++;
-		goto out;
-	}
-
+	dbp->db_free = dblk_decref;
 	do {
 		ASSERT(dbp->db_ref > 0);
 		oldrtfu = DBLK_RTFU_WORD(dbp);