]> err.no Git - linux-2.6/blobdiff - fs/xfs/linux-2.6/xfs_file.c
[XFS] allow enabling CONFIG_XFS_DEBUG
[linux-2.6] / fs / xfs / linux-2.6 / xfs_file.c
index 21a1c2b1c5fcf716b779fb973ef31fa5acb6114c..05905246434dc6e2182d2f5bbbceb2d1c480d828 100644 (file)
@@ -350,8 +350,8 @@ xfs_file_readdir(
 
                size = buf.used;
                de = (struct hack_dirent *)buf.dirent;
-               curr_offset = de->offset /* & 0x7fffffff */;
                while (size > 0) {
+                       curr_offset = de->offset /* & 0x7fffffff */;
                        if (filldir(dirent, de->name, de->namlen,
                                        curr_offset & 0x7fffffff,
                                        de->ino, de->d_type)) {
@@ -362,7 +362,6 @@ xfs_file_readdir(
                                       sizeof(u64));
                        size -= reclen;
                        de = (struct hack_dirent *)((char *)de + reclen);
-                       curr_offset = de->offset /* & 0x7fffffff */;
                }
        }
 
@@ -470,16 +469,11 @@ xfs_file_open_exec(
        struct inode    *inode)
 {
        struct xfs_mount *mp = XFS_M(inode->i_sb);
+       struct xfs_inode *ip = XFS_I(inode);
 
-       if (unlikely(mp->m_flags & XFS_MOUNT_DMAPI)) {
-               if (DM_EVENT_ENABLED(XFS_I(inode), DM_EVENT_READ)) {
-                       bhv_vnode_t *vp = vn_from_inode(inode);
-
-                       return -XFS_SEND_DATA(mp, DM_EVENT_READ,
-                                               vp, 0, 0, 0, NULL);
-               }
-       }
-
+       if (unlikely(mp->m_flags & XFS_MOUNT_DMAPI) &&
+                    DM_EVENT_ENABLED(ip, DM_EVENT_READ))
+               return -XFS_SEND_DATA(mp, DM_EVENT_READ, ip, 0, 0, 0, NULL);
        return 0;
 }
 #endif /* HAVE_FOP_OPEN_EXEC */