[Ocfs2-commits] khackel commits r955 - in trunk/src: . inc

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Thu May 27 19:13:45 CDT 2004


Author: khackel
Date: 2004-05-27 18:13:43 -0500 (Thu, 27 May 2004)
New Revision: 955

Modified:
   trunk/src/dlm.c
   trunk/src/inc/ocfs.h
   trunk/src/namei.c
   trunk/src/super.c
Log:
* fixes bug in rename where newfe would have its bhsem freed once too many times
* fixes bug in statfs that causes the global bitmap fe to be marked !uptodate
* starting to clear out unused stuff 



Modified: trunk/src/dlm.c
===================================================================
--- trunk/src/dlm.c	2004-05-27 22:07:32 UTC (rev 954)
+++ trunk/src/dlm.c	2004-05-27 23:13:43 UTC (rev 955)
@@ -821,7 +821,6 @@
 			osb, lock_id, lock_type, flags, bh);
 	
 	OCFS_ASSERT(lock_type != OCFS_DLM_NO_LOCK);
-	OCFS_ASSERT(lock_type != OCFS_DLM_SHARED_LOCK);
 	OCFS_ASSERT(inode);
 	OCFS_ASSERT(GET_INODE_FEOFF(inode) == lock_id);
 
@@ -1225,7 +1224,6 @@
 		OCFS_BH_PUT_DATA(bh);
 	}
 
-	OCFS_ASSERT(lock_type != OCFS_DLM_SHARED_LOCK);
 
 	if ((lockres->lock_type == OCFS_DLM_ENABLE_CACHE_LOCK) &&
 	    (lockres->master_node_num == osb->node_num) &&

Modified: trunk/src/inc/ocfs.h
===================================================================
--- trunk/src/inc/ocfs.h	2004-05-27 22:07:32 UTC (rev 954)
+++ trunk/src/inc/ocfs.h	2004-05-27 23:13:43 UTC (rev 955)
@@ -187,11 +187,7 @@
     OSB_LOG_LOCK
 };
 
-#define OSB_PREALLOC_LOCK_TEST(osb, l)   (osb->prealloc_lock & (1<<l))
-#define OSB_PREALLOC_LOCK_SET(osb, l)    (osb->prealloc_lock |= (1<<l))
-#define OSB_PREALLOC_LOCK_CLEAR(osb, l)  (osb->prealloc_lock &= ~(1<<l))
 
-
 /* convenience macro */
 #define ocfs_safefree(x)	\
 do {				\
@@ -208,8 +204,6 @@
 } while (0)
 
 #define OCFS_ASSERT(x)             do { if (!(x)) BUG(); } while (0)
-#define OCFS_BREAKPOINT()          printk("DEBUG BREAKPOINT! %s, %d\n", \
-					  __FILE__, __LINE__)
 
 
 #define BITCOUNT(x)     (((BX_(x)+(BX_(x)>>4)) & 0x0F0F0F0F) % 255)
@@ -250,41 +244,12 @@
 #define ocfs_getpid()               getpid()
 #endif
 
-#define FIRST_FILE_ENTRY(dir)   ((char *) ((char *)dir)+OCFS_SECTOR_SIZE)
-#define FILEENT(dir,idx)        (ocfs_file_entry *) ( ((char *)dir) + \
-				((dir->index[idx]+1) * OCFS_SECTOR_SIZE))
 
 
-#define FILEENT_GETBH_WRITE(dir,bhs,idx)				      \
-({									      \
-	int _i = dir->index[idx]+1;					      \
-	ocfs_file_entry *_ret = NULL;					      \
-	_ret = (ocfs_file_entry *)OCFS_BH_GET_DATA_WRITE(bhs[_i]);	      \
-	_ret;								      \
-})
-
-#define FILEENT_GETBH(dir,bhs,idx)					      \
-({									      \
-	int _i = dir->index[idx]+1;					      \
-	ocfs_file_entry *_ret = NULL;					      \
-	_ret = (ocfs_file_entry *)OCFS_BH_GET_DATA_READ(bhs[_i]);	      \
-	_ret;								      \
-})
-
-#define FILEENT_PUTBH(dir,bhs,idx)   OCFS_BH_PUT_DATA(bhs[(dir->index[idx]+1)])
-
-
-#define  OCFS_DIR_FILENAME                 "DirFile"
-#define  OCFS_DIR_BITMAP_FILENAME          "DirBitMapFile"
 #define  OCFS_FILE_EXTENT_FILENAME         "ExtentFile"
 #define  OCFS_FILE_EXTENT_BITMAP_FILENAME  "ExtentBitMapFile"
