Commit 13156dad authored by Dave Kleikamp's avatar Dave Kleikamp

Merge jfs@jfs.bkbits.net:linux-2.5

into shaggy.austin.ibm.com:/shaggy/bk/jfs-2.5
parents 6e5f0131 45dd3dc8
...@@ -28,8 +28,6 @@ JFS TODO list: ...@@ -28,8 +28,6 @@ JFS TODO list:
Plans for our near term development items Plans for our near term development items
- enhance support for logfile on dedicated partition - enhance support for logfile on dedicated partition
- get access control list functionality operational
- get extended attributes functionality operational
Longer term work items Longer term work items
...@@ -37,7 +35,7 @@ Longer term work items ...@@ -37,7 +35,7 @@ Longer term work items
- add quota support - add quota support
- add support for block sizes (512,1024,2048) - add support for block sizes (512,1024,2048)
Please send bugs, comments, cards and letters to linuxjfs@us.ibm.com. Please send bugs, comments, cards and letters to shaggy@austin.ibm.com.
The JFS mailing list can be subscribed to by using the link labeled The JFS mailing list can be subscribed to by using the link labeled
"Mail list Subscribe" at our web page http://oss.software.ibm.com/jfs/. "Mail list Subscribe" at our web page http://oss.software.ibm.com/jfs/.
...@@ -221,6 +221,25 @@ static struct metapage *read_index_page(struct inode *inode, s64 blkno) ...@@ -221,6 +221,25 @@ static struct metapage *read_index_page(struct inode *inode, s64 blkno)
return read_metapage(inode, xaddr, PSIZE, 1); return read_metapage(inode, xaddr, PSIZE, 1);
} }
/*
* get_index_page()
*
* Same as get_index_page(), but get's a new page without reading
*/
static struct metapage *get_index_page(struct inode *inode, s64 blkno)
{
int rc;
s64 xaddr;
int xflag;
s32 xlen;
rc = xtLookup(inode, blkno, 1, &xflag, &xaddr, &xlen, 1);
if (rc || (xlen == 0))
return NULL;
return get_metapage(inode, xaddr, PSIZE, 1);
}
/* /*
* find_index() * find_index()
* *
...@@ -390,7 +409,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot) ...@@ -390,7 +409,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
ip->i_size = PSIZE; ip->i_size = PSIZE;
ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage); ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage);
if ((mp = read_index_page(ip, 0)) == 0) { if ((mp = get_index_page(ip, 0)) == 0) {
jfs_err("add_index: get_metapage failed!"); jfs_err("add_index: get_metapage failed!");
xtTruncate(tid, ip, 0, COMMIT_PWMAP); xtTruncate(tid, ip, 0, COMMIT_PWMAP);
return -1; return -1;
...@@ -433,7 +452,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot) ...@@ -433,7 +452,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
ip->i_size += PSIZE; ip->i_size += PSIZE;
ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage); ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage);
if ((mp = read_index_page(ip, blkno))) if ((mp = get_index_page(ip, blkno)))
memset(mp->data, 0, PSIZE); /* Just looks better */ memset(mp->data, 0, PSIZE); /* Just looks better */
else else
xtTruncate(tid, ip, offset, COMMIT_PWMAP); xtTruncate(tid, ip, offset, COMMIT_PWMAP);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment