diff options
Diffstat (limited to 'fs/xfs/xfs_dir2_data.c')
| -rw-r--r-- | fs/xfs/xfs_dir2_data.c | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/fs/xfs/xfs_dir2_data.c b/fs/xfs/xfs_dir2_data.c index fb8c9e08b23d..498f8d694330 100644 --- a/fs/xfs/xfs_dir2_data.c +++ b/fs/xfs/xfs_dir2_data.c @@ -65,6 +65,7 @@ xfs_dir2_data_check(  	xfs_mount_t		*mp;		/* filesystem mount point */  	char			*p;		/* current data position */  	int			stale;		/* count of stale leaves */ +	struct xfs_name		name;  	mp = dp->i_mount;  	d = bp->data; @@ -140,7 +141,9 @@ xfs_dir2_data_check(  			addr = xfs_dir2_db_off_to_dataptr(mp, mp->m_dirdatablk,  				(xfs_dir2_data_aoff_t)  				((char *)dep - (char *)d)); -			hash = xfs_da_hashname((char *)dep->name, dep->namelen); +			name.name = dep->name; +			name.len = dep->namelen; +			hash = mp->m_dirnameops->hashname(&name);  			for (i = 0; i < be32_to_cpu(btp->count); i++) {  				if (be32_to_cpu(lep[i].address) == addr &&  				    be32_to_cpu(lep[i].hashval) == hash) |