-#define  OCFS_RECOVER_LOG_FILENAME         "RecoverLogFile"
-#define  OCFS_CLEANUP_LOG_FILENAME         "CleanUpLogFile"
-#define  OCFS_ORPHAN_DIR_FILENAME          "OrphanDir"
 #define  OCFS_JOURNAL_FILENAME             "JournalFile"
 
-#define  ONE_SECOND              (10 * 1000 * 1000)  /* 100 nanosec unit */
-#define  ONE_MILLI_SEC           (10 * 1000)         /* 100 nanosec unit */
 #define  ONE_MEGA_BYTE           (1 * 1024 * 1024)   /* in bytes */
 
 #define  MISS_COUNT_VALUE        30
@@ -292,9 +257,8 @@
 #define  OCFS_DEFAULT_DIR_NODE_SECTS (256)
 #define  OCFS_DEFAULT_DIR_NODE_SIZE  (512 * OCFS_DEFAULT_DIR_NODE_SECTS)
 #define  OCFS_DEFAULT_FILE_NODE_SIZE (512)
+#define  OCFS_DEFAULT_INODE_SIZE     (512)
 
-#define OCFS_DEFAULT_INODE_SIZE	     (512)
-
 /*
 ** The following flag values reflect the operation to be performed
 **   by ocfs_create_modify_file
@@ -337,36 +301,32 @@
     OCFS_INVALID_SYSFILE = -1,
     OCFS_VOL_MD_SYSFILE = 0,		// unused in version 2
     OCFS_VOL_MD_LOG_SYSFILE,		// unused in version 2
-    OCFS_DIR_SYSFILE,
-    OCFS_DIR_BM_SYSFILE,
+    OCFS_DIR_SYSFILE,			// unused in version 2
+    OCFS_DIR_BM_SYSFILE,		// unused in version 2
     OCFS_FILE_EXTENT_SYSFILE,
     OCFS_FILE_EXTENT_BM_SYSFILE,
     OCFS_RECOVER_LOG_SYSFILE,		// unused in version 2
     OCFS_CLEANUP_LOG_SYSFILE,		// unused in version 2
-    OCFS_VOL_BM_SYSFILE,
+    OCFS_VOL_BM_SYSFILE,		// this is the local alloc file
     OCFS_ORPHAN_DIR_SYSFILE,
     OCFS_JOURNAL_SYSFILE,
     OCFS_INODE_SYSFILE,
     OCFS_INODE_BM_SYSFILE,
-    OCFS_DIRENT_SYSFILE,
-    OCFS_DIRENT_BM_SYSFILE,
     OCFS_NUM_SYSFILES
 };
+
 #define OCFS_FILE_VOL_META_DATA      (OCFS_VOL_MD_SYSFILE         * OCFS_MAXIMUM_NODES)		// unused in version 2
 #define OCFS_FILE_VOL_LOG_FILE       (OCFS_VOL_MD_LOG_SYSFILE     * OCFS_MAXIMUM_NODES)		// unused in version 2
-#define OCFS_FILE_DIR_ALLOC          (OCFS_DIR_SYSFILE            * OCFS_MAXIMUM_NODES)
-#define OCFS_FILE_DIR_ALLOC_BITMAP   (OCFS_DIR_BM_SYSFILE         * OCFS_MAXIMUM_NODES)
+#define OCFS_FILE_DIR_ALLOC          (OCFS_DIR_SYSFILE            * OCFS_MAXIMUM_NODES)		// unused in version 2
+#define OCFS_FILE_DIR_ALLOC_BITMAP   (OCFS_DIR_BM_SYSFILE         * OCFS_MAXIMUM_NODES)		// unused in version 2
 #define OCFS_FILE_FILE_ALLOC         (OCFS_FILE_EXTENT_SYSFILE    * OCFS_MAXIMUM_NODES)
 #define OCFS_FILE_FILE_ALLOC_BITMAP  (OCFS_FILE_EXTENT_BM_SYSFILE * OCFS_MAXIMUM_NODES)
 #define LOG_FILE_BASE_ID             (OCFS_RECOVER_LOG_SYSFILE    * OCFS_MAXIMUM_NODES)		// unused in version 2
 #define CLEANUP_FILE_BASE_ID         (OCFS_CLEANUP_LOG_SYSFILE    * OCFS_MAXIMUM_NODES)		// unused in version 2
 #define OCFS_LOCAL_ALLOC_FILE        (OCFS_VOL_BM_SYSFILE         * OCFS_MAXIMUM_NODES)		// was OCFS_VOL_BITMAP_FILE
-#define OCFS_ORPHAN_DIR              (OCFS_ORPHAN_DIR_SYSFILE     * OCFS_MAXIMUM_NODES)
 #define OCFS_JOURNAL_FILE            (OCFS_JOURNAL_SYSFILE        * OCFS_MAXIMUM_NODES)
 #define OCFS_INODE_FILE              (OCFS_INODE_SYSFILE          * OCFS_MAXIMUM_NODES)
 #define OCFS_INODE_BITMAP            (OCFS_INODE_BM_SYSFILE       * OCFS_MAXIMUM_NODES)
-#define OCFS_DIRENT_FILE             (OCFS_DIRENT_SYSFILE         * OCFS_MAXIMUM_NODES)
-#define OCFS_DIRENT_BITMAP           (OCFS_DIRENT_BM_SYSFILE      * OCFS_MAXIMUM_NODES)
 
 
 #define SECTOR_BITS 9
@@ -431,11 +391,8 @@
 #define  OCFS_TYPE_OSB            (0x05534643)
 #define  OCFS_TYPE_GLOBAL_DATA    (0x07534643)
 
-#define  CACHE_LOCK_SLOT_TIME          (ONE_SECOND * 10)
-
 // LOCKTYPE ONE
 #define  OCFS_DLM_NO_LOCK              (0x0)
-#define  OCFS_DLM_SHARED_LOCK          (0x1)
 #define  OCFS_DLM_EXCLUSIVE_LOCK       (0x2)
 #define  OCFS_DLM_ENABLE_CACHE_LOCK    (0x8)
 
@@ -1660,9 +1617,6 @@
 	FILE_ALLOC_BITMAP_SYSTEM_INODE,
 	INODE_ALLOC_BITMAP_SYSTEM_INODE,
 	JOURNAL_SYSTEM_INODE,
-#if 0
-	DIR_ALLOC_BITMAP_SYSTEM_INODE,
-#endif
 	NUM_SYSTEM_INODES
 };
 

Modified: trunk/src/namei.c
===================================================================
--- trunk/src/namei.c	2004-05-27 22:07:32 UTC (rev 954)
+++ trunk/src/namei.c	2004-05-27 23:13:43 UTC (rev 955)
@@ -1076,6 +1076,7 @@
 		if (S_ISDIR (new_inode->i_mode) && !empty_dir(new_inode)) {
 			status = -ENOTEMPTY;
 			OCFS_BH_PUT_DATA(newfe_bh);
+			newfe = NULL;
 			ocfs_clear_buffer_modified(new_dir_bh);
 			goto finally;
 		}
@@ -1090,6 +1091,7 @@
 			drop_inode = 1;
 		}
 		OCFS_BH_PUT_DATA(newfe_bh);
+		newfe = NULL;
 
 		if (drop_inode) {	
 			/* Free up all the bits in the bitmap. */

