[Ocfs2-commits] manish commits r1136 - trunk/src

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Thu Jun 17 20:55:30 CDT 2004


Author: manish
Date: 2004-06-17 19:55:28 -0500 (Thu, 17 Jun 2004)
New Revision: 1136

Modified:
   trunk/src/alloc.c
   trunk/src/bitmap.c
   trunk/src/buffer_head_io.c
   trunk/src/buffer_head_io.h
   trunk/src/dir.c
   trunk/src/dlm.c
   trunk/src/file.c
   trunk/src/heartbeat.c
   trunk/src/inode.c
   trunk/src/journal.c
   trunk/src/lockres.c
   trunk/src/namei.c
   trunk/src/nm.c
   trunk/src/super.c
   trunk/src/volcfg.c
Log:
Bye bye OCFS_BH_GET_DATA and friends


Modified: trunk/src/alloc.c
===================================================================
--- trunk/src/alloc.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/alloc.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -401,7 +401,7 @@
 			goto abort;
 		}
 
-		bm_lock = OCFS_BH_GET_DATA_WRITE(globalbh);
+		bm_lock = (ocfs2_dinode *) globalbh->b_data;
 		bm_lock->id1.bitmap1.i_used =
 			ocfs_count_bits(osb->sb, &osb->cluster_bitmap);
 
@@ -625,7 +625,6 @@
 				       struct inode *inode)
 {
 	int status = 0;
-	__u8 *buff = NULL;
 	__u32 k, i;
 	__u32 depth;
 	int allocSize;
@@ -652,7 +651,7 @@
 			goto finally;
 		}
 
-		eb = OCFS_BH_GET_DATA_WRITE(eb_bh);
+		eb = (ocfs2_extent_block *) eb_bh->b_data;
 		el1 = &eb->h_list;
 		bh_locked = 1;
 	}
@@ -705,8 +704,7 @@
 			goto finally;
 		}
 
-		buff = OCFS_BH_GET_DATA_WRITE(eb_bhs[i]);
-		memset(buff, 0, osb->sb->s_blocksize);
+		memset(eb_bhs[i]->b_data, 0, osb->sb->s_blocksize);
 		set_buffer_uptodate(eb_bhs[i]);
 	}
 	
@@ -720,7 +718,7 @@
 	for (i = 0; i <= depth; i++) {
 		ocfs2_extent_block *eb;
 
-		eb = OCFS_BH_GET_DATA_WRITE(eb_bhs[i]);
+		eb = (ocfs2_extent_block *) eb_bhs[i]->b_data;
 
 		eb->h_parent_blk = parent_blk;
 		eb->h_suballoc_blkno =
@@ -794,7 +792,7 @@
 				goto finally;
 			}
 
-			eb = OCFS_BH_GET_DATA_WRITE(bh);
+			eb = (ocfs2_extent_block *) bh->b_data;
 			if (!IS_VALID_EXTENT_BLOCK(eb)) {
 				brelse(bh);
 				LOG_ERROR_STATUS (status = -EINVAL);
@@ -856,7 +854,6 @@
 	u64 new_parent_blk = 0;
 	struct buffer_head **bhs = NULL;
 	int numbhs = 0;
-	void *buf;
 	ocfs2_dinode *fe = NULL;
 
 	LOG_ENTRY_ARGS("(0x%p, 0x%p, %llu, %u\n", osb, fe, blkno,
@@ -895,8 +892,7 @@
 			LOG_ERROR_STATUS(status);
 			goto finally;
 		}
-		buf = OCFS_BH_GET_DATA_WRITE(bhs[i]);
-		memset(buf, 0, osb->sb->s_blocksize);
+		memset(bhs[i]->b_data, 0, osb->sb->s_blocksize);
 		set_buffer_uptodate(bhs[i]);
 	}
 
@@ -905,7 +901,7 @@
 		goto finally;
 	}
 
-	eb1 = OCFS_BH_GET_DATA_WRITE(bhs[0]);
+	eb1 = (ocfs2_extent_block *) bhs[0]->b_data;
 	/* Copy the File Entry information in to the newly allocated sector */
 	ebl = &eb1->h_list;
 	for (k = 0; k < fel->l_count; k++) {
@@ -932,7 +928,7 @@
 	parent_blk = fe->i_blkno;
 
 	for (i = 0; i < fel->l_tree_depth; i++) {
-		eb2 = OCFS_BH_GET_DATA_WRITE(bhs[i]);
+		eb2 = (ocfs2_extent_block *) bhs[i]->b_data;
 		ebl = &eb2->h_list;
 
 		ebl->l_tree_depth = (fel->l_tree_depth - 1) - i;
@@ -972,7 +968,7 @@
 	}
 
 	/* Update the Data Segment, which is the last one in our array */
-	eb1 = OCFS_BH_GET_DATA_WRITE(bhs[fel->l_tree_depth]);
+	eb1 = (ocfs2_extent_block *) bhs[fel->l_tree_depth]->b_data;
 	ebl = &eb1->h_list;
 
 	i = (fel->l_tree_depth) ? 0 : fel->l_count;
@@ -1030,7 +1026,7 @@
 			goto finally;
 		}
 
-		eb1 = OCFS_BH_GET_DATA_WRITE(bh);
+		eb1 = (ocfs2_extent_block *) bh->b_data;
 		if (!IS_VALID_EXTENT_BLOCK(eb1) ||
 		    (eb1->h_list.l_tree_depth != -1)) {
 			brelse(bh);
@@ -1072,7 +1068,7 @@
 				goto finally;
 			}
 
-			eb1 = OCFS_BH_GET_DATA_WRITE(bh);
+			eb1 = (ocfs2_extent_block *) bh->b_data;
 			eb1->h_parent_blk = new_parent_blk;
 
 			status = ocfs_journal_dirty(handle, bh);
@@ -1128,7 +1124,7 @@
 	LOG_ENTRY_ARGS("(blkno=%llu, new_clusters=%u, inode=%llu)\n", blkno, new_clusters, 
 		       GET_INODE_FEOFF(inode));
 
-	fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	OCFS_ASSERT(fe);
 
 	if (!IS_VALID_FILE_ENTRY (fe)) {
@@ -1188,7 +1184,7 @@
 		LOG_ERROR_STATUS (status = -EINVAL);
 		goto finally;
 	}
-	eb1 = OCFS_BH_GET_DATA_WRITE(eb1_bh);
+	eb1 = (ocfs2_extent_block *) eb1_bh->b_data;
 	el1 = &eb1->h_list;
 	if (!IS_VALID_EXTENT_BLOCK(eb1) ||
 	    (el1->l_tree_depth != -1)) {
@@ -1212,7 +1208,7 @@
 			goto finally;
 		}
 
-		eb1 = OCFS_BH_GET_DATA_WRITE(eb1_bh);
+		eb1 = (ocfs2_extent_block *) eb1_bh->b_data;
 		el1 = &eb1->h_list;
 
 		el1->l_recs[k].e_clusters += new_clusters;
@@ -1233,7 +1229,7 @@
 			goto finally;
 		}
 
-		eb1 = OCFS_BH_GET_DATA_WRITE(eb1_bh);
+		eb1 = (ocfs2_extent_block *) eb1_bh->b_data;
 		el1 = &eb1->h_list;
 
 		el1->l_recs[k].e_cpos = fe->i_clusters;
@@ -1268,7 +1264,7 @@
 				LOG_ERROR_STATUS (status);
 				goto finally;
 			}
-			eb2 = OCFS_BH_GET_DATA_READ(eb2_bh);
+			eb2 = (ocfs2_extent_block *) eb2_bh->b_data;
 			el2 = &eb2->h_list;
 			if (!IS_VALID_EXTENT_BLOCK(eb2) ||
 			    (el2->l_tree_depth < 0)) {
@@ -1322,7 +1318,7 @@
 			goto finally;
 		}
 
-		eb1 = OCFS_BH_GET_DATA_WRITE(eb1_bh);
+		eb1 = (ocfs2_extent_block *) eb1_bh->b_data;
 
 		eb1->h_next_leaf_blk = fe->i_last_eb_blk = new_eb_blkno;
 	}
@@ -1370,7 +1366,7 @@
 				goto finally;
 			}
 
