[Ocfs2-commits] khackel commits r897 - trunk/src
svn-commits at oss.oracle.com
svn-commits at oss.oracle.com
Wed May 5 17:31:19 CDT 2004
Author: khackel
Date: 2004-05-05 16:31:17 -0500 (Wed, 05 May 2004)
New Revision: 897
Modified:
trunk/src/alloc.c
trunk/src/super.c
Log:
changed to use the bitmap lock fe bits for free bits in statfs, etc.
Modified: trunk/src/alloc.c
===================================================================
--- trunk/src/alloc.c 2004-05-05 21:12:15 UTC (rev 896)
+++ trunk/src/alloc.c 2004-05-05 21:31:17 UTC (rev 897)
@@ -376,10 +376,10 @@
/* release all locks */
if (free_vol_bits != NULL) {
- ocfs_bitmap_lock *bm_lock;
+ ocfs_file_entry *bm_lock;
- bm_lock = (ocfs_bitmap_lock *)OCFS_BH_GET_DATA_WRITE(globalbh); /* write */
- bm_lock->used_bits = ocfs_count_bits(&osb->cluster_bitmap);
+ bm_lock = (ocfs_file_entry *)OCFS_BH_GET_DATA_WRITE(globalbh); /* write */
+ bm_lock->u.bitinfo.used_bits = ocfs_count_bits(&osb->cluster_bitmap);
OCFS_BH_PUT_DATA(globalbh);
status = ocfs_write_bh(osb, globalbh, 0, NULL);
@@ -2715,7 +2715,7 @@
static __u32 SmallAllocOffset = 0;
bool bLockAcquired = false;
struct buffer_head *bh = NULL;
- ocfs_bitmap_lock *bm_lock = NULL;
+ ocfs_file_entry *bm_lock = NULL;
__u32 bitmapblocks; /* we only care about the valid blocks */
bool local_lock = true;
bool local_inode = false;
@@ -2753,7 +2753,7 @@
}
bLockAcquired = true;
}
- bm_lock = (ocfs_bitmap_lock *)OCFS_BH_GET_DATA_WRITE(bh); /* write */
+ bm_lock = (ocfs_file_entry *)OCFS_BH_GET_DATA_WRITE(bh); /* write */
ClusterCount = (__u32) ((__u64) (file_size + (osb->vol_layout.cluster_size-1)) >>
osb->cluster_size_bits);
@@ -2861,7 +2861,7 @@
/* write the bitmap size info to the lock sector */
/* TODO: optimize by making this part of ocfs_release_lock
* for now, it will be back-to-back writes to same sector */
- bm_lock->used_bits = ocfs_count_bits(&osb->cluster_bitmap);
+ bm_lock->u.bitinfo.used_bits = ocfs_count_bits(&osb->cluster_bitmap);
OCFS_BH_PUT_DATA(bh);
bm_lock = NULL;
Modified: trunk/src/super.c
===================================================================
--- trunk/src/super.c 2004-05-05 21:12:15 UTC (rev 896)
+++ trunk/src/super.c 2004-05-05 21:31:17 UTC (rev 897)
@@ -730,7 +730,7 @@
ocfs_super *osb = NULL;
__u32 numbits, freebits = 0;
int status = 0;
- ocfs_bitmap_lock *bm_lock = NULL;
+ ocfs_file_entry *bm_lock = NULL;
struct buffer_head *bh = NULL;
LOG_ENTRY_ARGS ("(%p, %p)\n", sb, buf);
@@ -743,11 +743,10 @@
LOG_ERROR_STR("failed to read bitmap data");
return -EIO;
}
- bm_lock = (ocfs_bitmap_lock *)OCFS_BH_GET_DATA_READ(bh); /* read */
+ bm_lock = (ocfs_file_entry *)OCFS_BH_GET_DATA_READ(bh); /* read */
+ if (numbits >= bm_lock->u.bitinfo.used_bits)
+ freebits = numbits - bm_lock->u.bitinfo.used_bits;
- if (numbits >= bm_lock->used_bits)
- freebits = numbits - bm_lock->used_bits;
-
/* take out the space reserved for system files */
freebits -= (8 * ONE_MEGA_BYTE / osb->vol_layout.cluster_size);
More information about the Ocfs2-commits
mailing list