X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fext2%2Fialloc.c;h=0886ddc674db7650df12dd52527de8b656610b67;hb=f7f1b0f1e2fbadeab12d24236000e778aa9b1ead;hp=1b1dce48fa57d2945d03823598ce78b2d670e270;hpb=9bf4aaab3e101692164d49b7ca357651eb691cb6;p=linux-2.6.git diff --git a/fs/ext2/ialloc.c b/fs/ext2/ialloc.c index 1b1dce48f..0886ddc67 100644 --- a/fs/ext2/ialloc.c +++ b/fs/ext2/ialloc.c @@ -18,9 +18,8 @@ #include #include #include -#include #include - +#include #include "ext2.h" #include "xattr.h" #include "acl.h" @@ -60,8 +59,8 @@ read_inode_bitmap(struct super_block * sb, unsigned long block_group) if (!bh) ext2_error(sb, "read_inode_bitmap", "Cannot read inode bitmap - " - "block_group = %lu, inode_bitmap = %lu", - block_group, (unsigned long) desc->bg_inode_bitmap); + "block_group = %lu, inode_bitmap = %u", + block_group, le32_to_cpu(desc->bg_inode_bitmap)); error_out: return bh; } @@ -469,11 +468,7 @@ struct inode *ext2_new_inode(struct inode *dir, int mode) if (!inode) return ERR_PTR(-ENOMEM); - if (sb->s_flags & MS_TAGXID) - inode->i_xid = current->xid; - else - inode->i_xid = 0; - + inode->i_xid = vx_current_fsxid(sb); if (DLIMIT_ALLOC_INODE(sb, inode->i_xid)) { err = -ENOSPC; goto fail_dlim; @@ -590,7 +585,7 @@ got: inode->i_ino = ino; inode->i_blksize = PAGE_SIZE; /* This is the optimal IO size (for stat), not the fs block size */ inode->i_blocks = 0; - inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME; + inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; memset(ei->i_data, 0, sizeof(ei->i_data)); ei->i_flags = EXT2_I(dir)->i_flags & ~(EXT2_BTREE_FL|EXT2_IUNLINK_FL|EXT2_BARRIER_FL); @@ -634,14 +629,14 @@ got: return inode; fail2: - DLIMIT_FREE_INODE(sb, inode->i_xid); + DLIMIT_FREE_INODE(sb, inode->i_xid); inode->i_flags |= S_NOQUOTA; inode->i_nlink = 0; iput(inode); return ERR_PTR(err); fail: - DLIMIT_FREE_INODE(sb, inode->i_xid); + DLIMIT_FREE_INODE(sb, inode->i_xid); fail_dlim: make_bad_inode(inode); iput(inode);