diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_ioctl.c')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_ioctl.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/fs/xfs/linux-2.6/xfs_ioctl.c b/fs/xfs/linux-2.6/xfs_ioctl.c index 21667ba6dcd5..4db47790415c 100644 --- a/fs/xfs/linux-2.6/xfs_ioctl.c +++ b/fs/xfs/linux-2.6/xfs_ioctl.c | |||
@@ -146,13 +146,10 @@ xfs_find_handle( | |||
146 | 146 | ||
147 | if (cmd != XFS_IOC_PATH_TO_FSHANDLE) { | 147 | if (cmd != XFS_IOC_PATH_TO_FSHANDLE) { |
148 | xfs_inode_t *ip; | 148 | xfs_inode_t *ip; |
149 | bhv_desc_t *bhv; | ||
150 | int lock_mode; | 149 | int lock_mode; |
151 | 150 | ||
152 | /* need to get access to the xfs_inode to read the generation */ | 151 | /* need to get access to the xfs_inode to read the generation */ |
153 | bhv = vn_bhv_lookup_unlocked(VN_BHV_HEAD(vp), &xfs_vnodeops); | 152 | ip = xfs_vtoi(vp); |
154 | ASSERT(bhv); | ||
155 | ip = XFS_BHVTOI(bhv); | ||
156 | ASSERT(ip); | 153 | ASSERT(ip); |
157 | lock_mode = xfs_ilock_map_shared(ip); | 154 | lock_mode = xfs_ilock_map_shared(ip); |
158 | 155 | ||
@@ -751,9 +748,8 @@ xfs_ioctl( | |||
751 | (ip->i_d.di_flags & XFS_DIFLAG_REALTIME) ? | 748 | (ip->i_d.di_flags & XFS_DIFLAG_REALTIME) ? |
752 | mp->m_rtdev_targp : mp->m_ddev_targp; | 749 | mp->m_rtdev_targp : mp->m_ddev_targp; |
753 | 750 | ||
754 | da.d_mem = da.d_miniosz = 1 << target->pbr_sshift; | 751 | da.d_mem = da.d_miniosz = 1 << target->bt_sshift; |
755 | /* The size dio will do in one go */ | 752 | da.d_maxiosz = INT_MAX & ~(da.d_miniosz - 1); |
756 | da.d_maxiosz = 64 * PAGE_CACHE_SIZE; | ||
757 | 753 | ||
758 | if (copy_to_user(arg, &da, sizeof(da))) | 754 | if (copy_to_user(arg, &da, sizeof(da))) |
759 | return -XFS_ERROR(EFAULT); | 755 | return -XFS_ERROR(EFAULT); |