linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / fs / freevxfs / vxfs_lookup.c
index 29cce45..140fa42 100644 (file)
@@ -56,7 +56,7 @@ struct inode_operations vxfs_dir_inode_ops = {
        .lookup =               vxfs_lookup,
 };
 
-const struct file_operations vxfs_dir_operations = {
+struct file_operations vxfs_dir_operations = {
        .readdir =              vxfs_readdir,
 };
 
@@ -246,6 +246,8 @@ vxfs_readdir(struct file *fp, void *retp, filldir_t filler)
        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)