X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=fs%2Ffreevxfs%2Fvxfs_lookup.c;h=bf86e5444ea6d705a99682b83987b586a40a1e04;hb=0a0836a09ca7a27341703ef154c82e2e7f3e96f4;hp=29cce456c7ced1fdbfd6bfc7a9ed1b9a2ff07779;hpb=d42510a0f58c2583c37c8e9b7548e3a68545863a;p=linux-2.6-omap-h63xx.git diff --git a/fs/freevxfs/vxfs_lookup.c b/fs/freevxfs/vxfs_lookup.c index 29cce456c7c..bf86e5444ea 100644 --- a/fs/freevxfs/vxfs_lookup.c +++ b/fs/freevxfs/vxfs_lookup.c @@ -52,7 +52,7 @@ static struct dentry * vxfs_lookup(struct inode *, struct dentry *, struct nameidata *); static int vxfs_readdir(struct file *, void *, filldir_t); -struct inode_operations vxfs_dir_inode_ops = { +const struct inode_operations vxfs_dir_inode_ops = { .lookup = vxfs_lookup, }; @@ -240,12 +240,14 @@ vxfs_lookup(struct inode *dip, struct dentry *dp, struct nameidata *nd) static int vxfs_readdir(struct file *fp, void *retp, filldir_t filler) { - struct inode *ip = fp->f_dentry->d_inode; + struct inode *ip = fp->f_path.dentry->d_inode; struct super_block *sbp = ip->i_sb; u_long bsize = sbp->s_blocksize; u_long page, npages, block, pblocks, nblocks, offset; loff_t pos; + lock_kernel(); + switch ((long)fp->f_pos) { case 0: if (filler(retp, ".", 1, fp->f_pos, ip->i_ino, DT_DIR) < 0)