patch-2.4.26 linux-2.4.26/fs/jfs/jfs_dmap.c
Next file: linux-2.4.26/fs/jfs/jfs_dmap.h
Previous file: linux-2.4.26/fs/jbd/journal.c
Back to the patch index
Back to the overall index
- Lines: 135
- Date:
2004-04-14 06:05:40.000000000 -0700
- Orig file:
linux-2.4.25/fs/jfs/jfs_dmap.c
- Orig date:
2003-11-28 10:26:21.000000000 -0800
diff -urN linux-2.4.25/fs/jfs/jfs_dmap.c linux-2.4.26/fs/jfs/jfs_dmap.c
@@ -125,7 +125,7 @@
s64 * results);
static int dbAllocCtl(struct bmap * bmp, s64 nblocks, int l2nb, s64 blkno,
s64 * results);
-int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks);
+static int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks);
static int dbFindBits(u32 word, int l2nb);
static int dbFindCtl(struct bmap * bmp, int l2nb, int level, s64 * blkno);
static int dbFindLeaf(dmtree_t * tp, int l2nb, int *leafidx);
@@ -135,10 +135,10 @@
int nblocks);
static int dbMaxBud(u8 * cp);
s64 dbMapFileSizeToMapSize(struct inode *ipbmap);
-int blkstol2(s64 nb);
+static int blkstol2(s64 nb);
-int cntlz(u32 value);
-int cnttz(u32 word);
+static int cntlz(u32 value);
+static int cnttz(u32 word);
static int dbAllocDmapBU(struct bmap * bmp, struct dmap * dp, s64 blkno,
int nblocks);
@@ -156,7 +156,7 @@
* into the table, with the table elements yielding the maximum
* binary buddy of free bits within the character.
*/
-signed char budtab[256] = {
+static s8 budtab[256] = {
3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -943,7 +943,7 @@
return (rc);
}
-
+#ifdef _NOTYET
/*
* NAME: dbAllocExact()
*
@@ -1010,7 +1010,7 @@
return (rc);
}
-
+#endif /* _NOTYET */
/*
* NAME: dbReAlloc()
@@ -1093,7 +1093,7 @@
* -ENOSPC - insufficient disk resources
* -EIO - i/o error
*/
-int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks)
+static int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks)
{
struct jfs_sb_info *sbi = JFS_SBI(ip->i_sb);
s64 lblkno, lastblkno, extblkno;
@@ -1527,6 +1527,7 @@
if (n == 4) {
jfs_error(bmp->db_ipbmap->i_sb,
"dbAllocAG: failed descending stree");
+ release_metapage(mp);
return -EIO;
}
}
@@ -3023,7 +3024,7 @@
* RETURN VALUES:
* count of trailing zeros
*/
-int cnttz(u32 word)
+static int cnttz(u32 word)
{
int n;
@@ -3048,7 +3049,7 @@
* RETURN VALUES:
* count of leading zeros
*/
-int cntlz(u32 value)
+static int cntlz(u32 value)
{
int n;
@@ -3311,7 +3312,7 @@
int i, i0 = TRUE, j, j0 = TRUE, k, n;
s64 newsize;
s64 p;
- struct metapage *mp, *l2mp, *l1mp, *l0mp;
+ struct metapage *mp, *l2mp, *l1mp = NULL, *l0mp = NULL;
struct dmapctl *l2dcp, *l1dcp, *l0dcp;
struct dmap *dp;
s8 *l0leaf, *l1leaf, *l2leaf;
@@ -3514,6 +3515,7 @@
*/
*l1leaf = dbInitDmapCtl(l0dcp, 0, ++i);
write_metapage(l0mp);
+ l0mp = NULL;
if (nblocks)
l1leaf++; /* continue for next L0 */
@@ -3537,6 +3539,7 @@
*/
*l2leaf = dbInitDmapCtl(l1dcp, 1, ++j);
write_metapage(l1mp);
+ l1mp = NULL;
if (nblocks)
l2leaf++; /* continue for next L1 */
@@ -3555,17 +3558,20 @@
jfs_error(ipbmap->i_sb,
"dbExtendFS: function has not returned as expected");
+errout:
+ if (l0mp)
+ release_metapage(l0mp);
+ if (l1mp)
+ release_metapage(l1mp);
+ release_metapage(l2mp);
return -EIO;
/*
* finalize bmap control page
*/
- finalize:
+finalize:
return 0;
-
- errout:
- return -EIO;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)