This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / fs / jfs / jfs_dtree.c
index 29930b6..ac41f72 100644 (file)
@@ -212,7 +212,7 @@ static struct metapage *read_index_page(struct inode *inode, s64 blkno)
        s32 xlen;
 
        rc = xtLookup(inode, blkno, 1, &xflag, &xaddr, &xlen, 1);
-       if (rc || (xlen == 0))
+       if (rc || (xaddr == 0))
                return NULL;
 
        return read_metapage(inode, xaddr, PSIZE, 1);
@@ -231,7 +231,7 @@ static struct metapage *get_index_page(struct inode *inode, s64 blkno)
        s32 xlen;
 
        rc = xtLookup(inode, blkno, 1, &xflag, &xaddr, &xlen, 1);
-       if (rc || (xlen == 0))
+       if (rc || (xaddr == 0))
                return NULL;
 
        return get_metapage(inode, xaddr, PSIZE, 1);
@@ -268,7 +268,7 @@ static struct dir_table_slot *find_index(struct inode *ip, u32 index,
                return NULL;
        }
 
-       if (jfs_ip->next_index <= (MAX_INLINE_DIRTABLE_ENTRY + 1)) {
+       if (jfs_dirtable_inline(ip)) {
                /*
                 * Inline directory table
                 */
@@ -852,7 +852,7 @@ int dtInsert(tid_t tid, struct inode *ip,
                n = NDTLEAF_LEGACY(name->namlen);
                data.leaf.ip = NULL;    /* signifies legacy directory format */
        }
-       data.leaf.ino = cpu_to_le32(*fsn);
+       data.leaf.ino = *fsn;
 
        /*
         *      leaf page does not have enough room for new entry:
@@ -2828,7 +2828,7 @@ void dtInitRoot(tid_t tid, struct inode *ip, u32 idotdot)
         * the old directory table.
         */
        if (DO_INDEX(ip)) {
-               if (jfs_ip->next_index > (MAX_INLINE_DIRTABLE_ENTRY + 1)) {
+               if (!jfs_dirtable_inline(ip)) {
                        struct tblock *tblk = tid_to_tblock(tid);
                        /*
                         * We're playing games with the tid's xflag.  If
@@ -3181,7 +3181,7 @@ int jfs_readdir(struct file *filp, void *dirent, filldir_t filldir)
                        d = (struct ldtentry *) & p->slot[stbl[i]];
 
                        if (((long) jfs_dirent + d->namlen + 1) >
-                           (dirent_buf + PSIZE)) {
+                           (dirent_buf + PAGE_SIZE)) {
                                /* DBCS codepages could overrun dirent_buf */
                                index = i;
                                overflow = 1;
@@ -3570,7 +3570,8 @@ static int dtCompare(struct component_name * key, /* search key */
                     dtpage_t * p,      /* directory page */
                     int si)
 {                              /* entry slot index */
-       wchar_t *kname, *name;
+       wchar_t *kname;
+       __le16 *name;
        int klen, namlen, len, rc;
        struct idtentry *ih;
        struct dtslot *t;
@@ -3646,7 +3647,8 @@ static int ciCompare(struct component_name * key, /* search key */
                     int si,    /* entry slot index */
                     int flag)
 {
-       wchar_t *kname, *name, x;
+       wchar_t *kname, x;
+       __le16 *name;
        int klen, namlen, len, rc;
        struct ldtentry *lh;
        struct idtentry *ih;
@@ -3824,7 +3826,8 @@ static void dtGetKey(dtpage_t * p, int i, /* entry index */
        struct idtentry *ih;
        struct dtslot *t;
        int namlen, len;
-       wchar_t *name, *kname;
+       wchar_t *kname;
+       __le16 *name;
 
        /* get entry */
        stbl = DT_GETSTBL(p);
@@ -3852,7 +3855,7 @@ static void dtGetKey(dtpage_t * p, int i, /* entry index */
        /*
         * move head/only segment
         */
-       UniStrncpy_le(kname, name, len);
+       UniStrncpy_from_le(kname, name, len);
 
        /*
         * move additional segment(s)
@@ -3863,7 +3866,7 @@ static void dtGetKey(dtpage_t * p, int i, /* entry index */
                kname += len;
                namlen -= len;
                len = min(namlen, DTSLOTDATALEN);
-               UniStrncpy_le(kname, t->name, len);
+               UniStrncpy_from_le(kname, t->name, len);
 
                si = t->next;
        }
@@ -3885,7 +3888,8 @@ static void dtInsertEntry(dtpage_t * p, int index, struct component_name * key,
        struct ldtentry *lh = NULL;
        struct idtentry *ih = NULL;
        int hsi, fsi, klen, len, nextindex;
-       wchar_t *kname, *name;
+       wchar_t *kname;
+       __le16 *name;
        s8 *stbl;
        pxd_t *xd;
        struct dt_lock *dtlck = *dtlock;
@@ -3914,7 +3918,7 @@ static void dtInsertEntry(dtpage_t * p, int index, struct component_name * key,
        if (p->header.flag & BT_LEAF) {
                lh = (struct ldtentry *) h;
                lh->next = h->next;
-               lh->inumber = data->leaf.ino;   /* little-endian */
+               lh->inumber = cpu_to_le32(data->leaf.ino);
                lh->namlen = klen;
                name = lh->name;
                if (data->leaf.ip) {
@@ -3936,7 +3940,7 @@ static void dtInsertEntry(dtpage_t * p, int index, struct component_name * key,
                len = min(klen, DTIHDRDATALEN);
        }
 
-       UniStrncpy_le(name, kname, len);
+       UniStrncpy_to_le(name, kname, len);
 
        n = 1;
        xsi = hsi;
@@ -3971,7 +3975,7 @@ static void dtInsertEntry(dtpage_t * p, int index, struct component_name * key,
 
                kname += len;
                len = min(klen, DTSLOTDATALEN);
-               UniStrncpy_le(t->name, kname, len);
+               UniStrncpy_to_le(t->name, kname, len);
 
                n++;
                xsi = fsi;
@@ -4174,7 +4178,7 @@ static void dtMoveEntry(dtpage_t * sp, int si, dtpage_t * dp,
                        d++;
 
                        len = min(snamlen, DTSLOTDATALEN);
-                       UniStrncpy(d->name, s->name, len);
+                       UniStrncpy_le(d->name, s->name, len);
 
                        ns++;
                        nd++;