-			eb2 = OCFS_BH_GET_DATA_WRITE(eb2_bh);
+			eb2 = (ocfs2_extent_block *) eb2_bh->b_data;
 			el2 = &eb2->h_list;
 			if (!IS_VALID_EXTENT_BLOCK(eb2) ||
 			    (el2->l_tree_depth < 0)) {
@@ -1441,7 +1437,7 @@
 		 * mapping run.So just adding this entry will be
 		 * fine. */
 		if (fe == NULL)
-			fe = OCFS_BH_GET_DATA_READ(fe_bh);
+			fe = (ocfs2_dinode *) fe_bh->b_data;
 
 		Vbo = (u64)fe->i_clusters << osb->s_clustersize_bits;
 		Lbo = blkno << osb->sb->s_blocksize_bits;
@@ -1597,8 +1593,7 @@
 		stack[i] = NULL;
 
 	stack[tos] = kmalloc(osb->sb->s_blocksize, GFP_KERNEL);
-	memcpy(stack[tos], OCFS_BH_GET_DATA_READ(extent_grp_bh),
-	       osb->sb->s_blocksize);
+	memcpy(stack[tos], extent_grp_bh->b_data, osb->sb->s_blocksize);
 
 	do {
 		cur_eb = (ocfs2_extent_block *) stack[tos];
@@ -1663,8 +1658,7 @@
 				goto bail;
 			}
 
-			memcpy(stack[tos],
-			       OCFS_BH_GET_DATA_READ(tmp_bh),
+			memcpy(stack[tos], tmp_bh->b_data,
 			       osb->sb->s_blocksize);
 			brelse(tmp_bh);
 			tmp_bh = NULL;
@@ -1718,7 +1712,7 @@
 		goto bail;
 	}
 
-	eb = OCFS_BH_GET_DATA_WRITE(eb_bh);
+	eb = (ocfs2_extent_block *) eb_bh->b_data;
 
 	if (!IS_VALID_EXTENT_BLOCK(eb)) {
 		LOG_ERROR_STR("Invalid extent block!");
@@ -1786,7 +1780,7 @@
 			LOG_ERROR_STATUS(status);
 			goto bail;
 		}
-		eb = OCFS_BH_GET_DATA_WRITE(eb_bh);
+		eb = (ocfs2_extent_block *) eb_bh->b_data;
 		el = &eb->h_list;
 		for (i = (el->l_next_free_rec - 1); i >= 0; i--) {
 			rec = &el->l_recs[i];
@@ -1864,7 +1858,7 @@
 			goto bail;
 		}
 
-		eb = OCFS_BH_GET_DATA_WRITE(eb_bh);
+		eb = (ocfs2_extent_block *) eb_bh->b_data;
 		el = &eb->h_list;
 		for(i = (el->l_next_free_rec - 1); i >= 0; i--) {
 			rec = &el->l_recs[i];
@@ -1952,7 +1946,7 @@
 			goto bail;
 		}
 
-		alloc_eb = OCFS_BH_GET_DATA_WRITE(bh_stack[tos]);
+		alloc_eb = (ocfs2_extent_block *) bh_stack[tos]->b_data;
 		if (!IS_VALID_EXTENT_BLOCK(alloc_eb)) {
 			LOG_ERROR_STR("Invalid extent block!");
 			goto bail;
@@ -1978,7 +1972,7 @@
 					goto bail;
 				}
 				/* silly, but what to do? */
-				alloc_eb = OCFS_BH_GET_DATA_READ(bh_stack[tos]);
+				alloc_eb = (ocfs2_extent_block *) bh_stack[tos]->b_data;
 			} else {
 				/* Alright, we know for sure that
 				 * we're splitting in this guy. */
@@ -2078,7 +2072,7 @@
 						goto bail;
 					}
 
-					alloc_eb = OCFS_BH_GET_DATA_WRITE(bh_stack[tos]);
+					alloc_eb = (ocfs2_extent_block *) bh_stack[tos]->b_data;
 					el = &alloc_eb->h_list;
 					victim = el->l_next_free_rec;
 					el->l_next_free_rec++;
@@ -2160,7 +2154,7 @@
 					goto bail;
 				}
 
-				alloc_eb = OCFS_BH_GET_DATA_WRITE(bh_stack[tos]);
+				alloc_eb = (ocfs2_extent_block *) bh_stack[tos]->b_data;
 				el = &alloc_eb->h_list;
 
 				victim = el->l_next_free_rec;
@@ -2321,7 +2315,7 @@
 		goto bail;
 	}
 
-	eb = OCFS_BH_GET_DATA_READ(eb_bh);
+	eb = (ocfs2_extent_block *) eb_bh->b_data;
 
 	if (!IS_VALID_EXTENT_BLOCK(eb)) { 
 		LOG_ERROR_STR("Invalid extent block!");
@@ -2352,7 +2346,7 @@
 			LOG_ERROR_STATUS(status);
 			goto bail;
 		}
-		eb = OCFS_BH_GET_DATA_READ(eb_bh);
+		eb = (ocfs2_extent_block *) eb_bh->b_data;
 	}
 	
 	fe->i_last_eb_blk = eb->h_blkno;
@@ -2590,7 +2584,7 @@
 		goto finally;
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 
 	if (!IS_VALID_FILE_ENTRY (fe)) {
 		LOG_ERROR_STATUS (status = -EINVAL);
@@ -2628,7 +2622,7 @@
 			goto finally;
 		}
 
-		eb = OCFS_BH_GET_DATA_READ(eb_bh);
+		eb = (ocfs2_extent_block *) eb_bh->b_data;
 		while (1) {
 			if (!locked)
 				down(&(OCFS_I(inode)->priv_sem));
@@ -2671,7 +2665,7 @@
 					LOG_ERROR_STATUS(status);
 					goto finally;
 				}
-				eb = OCFS_BH_GET_DATA_READ(eb_bh);
+				eb = (ocfs2_extent_block *) eb_bh->b_data;
 				if (!IS_VALID_EXTENT_BLOCK(eb) ||
 				    (eb->h_list.l_tree_depth != -1)) {
 					LOG_ERROR_STATUS (status = -EINVAL);
@@ -2756,7 +2750,7 @@
 			goto finally;
 		}
 
-		eb = OCFS_BH_GET_DATA_READ(ext_bh);
+		eb = (ocfs2_extent_block *) ext_bh->b_data;
 		if (!IS_VALID_EXTENT_BLOCK(eb)) {
 			LOG_ERROR_STATUS (status = -EINVAL);
 			goto finally;
@@ -2789,7 +2783,7 @@
 		goto finally;
 	}
 
-	tmp = OCFS_BH_GET_DATA_READ(*data_extent_bh);
+	tmp = (ocfs2_extent_block *) (*data_extent_bh)->b_data;
 	if (!IS_VALID_EXTENT_BLOCK(tmp) ||
 	    (tmp->h_list.l_tree_depth != -1)) {
 		LOG_ERROR_STATUS (status = -EINVAL);
@@ -2886,7 +2880,7 @@
 		goto leave;
 	}
 
-	bm_lock = OCFS_BH_GET_DATA_WRITE(bh);
+	bm_lock = (ocfs2_dinode *) bh->b_data;
 
 	ClusterCount = (__u32) ((__u64) (file_size + (osb->s_clustersize-1)) >> 
 				osb->s_clustersize_bits);
@@ -3101,7 +3095,7 @@
 
 	/* Read in the bitmap file for the alloc and look for the
 	 * required space, if found */
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 	prevFileSize = fileSize = fe->i_size;
 	allocSize = (u64)fe->i_clusters << osb->s_clustersize_bits;
 
@@ -3138,7 +3132,7 @@
 			goto leave;
 		}
 
-		alloc_fe = OCFS_BH_GET_DATA_READ(alloc_bh);
+		alloc_fe = (ocfs2_dinode *) alloc_bh->b_data;
 		newFileSize = alloc_fe->i_size;
 		allocSize = (u64)alloc_fe->i_clusters << osb->s_clustersize_bits;
 		if (newFileSize != alloc_inode->i_size ||
@@ -3184,7 +3178,7 @@
 			LOG_ERROR_STATUS (status);
 			goto leave;
 		}
-		fe = OCFS_BH_GET_DATA_READ(bh);
+		fe = (ocfs2_dinode *) bh->b_data;
 		/* we wrote it back out in ocfs_extend_system_file so
 		 * we can trust the sizes here */
 		fileSize = fe->i_size;
@@ -3279,20 +3273,20 @@
 	ocfs2_extent_block *extent = NULL;
 	struct buffer_head *extent_bh = NULL;
 	ocfs2_extent_list *fel;
-	ocfs2_dinode *fe = NULL;
+	ocfs2_dinode *fe;
 	__u64 offset;
 
 	LOG_ENTRY ();
 
 	offset = GET_INODE_FEOFF(inode);
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	if (offset != (fe->i_blkno << osb->sb->s_blocksize_bits))
 		BUG();
 
 	if (inode)
 		SET_BH_SEQNUM(inode, fe_bh);
 
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	fel = &fe->id2.i_list;
 
 	if (fel->l_tree_depth < 0) {
@@ -3318,7 +3312,7 @@
 				LOG_ERROR_STATUS (status);
 				goto leave;
 			}
-			extent = OCFS_BH_GET_DATA_READ(extent_bh);
+			extent = (ocfs2_extent_block *) extent_bh->b_data;
 			if (fel->l_tree_depth &&
 			    !IS_VALID_EXTENT_BLOCK(extent)) {
 				status = -EINVAL;
@@ -3537,7 +3531,7 @@
 	if (!local_alloc_bh)
 		BUG();
 
-	alloc = OCFS_BH_GET_DATA_READ(local_alloc_bh);
+	alloc = (ocfs2_dinode *) local_alloc_bh->b_data;
 	if (LOCAL_ALLOC(alloc)->la_bm_bits == 0) {
 		LOG_TRACE_STR("nothing to sync!");
 		goto bail;
@@ -3551,7 +3545,7 @@
 		}
 	}
 
-	alloc = OCFS_BH_GET_DATA_READ(local_alloc_bh);
+	alloc = (ocfs2_dinode *) local_alloc_bh->b_data;
 
 	LOG_TRACE_ARGS("alloc->la_bm_bits = %u, COUNT = %u, la_bits_set = %u\n", 
 		       LOCAL_ALLOC(alloc)->la_bm_bits,
@@ -3601,7 +3595,7 @@
 
 	LOG_ENTRY();
 
-	alloc = OCFS_BH_GET_DATA_READ(osb->local_alloc_bh);
+	alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 	if (LOCAL_ALLOC(alloc)->la_bm_bits != 0)
 		LOG_TRACE_STR("asking me to alloc a new window over a"
 			      " non-empty one");
@@ -3623,7 +3617,7 @@
 	}
 	atomic_inc(&osb->alloc_stats.bitmap_data);
 
-	alloc = OCFS_BH_GET_DATA_WRITE(osb->local_alloc_bh);
+	alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 
 	LOCAL_ALLOC(alloc)->la_bm_off = cluster_off;
 	LOCAL_ALLOC(alloc)->la_bm_bits = cluster_count;
@@ -3735,7 +3729,7 @@
 		goto bail;
 	}
 
-	alloc = OCFS_BH_GET_DATA_WRITE(osb->local_alloc_bh);
+	alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 tryagain:
 	/* If we need to initialize a new window, do so now. */
 	if (LOCAL_ALLOC(alloc)->la_bm_bits == 0) {
@@ -3765,7 +3759,7 @@
 			goto bail;
 		}
 		atomic_inc(&osb->alloc_stats.moves);
-		alloc = OCFS_BH_GET_DATA_WRITE(osb->local_alloc_bh);
+		alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 	}
 
 	/* Alright, try to satisfy the request. */
@@ -3805,7 +3799,7 @@
 				      main_bm_bh, main_bm_inode, 1);
 
 
-		alloc = OCFS_BH_GET_DATA_WRITE(osb->local_alloc_bh);
+		alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 
 		status = ocfs_sync_local_to_main(osb, handle, alloc,
 						 main_bm_inode);
@@ -3816,9 +3810,7 @@
 
 		ocfs_clear_local_alloc(alloc);
 
-		alloc = NULL;
-
-		alloc = OCFS_BH_GET_DATA_WRITE(osb->local_alloc_bh);
+		alloc = (ocfs2_dinode *) osb->local_alloc_bh->b_data;
 		goto tryagain;
 	}
 
@@ -3969,7 +3961,7 @@
 		goto bail;
 	}
 
-	alloc = OCFS_BH_GET_DATA_READ(alloc_bh);
+	alloc = (ocfs2_dinode *) alloc_bh->b_data;
 
 	/* do a little verification. */
 	num_used = ocfs_alloc_count_bits(alloc);
@@ -4039,7 +4031,7 @@
 		f = NULL;
 	}
 
-	alloc = OCFS_BH_GET_DATA_WRITE(bh);
+	alloc = (ocfs2_dinode *) bh->b_data;
 	ocfs_clear_local_alloc(alloc);
 
 	if (sync) {

Modified: trunk/src/bitmap.c
===================================================================
--- trunk/src/bitmap.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/bitmap.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -197,7 +197,7 @@
 	  globalsize, bitmap->validbits, sysonly);*/
 	/*LOG_TRACE_ARGS("before loop: c=%u, lastbh=%u, size=%u, "
 	  "localstart=%u\n", c, lastbh, size, localstart);*/
-	buffer = OCFS_BH_GET_DATA_READ(currbh);
+	buffer = currbh->b_data;
 
 	while ((bitoff = find_next_zero_bit(buffer,
 					    OCFS_BITS_IN_CHUNK(osb->sb),
@@ -227,7 +227,7 @@
 			localstart = bitoff = 0;
 			c++;
 			currbh = bitmap->chunk[c];
-			buffer = OCFS_BH_GET_DATA_READ(currbh);
+			buffer = currbh->b_data;
 			if (c == lastbh)
 				size = globalsize -
 					(OCFS_BITS_IN_CHUNK(osb->sb)
@@ -304,7 +304,7 @@
 	
 	for (i = 0; size > 0; size -= validbytes, i++) {
 		currbh = bitmap->chunk[i];
-		buffer = OCFS_BH_GET_DATA_READ(currbh);
+		buffer = currbh->b_data;
 		for (j = 0; j < validbytes; j++) {
 			/* U-U-U-GLY */
 			memcpy(&tmp, buffer, 1);
@@ -351,7 +351,7 @@
 		goto bail;
 	}
 
-	buff = OCFS_BH_GET_DATA_WRITE(currbh);
+	buff = currbh->b_data;
 
 	while (num--) {
 		set_bit (local++, buff);
@@ -372,7 +372,7 @@
 				LOG_ERROR_STATUS(status);
 				goto bail;
 			}
-			buff = OCFS_BH_GET_DATA_WRITE(currbh);
+			buff = currbh->b_data;
 		}
 	}
 
@@ -418,7 +418,7 @@
 		goto bail;
 	}
 
-	buff = OCFS_BH_GET_DATA_WRITE(currbh);
+	buff = currbh->b_data;
 
 	while (num--) {
 		clear_bit (local, buff);
@@ -445,7 +445,7 @@
 				goto bail;
 			}
 
-			buff = OCFS_BH_GET_DATA_WRITE(currbh);
+			buff = currbh->b_data;
 		}
 	}
 

Modified: trunk/src/buffer_head_io.c
===================================================================
--- trunk/src/buffer_head_io.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/buffer_head_io.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -248,9 +248,6 @@
 		bh = bhs[i];
 		ignore_cache = 0;
 
