diff options
Diffstat (limited to 'fs/hpfs/dentry.c')
| -rw-r--r-- | fs/hpfs/dentry.c | 29 | 
1 files changed, 14 insertions, 15 deletions
diff --git a/fs/hpfs/dentry.c b/fs/hpfs/dentry.c index 67d9d36b3d5..fa27980f222 100644 --- a/fs/hpfs/dentry.c +++ b/fs/hpfs/dentry.c @@ -12,7 +12,7 @@   * Note: the dentry argument is the parent dentry.   */ -static int hpfs_hash_dentry(struct dentry *dentry, struct qstr *qstr) +static int hpfs_hash_dentry(const struct dentry *dentry, struct qstr *qstr)  {  	unsigned long	 hash;  	int		 i; @@ -34,29 +34,28 @@ static int hpfs_hash_dentry(struct dentry *dentry, struct qstr *qstr)  	return 0;  } -static int hpfs_compare_dentry(struct dentry *dentry, struct qstr *a, struct qstr *b) +static int hpfs_compare_dentry(const struct dentry *parent, const struct dentry *dentry, +		unsigned int len, const char *str, const struct qstr *name)  { -	unsigned al=a->len; -	unsigned bl=b->len; -	hpfs_adjust_length(a->name, &al); +	unsigned al = len; +	unsigned bl = name->len; + +	hpfs_adjust_length(str, &al);  	/*hpfs_adjust_length(b->name, &bl);*/ -	/* 'a' is the qstr of an already existing dentry, so the name -	 * must be valid. 'b' must be validated first. + +	/* +	 * 'str' is the nane of an already existing dentry, so the name +	 * must be valid. 'name' must be validated first.  	 */ -	if (hpfs_chk_name(b->name, &bl)) +	if (hpfs_chk_name(name->name, &bl))  		return 1; -	if (hpfs_compare_names(dentry->d_sb, a->name, al, b->name, bl, 0)) +	if (hpfs_compare_names(parent->d_sb, str, al, name->name, bl, 0))  		return 1;  	return 0;  } -static const struct dentry_operations hpfs_dentry_operations = { +const struct dentry_operations hpfs_dentry_operations = {  	.d_hash		= hpfs_hash_dentry,  	.d_compare	= hpfs_compare_dentry,  }; - -void hpfs_set_dentry_operations(struct dentry *dentry) -{ -	dentry->d_op = &hpfs_dentry_operations; -}  | 