Modified: trunk/src/super.c
===================================================================
--- trunk/src/super.c	2004-05-27 22:07:32 UTC (rev 954)
+++ trunk/src/super.c	2004-05-27 23:13:43 UTC (rev 955)
@@ -213,20 +213,6 @@
 	}
 	osb->system_inodes[FILE_ALLOC_BITMAP_SYSTEM_INODE] = new;
 
-#if 0
-	/* dir alloc bitmap */
-	sys_off = osb->vol_layout.root_int_off + 
-		((OCFS_FILE_DIR_ALLOC_BITMAP + osb->node_num) 
-		 * osb->sect_size);
-	new = ocfs_iget(osb, sys_off, NULL);
-	if (!new) {
-		status = -EINVAL;
-		LOG_ERROR_STATUS(status);
-		goto bail;
-	}
-	osb->system_inodes[DIR_ALLOC_BITMAP_SYSTEM_INODE] = new;
-#endif
-
 	/* inode alloc bitmap */
 	sys_off = osb->vol_layout.root_int_off + 
 		((OCFS_INODE_BITMAP + osb->node_num) 
@@ -795,9 +781,6 @@
 #endif
 
 	OCFS_BH_PUT_DATA(bh);
-	lock_buffer(bh);
-	clear_buffer_uptodate(bh);
-	unlock_buffer(bh);
 	brelse(bh);
 
 	LOG_EXIT_INT (0);



More information about the Ocfs2-commits mailing list