-		/* Lock everyone else out of this bh */
-		OCFS_BH_GET_DATA_READ(bh);
-
 		if (flags & OCFS_BH_CACHED && inode && 
 		    !TEST_BH_SEQNUM(inode, bh)) {
 #ifdef VERBOSE_BH_SEQNUM_TRACE

Modified: trunk/src/buffer_head_io.h
===================================================================
--- trunk/src/buffer_head_io.h	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/buffer_head_io.h	2004-06-18 00:55:28 UTC (rev 1136)
@@ -95,11 +95,6 @@
 
 #endif /* 2.4.x kernel */
 
-#define OCFS_BH_GET_DATA(bh)  ((void *) ((bh)->b_data))
-#define OCFS_BH_GET_DATA_READ(bh) OCFS_BH_GET_DATA(bh)
-#define OCFS_BH_GET_DATA_WRITE(bh) OCFS_BH_GET_DATA(bh)
-#define OCFS_BH_GET_DATA_WRITE_TRYLOCK(bh) OCFS_BH_GET_DATA(bh)
-
 #define STATE_BH_BITS	8
 #define USED_BH_BITS	23 /* Number of BH bits used up through JBD */
 
@@ -136,7 +131,7 @@
 static inline int check_block_zero_write(struct buffer_head *bh)
 {
 	if (unlikely(bh->b_blocknr == 0)) {
-		ocfs_vol_disk_hdr *hdr = OCFS_BH_GET_DATA_READ(bh);
+		ocfs_vol_disk_hdr *hdr = (ocfs_vol_disk_hdr *) bh->b_data;
 
 		if (hdr == NULL) {
 			printk ("ocfs2: failed to map bh page!!!\n");

Modified: trunk/src/dir.c
===================================================================
--- trunk/src/dir.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/dir.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -77,7 +77,7 @@
 	int err;
 	struct inode *inode = filp->f_dentry->d_inode;
 	struct super_block * sb = inode->i_sb;
-	char *buf = NULL;
+	int we_are_brown = 0;
 
 	LOG_ENTRY_ARGS("dirino=%llu\n", GET_INODE_FEOFF(inode));
 
@@ -106,13 +106,14 @@
 			}
 		}
 
-		if (buf) {
+#warning possible brown stain
+		if (we_are_brown) {
 #warning take this out later
 			LOG_ERROR_ARGS("uhoh! buf not null... block=%llu\n",
 					(unsigned long long)bh->b_blocknr);
 			BUG();
 		}
-		buf = OCFS_BH_GET_DATA_READ(bh);
+		we_are_brown = 1;
 revalidate:
 		/* If the dir block has changed since the last call to
 		 * readdir(2), then we might be pointing to an invalid
@@ -274,7 +275,7 @@
 		return 1;
 	}
 
-	de = (struct ocfs2_dir_entry *) OCFS_BH_GET_DATA_READ(bh);
+	de = (struct ocfs2_dir_entry *) bh->b_data;
 	de1 = (struct ocfs2_dir_entry *)
 			((char *) de + le16_to_cpu(de->rec_len));
 	if (le64_to_cpu(de->inode) != GET_INODE_FEOFF(inode) || 
@@ -299,7 +300,7 @@
 				offset += sb->s_blocksize;
 				continue;
 			}
-			de = (struct ocfs2_dir_entry *) OCFS_BH_GET_DATA_READ(bh);
+			de = (struct ocfs2_dir_entry *) bh->b_data;
 		}
 		if (!ocfs_check_dir_entry (inode, de, bh, offset)) {
 			brelse (bh);

Modified: trunk/src/dlm.c
===================================================================
--- trunk/src/dlm.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/dlm.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -138,7 +138,7 @@
 	}
 
 	for (i = 0; i < numnodes; i++) {
-		pubsect = OCFS_BH_GET_DATA_READ(bhs[i]);
+		pubsect = (ocfs_publish *) bhs[i]->b_data;
 		if (pubsect->time == (__u64) 0 || pubsect->publ_seq_num <= largestseqno) {
 			continue;
 		}
@@ -164,7 +164,7 @@
 
 	/* Increment the largest sequence number by one & */
 	/* write it in its own Publish Sector and set the Dirty Bit */
-	pubsect = OCFS_BH_GET_DATA_WRITE(bhs[osb->node_num]);
+	pubsect = (ocfs_publish *) bhs[osb->node_num]->b_data;
 	largestseqno++;
 	LOG_TRACE_ARGS ("largestseqno : %llu\n", largestseqno);
 	osb->publish_dirty = 1;
@@ -242,7 +242,7 @@
 			LOG_ERROR_STATUS (status = tmpstat);
 			goto finally;
 		}
-		fe = OCFS_BH_GET_DATA_READ(bh);
+		fe = (ocfs2_dinode *) bh->b_data;
 		curr_master = DISK_LOCK(fe)->dl_master;
 		lock_level = DISK_LOCK(fe)->dl_level;
 
@@ -255,7 +255,6 @@
 		    (!ocfs_node_is_recovering(osb, curr_master))) {
 			/* Reset the lock as not owned and return success?? */
 			/* This needs to be under some sort of cluster wide lock, */
-			fe = OCFS_BH_GET_DATA_WRITE(bh);
 			DISK_LOCK(fe)->dl_master = OCFS_INVALID_NODE_NUM;
 			DISK_LOCK(fe)->dl_level = OCFS_DLM_NO_LOCK;
 			tmpstat = ocfs_write_bh (osb, bh, 0, NULL);
@@ -333,7 +332,7 @@
 					goto finally;
 				}
 				LOG_TRACE_ARGS("broke cache lock, setting to NO_LOCK\n");
-				fe = OCFS_BH_GET_DATA_WRITE(bh);
+				fe = (ocfs2_dinode *) bh->b_data;
 				DISK_LOCK(fe)->dl_level = OCFS_DLM_NO_LOCK;
 				lock_level = OCFS_DLM_NO_LOCK;
 				tmpstat = ocfs_write_bh (osb, bh, 0, inode);
@@ -409,7 +408,7 @@
 		int node_in_map = ocfs_node_is_alive(vote_map, i);
 
 		status = 0;
-		vote = OCFS_BH_GET_DATA_READ(bhs[i]);
+		vote = (ocfs_vote *) bhs[i]->b_data;
 
 		/* A node we were asking to vote is dead */
 		if (!node_alive) {
@@ -529,7 +528,7 @@
 		LOG_ERROR_STATUS (status);
 		goto finally;
 	}
-	pubsect = OCFS_BH_GET_DATA_WRITE(bh);
+	pubsect = (ocfs_publish *) bh->b_data;
 
 	pubsect->dirty = 0;
 	pubsect->vote = 0;
@@ -590,12 +589,12 @@
 		}
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(*bh);
+	fe = (ocfs2_dinode *) (*bh)->b_data;
 
 	if (flags & DLOCK_FLAG_MASTER && 
 	    DISK_LOCK(fe)->dl_master != lockres->master_node_num) {
 		if (!changed) {
-			fe = OCFS_BH_GET_DATA_WRITE(*bh);
+			fe = (ocfs2_dinode *) (*bh)->b_data;
 		}
 		changed = 1;
 		DISK_LOCK(fe)->dl_master = lockres->master_node_num;
@@ -604,7 +603,7 @@
 	if (flags & DLOCK_FLAG_LOCK &&
 	    DISK_LOCK(fe)->dl_level != lockres->lock_type) {
 		if (!changed) {
-			fe = OCFS_BH_GET_DATA_WRITE(*bh);
+			fe = (ocfs2_dinode *) (*bh)->b_data;
 		}
 		changed = 1;
 		DISK_LOCK(fe)->dl_level = lockres->lock_type;
@@ -621,7 +620,7 @@
 
 		if (!ocfs_node_map_is_equal(&disk_map, &lockres->oin_openmap)) {
 			if (!changed) {
-				fe = OCFS_BH_GET_DATA_WRITE(*bh);
+				fe = (ocfs2_dinode *) (*bh)->b_data;
 			}
 			changed = 1;
 			ocfs_set_disk_lock_open_map(osb, DISK_LOCK(fe), &lockres->oin_openmap);
@@ -631,7 +630,7 @@
 	if (flags & DLOCK_FLAG_SEQ_NUM &&
 	    DISK_LOCK(fe)->dl_seq_num != lockres->last_upd_seq_num) {
 		if (!changed) {
-			fe = OCFS_BH_GET_DATA_WRITE(*bh);
+			fe = (ocfs2_dinode *) (*bh)->b_data;
 		}
 		changed = 1;
 		DISK_LOCK(fe)->dl_seq_num = lockres->last_upd_seq_num;
@@ -809,7 +808,7 @@
 			LOG_ERROR_STATUS (status);
 			goto finally;
 		}
-		disklock = OCFS_BH_GET_DATA_READ(*b);
+		disklock = (ocfs2_dinode *) (*b)->b_data;
 
 		if (!IS_VALID_FILE_ENTRY(disklock))
 			BUG();
@@ -1025,7 +1024,7 @@
 			goto finito;
 		}
 	}
-	fe = OCFS_BH_GET_DATA_READ(*b);
+	fe = (ocfs2_dinode *) (*b)->b_data;
 #if 0
 	ocfs_node_map_init(osb, &openmap);
 	ocfs_get_disk_lock_open_map(osb, DISK_LOCK(fe), &openmap);
@@ -1112,7 +1111,7 @@
 	}
 
 finally:
-	fe = OCFS_BH_GET_DATA_WRITE(*b);
+	fe = (ocfs2_dinode *) (*b)->b_data;
 
 	LOG_TRACE_ARGS("writing lock now... releasemaster: %s, level: %d, master: %d\n",
 		       flags & FLAG_FILE_RELEASE_MASTER ? "yes" : "no", 
@@ -1279,7 +1278,7 @@
 		need_to_zap_buffers = 1;
 	} else {
 		if (bh) {
-			fe = OCFS_BH_GET_DATA_READ(bh);
+			fe = (ocfs2_dinode *) bh->b_data;
 			/* may not need to rewrite the lock later if we already have a cachelock */
 			need_lock_write = (DISK_LOCK(fe)->dl_master != osb->node_num ||
 					DISK_LOCK(fe)->dl_level != OCFS_DLM_ENABLE_CACHE_LOCK);
@@ -1393,7 +1392,7 @@
 
 	/* pick up any change to the open map */
 	if (bh) {
-		fe = OCFS_BH_GET_DATA_READ(bh);
+		fe = (ocfs2_dinode *) bh->b_data;
 		ocfs_get_disk_lock_open_map(osb, DISK_LOCK(fe), 
 					    &lockres->oin_openmap);
 	}

Modified: trunk/src/file.c
===================================================================
--- trunk/src/file.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/file.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -110,7 +110,7 @@
 	if (handle)
 		local_handle = 0;
 
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	if (!IS_VALID_FILE_ENTRY(fe)) {
 		status = -EINVAL;
 		LOG_ERROR_STATUS(status);
@@ -460,7 +460,7 @@
 		}
 		
 		while (1) {
-			eb = OCFS_BH_GET_DATA_READ(eb_bh);
+			eb = (ocfs2_extent_block *) eb_bh->b_data;
 			el = &eb->h_list;
 			
 			if (!IS_VALID_EXTENT_BLOCK(eb) ||
@@ -575,7 +575,7 @@
 		goto leave;
 	}
 
-	fileEntry = OCFS_BH_GET_DATA_READ(bh);
+	fileEntry = (ocfs2_dinode *) bh->b_data;
 
 	if (!IS_VALID_FILE_ENTRY(fileEntry)) {
 		LOG_ERROR_ARGS ("Invalid fe at offset %llu", file_off);
@@ -617,7 +617,7 @@
 		goto leave;
 	}
 
-	fileEntry = OCFS_BH_GET_DATA_WRITE(bh);
+	fileEntry = (ocfs2_dinode *) bh->b_data;
 
 	fileEntry->i_mtime = OCFS_CURRENT_TIME;
 
@@ -933,7 +933,7 @@
 		goto leave;
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 	if (!IS_VALID_FILE_ENTRY(fe)) {
 		LOG_ERROR_ARGS ("Invalid fe at offset %llu", file_off);
 		status = -EFAIL;
@@ -966,7 +966,7 @@
 
 	down(&OCFS_I(inode)->priv_sem);
 
-	fe = OCFS_BH_GET_DATA_WRITE(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 
 	/* the file entry might have changed underneath us (while
 	 * waiting on the lock). make sure the size is still a valid
@@ -1079,7 +1079,7 @@
 		}
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 
 	if (!IS_VALID_FILE_ENTRY(fe)) {
 		printk("fe->signature=%8s\n", fe->i_signature);
@@ -1111,7 +1111,7 @@
 
 		/* Grab a lock on the entry found if we have more than
 		 * 1 extents and also make this node the master*/
-		fe = OCFS_BH_GET_DATA_READ(bh);
+		fe = (ocfs2_dinode *) bh->b_data;
 
 		/* now we always take an EXTEND lock */
 		lockFlags = FLAG_FILE_EXTEND;
@@ -1136,7 +1136,7 @@
 		goto leave;
 	}
 
-	fe = OCFS_BH_GET_DATA_WRITE(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 
 	if (file_size > (__s64)current_alloc) {
 		alloc_size = file_size - current_alloc;
@@ -1185,7 +1185,6 @@
 			struct buffer_head **bhs = NULL;
 			int numbhs = actualLength >> osb->sb->s_blocksize_bits;
 			int i;
-			char *data;
 			
 			bhs = kmalloc(numbhs*sizeof(struct buffer_head *), GFP_KERNEL);
 			if (!bhs) {
@@ -1203,13 +1202,12 @@
 				goto leave;
 			}
 			
-			for(i = 0; i < numbhs; i++) {
-				data = OCFS_BH_GET_DATA_WRITE(bhs[i]);
-				memset(data, 0, osb->sb->s_blocksize);
+			for (i = 0; i < numbhs; i++) {
+				memset(bhs[i]->b_data, 0, osb->sb->s_blocksize);
 			}
 			
 			status = ocfs_write_bhs(osb, bhs, numbhs, 0, NULL);
-			for(i = 0; i < numbhs; i++)
+			for (i = 0; i < numbhs; i++)
 				brelse(bhs[i]);
 			kfree(bhs);
 			if (status < 0) {
@@ -1250,7 +1248,7 @@
 			LOG_ERROR_STATUS (status);
 			goto leave;
 		}
-		fe = OCFS_BH_GET_DATA_WRITE(bh);
+		fe = (ocfs2_dinode *) bh->b_data;
 
 		/* update the total allocation size here */
 		fe->i_clusters += 

Modified: trunk/src/heartbeat.c
===================================================================
--- trunk/src/heartbeat.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/heartbeat.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -83,7 +83,7 @@
 			}
 		}
 
-		publish = OCFS_BH_GET_DATA_WRITE(*pub_bh);
+		publish = (ocfs_publish *) (*pub_bh)->b_data;
 		if ((publish->dirty) && (!osb->publish_dirty)) { 
 			LOG_TRACE_STR(("NMThread reads the bit as dirty")); 
 			publish->dirty = 0; 
@@ -145,14 +145,14 @@
 	if (first_time) {
 #if !defined(USERSPACE_TOOL)
 		/* Read the last comm_seq_num */
-		publish = OCFS_BH_GET_DATA_READ(bhs[osb->node_num]);
+		publish = (ocfs_publish *) bhs[osb->node_num]->b_data;
 		spin_lock (&OcfsGlobalCtxt.comm_seq_lock);
 		OcfsGlobalCtxt.comm_seq_num = publish->comm_seq_num + 10;
 		spin_unlock (&OcfsGlobalCtxt.comm_seq_lock);
 #endif
 		/* Refresh local buffers */
 		for (i = 0;  i < num_nodes; i++) {
-			publish = OCFS_BH_GET_DATA_READ(bhs[i]);
+			publish = (ocfs_publish *) bhs[i]->b_data;
 			node_map[i].time = publish->time;
 			if (publish->mounted && i != osb->node_num) {
 				printk("ocfs2: Adding %s (node %d) to "
@@ -168,7 +168,7 @@
 	}
 
 	for (i = 0; i < num_nodes; i++) {
-		publish = OCFS_BH_GET_DATA_READ(bhs[i]);
+		publish = (ocfs_publish *) bhs[i]->b_data;
 
 		/* Loop if slot is unused */
 		if (publish->time == 0ULL)

Modified: trunk/src/inode.c
===================================================================
--- trunk/src/inode.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/inode.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -533,7 +533,7 @@
 		goto bail;
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 	sysfile = le32_to_cpu(fe->i_flags) & OCFS2_SYSTEM_FL;
 	if (S_ISCHR(fe->i_mode) || S_ISBLK(fe->i_mode))
     		inode->i_rdev = huge_decode_dev(le64_to_cpu(fe->id1.dev1.i_rdev));
@@ -728,7 +728,7 @@
 	release_disk_lock = 1;
 
 	/* check OCFS_SYNC_FLAG_ORPHANED */
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	if (!(fe->i_flags & OCFS2_ORPHANED_FL)) {
 		/* for lack of a better error? */
 		status = -EEXIST;
@@ -753,7 +753,7 @@
 		goto bail_locked;
 	}
 
-	fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	fe->i_dtime = OCFS_CURRENT_TIME;
 	fe->i_flags &= (~(OCFS2_VALID_FL | OCFS2_ORPHANED_FL));
 
@@ -966,7 +966,7 @@
 		LOG_ERROR_STATUS (status);
 		goto bail;
 	}
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 
 	if (!IS_VALID_FILE_ENTRY(fe)) {
 		LOG_ERROR_ARGS ("Invalid fe at offset %llu", entryOffset);
@@ -1003,7 +1003,6 @@
 	ocfs_super *osb;
 	__s64 vbo, lbo;
 	int readflags = OCFS_BH_CACHED;
-	char *buf;
 
 	osb = OCFS_SB(inode->i_sb);
 	vbo = (__s64) block << inode->i_sb->s_blocksize_bits;
@@ -1072,8 +1071,7 @@
 		if (fatal)
 			goto fail;
 
-		buf = OCFS_BH_GET_DATA_WRITE(bh);
-		memset(buf, 0, osb->sb->s_blocksize);
+		memset(bh->b_data, 0, osb->sb->s_blocksize);
 		fatal = ocfs_journal_dirty(handle, bh);	
 		if (fatal)
 			goto fail;
@@ -1979,7 +1977,7 @@
 	down(&OCFS_I(inode)->priv_sem);
 	drop_priv_sem = 1;
 
-	fe = OCFS_BH_GET_DATA_READ(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 
 	/* Make sure that what we found is not a directory. */
 	if ((OCFS_I(inode)->oin_flags & OCFS_OIN_DIRECTORY))

Modified: trunk/src/journal.c
===================================================================
--- trunk/src/journal.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/journal.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -547,7 +547,7 @@
 		LOG_TRACE_ARGS("Aborting block %lu, forget=%u\n", co->blocknr,
 			       co->forget);
 
-		data = OCFS_BH_GET_DATA_WRITE(bh);
+		data = bh->b_data;
 		if (co->forget) {
 			/* journal_forget will perform a brelse for us */
 			get_bh(bh);
@@ -636,8 +636,7 @@
  */
 int ocfs_journal_access(ocfs_journal_handle *handle, struct buffer_head *bh, int type) 
 {
-	int status = -1;
-	char *data;
+	int status;
 	int i;
 	int found = 0;
 
@@ -655,9 +654,6 @@
 				(unsigned long long)bh->b_blocknr);
 		BUG();
 	}
-	/* by taking a "read" lock, we prevent anyone from doing any
-	 * IO on the buffers while in journal_get_*_access */
-	data = OCFS_BH_GET_DATA_READ(bh);
 
 	/* search for this buffer in our copyout list. If it's already
 	 * there, we need to do nothing. Otherwise, add it to the
@@ -665,11 +661,12 @@
 	 *
 	 * Note that we want to make a copy of the buffer on the 1st access
 	 * call as that's when we know for sure it's clean. */
-	for(i = 0; i < handle->num_co; i++)
+	for (i = 0; i < handle->num_co; i++) {
 		if (handle->co_buffs[i].blocknr == bh->b_blocknr) {
 			found = 1;
 			break;
 		}
+	}
 
 	if (!found) {
 		i = handle->num_co;
@@ -704,7 +701,8 @@
 				status = -ENOMEM;
 				goto done;
 			}
-			memcpy(handle->co_buffs[i].data, data, bh->b_size);
+			memcpy(handle->co_buffs[i].data, bh->b_data,
+			       bh->b_size);
 		}
 	}
 
@@ -904,7 +902,7 @@
 			LOG_ERROR_STR("Could not get lock on journal!");
 		goto done;
 	}
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 
 	/* should be exactly eight megs.  need to run tuneocfs otherwise. */
 	if (fe->i_size != OCFS_JOURNAL_DEFAULT_SIZE) {
@@ -1369,7 +1367,7 @@
 	printk("ocfs2: Recovering node %d from device (%u,%u)\n", node_num, 
 	       MAJOR(osb->sb->s_dev), MINOR(osb->sb->s_dev));
 
-	fe = OCFS_BH_GET_DATA_READ(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 	/* gonna need this later */
 	alloc_size = (u64)fe->i_clusters << osb->s_clustersize_bits;
 
@@ -1497,7 +1495,7 @@
 		goto finally;
 	}
 	
-	publish = OCFS_BH_GET_DATA_WRITE(publish_bh);
+	publish = (ocfs_publish *) publish_bh->b_data;
 
 	publish->dirty = 0;
 	publish->vote = 0;

Modified: trunk/src/lockres.c
===================================================================
--- trunk/src/lockres.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/lockres.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -93,7 +93,7 @@
 			goto finally;
 		}
 
-		fe = OCFS_BH_GET_DATA_READ(*b);
+		fe = (ocfs2_dinode *) (*b)->b_data;
 		if (!IS_VALID_FILE_ENTRY(fe))
 			BUG();
 

Modified: trunk/src/namei.c
===================================================================
--- trunk/src/namei.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/namei.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -243,7 +243,7 @@
 		goto leave;
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(new_fe_bh);
+	fe = (ocfs2_dinode *) new_fe_bh->b_data;
 
 	ocfs_populate_inode (inode, fe, 1);
 
@@ -272,7 +272,7 @@
 			LOG_ERROR_STATUS(status);
 			goto leave;
 		}
-		de = OCFS_BH_GET_DATA_WRITE(newdirbh);
+		de = (struct ocfs2_dir_entry *) newdirbh->b_data;
 		de->inode = cpu_to_le64(file_off);
 		de->name_len = 1;
 		de->rec_len =
@@ -300,7 +300,7 @@
 			LOG_ERROR_STATUS(status);
 			goto leave;
 		}
-		fe = OCFS_BH_GET_DATA_WRITE(parent_fe_bh);
+		fe = (ocfs2_dinode *) parent_fe_bh->b_data;
 		fe->i_links_count++;
 		fe = NULL;
 		status = ocfs_journal_dirty(handle, parent_fe_bh);
@@ -402,7 +402,7 @@
 		goto leave;
 	}
 
-	fe = OCFS_BH_GET_DATA_WRITE(*new_fe_bh);
+	fe = (ocfs2_dinode *) (*new_fe_bh)->b_data;
 	memset(fe, 0, osb->sb->s_blocksize);
 	inode->i_ino = ino_from_off(osb->sb, disk_off);
 	/*
@@ -638,7 +638,7 @@
 		goto leave;
 	}
 
-	fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+	fe = (ocfs2_dinode *) fe_bh->b_data;
 	if (fe->i_links_count != inode->i_nlink) {
 		printk("ocfs_unlink: hmm, inode has nlink = %u, fe has link_cnt = %u. Setting inode from fe.\n",
 		       inode->i_nlink, fe->i_links_count);
@@ -678,7 +678,7 @@
 			LOG_ERROR_STATUS(status);
 			goto leave;
 		}
-		dirfe = OCFS_BH_GET_DATA_WRITE(parent_node_bh);
+		dirfe = (ocfs2_dinode *) parent_node_bh->b_data;
 		dirfe->i_links_count--;
 		status = ocfs_journal_dirty(handle, fe_bh);
 		if (status < 0) {
@@ -1071,7 +1071,7 @@
 			}
 		}
 
-		newfe = OCFS_BH_GET_DATA_WRITE(newfe_bh);
+		newfe = (ocfs2_dinode *) newfe_bh->b_data;
 		if (S_ISDIR (new_inode->i_mode))
 			newfe->i_links_count = 0;
 		else
@@ -1101,7 +1101,6 @@
 			LOG_ERROR_STATUS (status);
 			goto finally;
 		}
-		OCFS_BH_GET_DATA_WRITE(new_de_bh);
 		new_de->inode = le64_to_cpu(GET_INODE_FEOFF(old_inode));
 		new_de->file_type = old_de->file_type;
 		new_dir->i_version++;
@@ -1147,7 +1146,6 @@
 			// BAD
 			goto bail;
 		}
-		OCFS_BH_GET_DATA_WRITE(old_inode_de_bh);
 		PARENT_INO(old_inode_de_bh->b_data) = le64_to_cpu(GET_INODE_FEOFF(new_dir));
 		status = ocfs_journal_dirty(handle, old_inode_de_bh);
 		if (status < 0) {
@@ -1293,7 +1291,7 @@
 		goto abort_trans;
 	}
 
-	fe = OCFS_BH_GET_DATA_READ(new_fe_bh);
+	fe = (ocfs2_dinode *) new_fe_bh->b_data;
 	file_off = fe->i_blkno << osb->sb->s_blocksize_bits;
 	fe = NULL;
 
@@ -1308,7 +1306,7 @@
 	}
 	inode->i_rdev = OCFS_NODEV;
 
-	fe = OCFS_BH_GET_DATA_READ(new_fe_bh);
+	fe = (ocfs2_dinode *) new_fe_bh->b_data;
 	ocfs_populate_inode (inode, fe, 1);
 	fe = NULL;
 
@@ -1410,7 +1408,6 @@
 	struct ocfs2_dir_entry * de, * de1;
 	struct super_block * sb;
 	int retval, status;
-	char *buf;
 	ocfs2_dinode *fe = NULL;
 
 	sb = dir->i_sb;
@@ -1438,7 +1435,6 @@
 
 				/* create next block */
 				status = ocfs_journal_access(handle, bh, OCFS_JOURNAL_ACCESS_WRITE);
-				buf = OCFS_BH_GET_DATA_WRITE(bh);
 				de = (struct ocfs2_dir_entry *) bh->b_data;
 				de->inode = 0;
 				de->rec_len = le16_to_cpu(sb->s_blocksize);
@@ -1447,18 +1443,15 @@
 
 				/* update the parent file entry file size */
 				status = ocfs_journal_access(handle, parent_fe_bh, OCFS_JOURNAL_ACCESS_WRITE);
-				buf = OCFS_BH_GET_DATA_WRITE(parent_fe_bh);
-				fe = (ocfs2_dinode *)buf;
+				fe = (ocfs2_dinode *) parent_fe_bh->b_data;
 				fe->i_size = dir->i_size;
 				status = ocfs_journal_dirty(handle, parent_fe_bh);
 			} else {
 				/* move to next block */
-				buf = OCFS_BH_GET_DATA_READ(bh);
 				de = (struct ocfs2_dir_entry *) bh->b_data;
 			}
 			
 		}
-		buf = OCFS_BH_GET_DATA_READ(bh);
 		if (!ocfs_check_dir_entry (dir, de, bh, offset)) {
 			retval = -ENOENT;
 			goto bail;
@@ -1472,7 +1465,6 @@
 		    (le16_to_cpu(de->rec_len) >=
 		     (OCFS2_DIR_REC_LEN(de->name_len) + rec_len))) {
 			status = ocfs_journal_access(handle, bh, OCFS_JOURNAL_ACCESS_WRITE);
-			buf = OCFS_BH_GET_DATA_WRITE(bh);
 			/* By now the buffer is marked for journaling */
 			offset += le16_to_cpu(de->rec_len);
 			if (le64_to_cpu(de->inode)) {
@@ -1521,7 +1513,7 @@
 
 	i = 0;
 	pde = NULL;
-	de = OCFS_BH_GET_DATA_READ(bh);
+	de = (struct ocfs2_dir_entry *) bh->b_data;
 	while (i < bh->b_size) {
 		if (!ocfs_check_dir_entry(dir, de, bh, i)) {
 			status = -EIO;
@@ -1533,7 +1525,6 @@
 				status = -EIO;
 				goto bail;
 			}
-			OCFS_BH_GET_DATA_WRITE(bh);
 			if (pde)
 				pde->rec_len = cpu_to_le16(le16_to_cpu(pde->rec_len) +
 						    le16_to_cpu(de->rec_len));
@@ -1565,7 +1556,7 @@
 	int de_len;
 	int ret = 0;
 
-	de = OCFS_BH_GET_DATA_READ(bh);
+	de = (struct ocfs2_dir_entry *) bh->b_data;
 	dlimit = (char *)de + dir->i_sb->s_blocksize;
 	while ((char *) de < dlimit) {
 		/* this code is executed quadratically often */
@@ -1767,7 +1758,7 @@
 
 	/* we're a cluster, and nlink can change on disk from
 	 * underneath us... */
-	orphan_fe = OCFS_BH_GET_DATA_WRITE(orphan_dir_bh);
+	orphan_fe = (ocfs2_dinode *) orphan_dir_bh->b_data;
 	if (S_ISDIR(inode->i_mode))
 		orphan_fe->i_links_count++;
 	orphan_dir_inode->i_nlink = orphan_fe->i_links_count;
@@ -1853,7 +1844,7 @@
 	}
 
 	/* do the i_nlink dance! :) */
-	orphan_fe = OCFS_BH_GET_DATA_WRITE(orphan_dir_bh);
+	orphan_fe = (ocfs2_dinode *) orphan_dir_bh->b_data;
 	if (S_ISDIR(inode->i_mode))
 		orphan_fe->i_links_count--;
 	orphan_dir_inode->i_nlink = orphan_fe->i_links_count;
@@ -1924,7 +1915,7 @@
 	if (err < 0)
 		goto bail;
 
-	fe = OCFS_BH_GET_DATA_WRITE(bh);
+	fe = (ocfs2_dinode *) bh->b_data;
 	fe->i_links_count++;
 	inode->i_nlink = fe->i_links_count;
 	inode->i_ctime = CURRENT_TIME;

Modified: trunk/src/nm.c
===================================================================
--- trunk/src/nm.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/nm.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -206,12 +206,12 @@
 {
 	int status = 0;
 	ocfs_vote_request_ctxt *ctxt = NULL;
-	ocfs_publish * publish;
+	ocfs_publish *publish;
 	struct ocfs_sched_vote *sv = NULL;
 
 	LOG_ENTRY_ARGS("(vote_node = %d, bh = 0x%p)\n", vote_node, bh);
 
-	publish = OCFS_BH_GET_DATA_READ(bh);
+	publish = (ocfs_publish *) bh->b_data;
 
 	if (osb->last_publ_seq_num[vote_node] == publish->publ_seq_num){
 		LOG_TRACE_ARGS("Already voted on node %d, seqnum (%llu)\n", 
@@ -322,7 +322,7 @@
 		}
 
 		bh = osb->autoconfig_bhs[OCFS_VOLCFG_NEWCFG_SECTORS + osb->node_num];
-		publish = OCFS_BH_GET_DATA_READ(bh);
+		publish = (ocfs_publish *) bh->b_data;
 		if ((osb->check_mounted) && (publish->mounted == 0)) {
 			printk("ocfs2: Heartbeat timed out, volume has been "
 			       "recovered from another node!\n");
@@ -337,7 +337,8 @@
 		up (&(osb->publish_lock));
 
 		/* If another node was added to the config read and update the cfg */
-		node_cfg_hdr = OCFS_BH_GET_DATA_READ(osb->autoconfig_bhs[1]);
+		node_cfg_hdr =
+			(ocfs_node_config_hdr *) osb->autoconfig_bhs[1]->b_data;
 		num_nodes = node_cfg_hdr->num_nodes;
 		cfg_seq_num = node_cfg_hdr->cfg_seq_num;
 
@@ -368,7 +369,7 @@
 		/* Check for the highest node looking for a vote, if anybody is looking */
 		for (i = 0, which = OCFS_VOLCFG_NEWCFG_SECTORS; i < num_nodes; i++, which++) {
 			ocfs_node_map vote_map;
-			publish = OCFS_BH_GET_DATA_READ(osb->autoconfig_bhs[which]);
+			publish = (ocfs_publish *) osb->autoconfig_bhs[which]->b_data;
 
 			if (publish->time == (__u64) 0)
 				goto loop;
@@ -412,11 +413,10 @@
 					  + osb->node_num];
 			down(&(osb->publish_lock));
 
-			publish = OCFS_BH_GET_DATA_READ(bh);
+			publish = (ocfs_publish *) bh->b_data;
 			voted = publish->vote;
 
 			if (voted) {
-				publish = OCFS_BH_GET_DATA_WRITE(bh);
 				publish->vote = 0;
 				status = ocfs_write_bh(osb, bh, 0, NULL);
 				if (status < 0) {
@@ -841,7 +841,7 @@
 	if (disk_vote) {
 		/* Zero out the vote for everybody, if any already set
 		 * and hung */
-		vote = OCFS_BH_GET_DATA_WRITE(vote_bh);
+		vote = (ocfs_vote *) vote_bh->b_data;
 		vote->node = (__u8)-1;
 		vote->type = 0;
 		status = ocfs_write_bh(osb, vote_bh, 0, NULL);
@@ -1081,11 +1081,11 @@
 				break;
 			}
 	
-			fe = OCFS_BH_GET_DATA_READ(fe_bh);
+			fe = (ocfs2_dinode *) fe_bh->b_data;
 			is_dir = S_ISDIR(fe->i_mode);
 			is_locked = DISK_LOCK(fe)->dl_level > OCFS_DLM_NO_LOCK;
 			if (vote_type == CHANGE_MASTER) {
-				fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+				fe = (ocfs2_dinode *) fe_bh->b_data;
 				if (inode && OCFS_I(inode)->open_hndl_cnt) {
 					ocfs_node_map_init(osb, &disk_map);
 					ocfs_get_disk_lock_open_map(osb, DISK_LOCK(fe), &disk_map);
@@ -1102,7 +1102,7 @@
 			if (is_locked || vote_type == CHANGE_MASTER) {
 				if (vote_type == RELEASE_CACHE) {
 					LOG_TRACE_STR("release cache vote, setting to NO_LOCK");
-					fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+					fe = (ocfs2_dinode *) fe_bh->b_data;
 					DISK_LOCK(fe)->dl_level = OCFS_DLM_NO_LOCK;
 				}
 				status = ocfs_write_bh(osb, fe_bh, 0, inode);
@@ -1130,13 +1130,13 @@
 				LOG_ERROR_STATUS (status);
 				break;
 			}
-			fe = OCFS_BH_GET_DATA_READ(fe_bh);
+			fe = (ocfs2_dinode *) fe_bh->b_data;
 
 			if (!(fe->i_flags & OCFS2_VALID_FL)) {
 				vote_response = FLAG_VOTE_FILE_DEL;
 			} else {
 				ocfs_node_map_init(osb, &disk_map);
-				fe = OCFS_BH_GET_DATA_WRITE(fe_bh);
+				fe = (ocfs2_dinode *) fe_bh->b_data;
 				ocfs_get_disk_lock_open_map(osb, DISK_LOCK(fe), &disk_map);
 				ocfs_node_map_set_bit(&disk_map, node_num);
 				ocfs_set_disk_lock_open_map(osb, DISK_LOCK(fe), &disk_map);
@@ -1239,7 +1239,7 @@
 	}
 
 	if (disk_vote) {
-		vote = OCFS_BH_GET_DATA_WRITE(vote_bh);
+		vote = (ocfs_vote *) vote_bh->b_data;
 		vote->lock_id = lock_id;
 		vote->vote_seq_num = seq_num;
 		vote->open_handle = open_handle;

Modified: trunk/src/super.c
===================================================================
--- trunk/src/super.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/super.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -758,7 +758,7 @@
 		return -EIO;
 	}
 
-	bm_lock = OCFS_BH_GET_DATA_READ(bh);
+	bm_lock = (ocfs2_dinode *) bh->b_data;
 
 	freebits = numbits = osb->cluster_bitmap.validbits;
 
@@ -856,7 +856,7 @@
 		LOG_ERROR_STATUS(status);
 		goto bail;
 	}
-	hdr = OCFS_BH_GET_DATA_READ(*bh);
+	hdr = (ocfs1_vol_disk_hdr *) (*bh)->b_data;
 	if (hdr->major_version == OCFS1_MAJOR_VERSION) {
 		LOG_ERROR_ARGS("incompatible version: %u.%u\n",
 			       hdr->major_version, hdr->minor_version);
@@ -890,7 +890,7 @@
 			LOG_ERROR_STATUS(status = tmpstat);
 			goto bail;
 		}
-		di = (ocfs2_dinode *) OCFS_BH_GET_DATA_READ(*bh);
+		di = (ocfs2_dinode *) (*bh)->b_data;
 		status = ocfs_verify_volume(di, *bh, blksize);
 		if (status >= 0)
 			goto bail;
@@ -1268,7 +1268,7 @@
 		LOG_ERROR_STATUS (status);
 		goto done;
 	}
-	publish = OCFS_BH_GET_DATA_READ(publish_bh);
+	publish = (ocfs_publish *) publish_bh->b_data;
 
 	retval = publish->mounted;
 
@@ -1294,7 +1294,7 @@
 		LOG_ERROR_STATUS (status);
 		goto done;
 	}
-	publish = OCFS_BH_GET_DATA_WRITE(publish_bh);
+	publish = (ocfs_publish *) publish_bh->b_data;
 
 	/* change it */
 	publish->mounted = value;
@@ -1390,7 +1390,7 @@
 
 
 	/* this needs to be done before most other initializations */
-	di = OCFS_BH_GET_DATA_READ(bh);
+	di = (ocfs2_dinode *) bh->b_data;
 	osb->max_nodes = le32_to_cpu(di->id2.i_super.s_max_nodes);
 	printk("max_nodes for this device: %u\n", osb->max_nodes);
 
@@ -1509,7 +1509,7 @@
 di->id2.i_super.s_creator_os = cpu_to_le32(OCFS2_OS_LINUX);
 #endif	
 
-	di = OCFS_BH_GET_DATA_READ(bh);
+	di = (ocfs2_dinode *) bh->b_data;
 
 	/* get some pseudo constants for clustersize bits */
 	osb->s_clustersize_bits = le32_to_cpu(di->id2.i_super.s_clustersize_bits);
@@ -1658,7 +1658,7 @@
 		LOG_ERROR_STATUS (status);
 		goto finally;
 	}
-	publish = OCFS_BH_GET_DATA_WRITE(publish_bh);
+	publish = (ocfs_publish *) publish_bh->b_data;
 
 	/* 
 	 * FIXME: This really ought to be something exported by the
@@ -1839,7 +1839,7 @@
 		goto finally;
 	}
 	
-	publish = OCFS_BH_GET_DATA_READ(publish_bh);
+	publish = (ocfs_publish *) publish_bh->b_data;
 	/* we copy this out of the publish sector and then unlock
 	 * the bh as other functions will need to modify it. */
 	mounted = publish->mounted;

Modified: trunk/src/volcfg.c
===================================================================
--- trunk/src/volcfg.c	2004-06-17 22:44:53 UTC (rev 1135)
+++ trunk/src/volcfg.c	2004-06-18 00:55:28 UTC (rev 1136)
@@ -142,7 +142,6 @@
 	__u64 offset;
 	int i;
 	ocfs_node_config_info *disk_node = NULL;
-	char *buf;
 	__u32 node_num;
 	__u32 size;
 	struct buffer_head **cfg_bhs = NULL;
@@ -169,7 +168,7 @@
 	/* Check if preferred node num is available */
 	node_num = OCFS_INVALID_NODE_NUM;
 	if (pref_node_num >= 0 && pref_node_num < osb->max_nodes) {
-		disk_node = OCFS_BH_GET_DATA_READ(cfg_bhs[pref_node_num]);
+		disk_node = (ocfs_node_config_info *) cfg_bhs[pref_node_num]->b_data;
 		if (disk_node->node_name[0] == '\0')
 			node_num = pref_node_num;
 	}
@@ -177,7 +176,7 @@
 	/* if not, find the first available empty slot */
 	if (node_num == OCFS_INVALID_NODE_NUM) {
 		for (node_num = 0; node_num < osb->max_nodes; node_num++) {
-			disk_node = OCFS_BH_GET_DATA_READ(cfg_bhs[node_num]);
+			disk_node = (ocfs_node_config_info *) cfg_bhs[node_num]->b_data;
 			if (disk_node->node_name[0] == '\0')
 				break;
 		}
@@ -192,8 +191,7 @@
 	}
 
 	/* Copy the new nodecfg into the memory buffer */
-	buf = OCFS_BH_GET_DATA_WRITE(cfg_bhs[node_num]);
-	memcpy (buf, new_disk_node, osb->sb->s_blocksize);
+	memcpy (cfg_bhs[node_num]->b_data, new_disk_node, osb->sb->s_blocksize);
 
 	/* Write the new node details on disk */
 	status = ocfs_write_bh(osb, cfg_bhs[node_num], 0, NULL);
@@ -227,8 +225,7 @@
 static int ocfs_write_volcfg_header (ocfs_super * osb, ocfs_volcfg_op op)
 {
 	int status = 0;
-	ocfs_node_config_hdr *hdr;
-	ocfs_node_config_hdr *hdr_copy;
+	ocfs_node_config_hdr *hdr, *hdr_copy;
 	__u64 offset;
 	struct buffer_head *node_cfg_bhs[2];
 	
@@ -250,8 +247,8 @@
 		goto bail;
 	}
 
-	hdr = OCFS_BH_GET_DATA_WRITE(node_cfg_bhs[0]);
-	hdr_copy = OCFS_BH_GET_DATA_WRITE(node_cfg_bhs[1]);
+	hdr = (ocfs_node_config_hdr *) node_cfg_bhs[0]->b_data;
+	hdr_copy = (ocfs_node_config_hdr *) node_cfg_bhs[1]->b_data;
 
 	if (op == OCFS_VOLCFG_ADD)
 		hdr->num_nodes++;
@@ -345,7 +342,7 @@
 	}
 	cfg_task->bh = bh;
 
-	for (i=0; i<50; i++) {
+	for (i = 0; i < 50; i++) {
 		/* Read the volcfg lock sector */
 		status = ocfs_read_bh(osb, lock_off, &bh, 0, NULL);
 		if (status < 0) {
@@ -353,9 +350,7 @@
 			goto finito;
 		}
 
-		lock_buf = OCFS_BH_GET_DATA_WRITE(bh);
-
-		disk_lock = (ocfs2_disk_lock *)lock_buf;
+		disk_lock = (ocfs2_disk_lock *) bh->b_data;
 		lock_node_num = disk_lock->dl_master;
 
 		if (disk_lock->dl_level == 0 || break_lock) {
@@ -389,7 +384,7 @@
 			goto finito;
 		}
 
-		lock_buf = OCFS_BH_GET_DATA_WRITE(bh);
+		lock_buf = bh->b_data;
 
 		/* If we tried to acquire and we still own it we take it... */
 		if ((tried_acq) && (memcmp (lock_buf, cfg_buf, osb->sb->s_blocksize) == 0)) {
@@ -460,8 +455,7 @@
 static int ocfs_release_disk_lock (ocfs_super * osb, __u64 lock_off)
 {
 	int status = 0;
-	__s8 *buffer = NULL;
-	struct buffer_head *bh = NULL;
+	struct buffer_head *bh;
 	struct super_block *sb;
 	__u64 blocknum;
 
@@ -476,10 +470,8 @@
 		goto finally;
 	}
 
-	buffer = OCFS_BH_GET_DATA_WRITE(bh);
-
 	/* reset lock... */
-	memset (buffer, 0, osb->sb->s_blocksize);
+	memset (bh->b_data, 0, osb->sb->s_blocksize);
 
 	/* Release the lock */
 	status = ocfs_write_bh(osb, bh, 0, NULL);
@@ -495,9 +487,8 @@
 	atomic_set (&osb->lock_event_woken, 0);
 	del_timer_sync(&osb->lock_timer);
 
-	buffer = OCFS_BH_GET_DATA_WRITE(bh);
 	/* reset lock... */
-	memset (buffer, 0, osb->sb->s_blocksize);
+	memset (bh->b_data, 0, osb->sb->s_blocksize);
 
 	/* Release the lock */
 	status = ocfs_write_bh(osb, bh, 0, NULL);
@@ -605,7 +596,6 @@
 	__u32 blocknum;
 	struct buffer_head *bh = NULL;
 	struct super_block *sb = NULL;
-	char *buf = NULL;
 
 	LOG_ENTRY ();
 
@@ -620,8 +610,7 @@
 		goto finally;
 	}
 
-	buf = OCFS_BH_GET_DATA_WRITE(bh);
-	memcpy(buf, disk, osb->sb->s_blocksize);
+	memcpy(bh->b_data, disk, osb->sb->s_blocksize);
 
 	status = ocfs_write_bh(osb, bh, 0, NULL);
 	if (status < 0) {
@@ -738,7 +727,7 @@
 	}
 
 	/* 1st block in buffer is the NodeCfgHdr */
-	hdr = OCFS_BH_GET_DATA_READ(cfg_bhs[0]);
+	hdr = (ocfs_node_config_hdr *) cfg_bhs[0]->b_data;
 
 	if (strncmp (hdr->signature, OCFS2_NODE_CONFIG_HDR_SIGN,
 		     OCFS2_NODE_CONFIG_SIGN_LEN)) {
@@ -768,7 +757,7 @@
 	for (i = 0; i < osb->max_nodes; i++) {
 		int which;
 		which = i + OCFS_VOLCFG_HDR_SECTORS;
-		disk = OCFS_BH_GET_DATA_READ(cfg_bhs[which]);
+		disk = (ocfs_node_config_info *) cfg_bhs[which]->b_data;
 
 		if (disk->node_name[0] == '\0')
 			continue;



More information about the Ocfs2-commits mailing list