X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Fminix%2Fnamei.c;h=32b131cd6121d2599d84ee60af29ceac261453d9;hb=3fe0344faf7fdcb158bd5c1a9aec960a8d70c8e8;hp=f4aa7a9390406b9f27cbd2fc9aaa4ddbc48dcf8d;hpb=5a84d159061d914c8dd4aa372ac6e9529c2be453;p=karo-tx-linux.git diff --git a/fs/minix/namei.c b/fs/minix/namei.c index f4aa7a939040..32b131cd6121 100644 --- a/fs/minix/namei.c +++ b/fs/minix/namei.c @@ -18,30 +18,6 @@ static int add_nondir(struct dentry *dentry, struct inode *inode) return err; } -static int minix_hash(struct dentry *dentry, struct qstr *qstr) -{ - unsigned long hash; - int i; - const unsigned char *name; - - i = minix_sb(dentry->d_inode->i_sb)->s_namelen; - if (i >= qstr->len) - return 0; - /* Truncate the name in place, avoids having to define a compare - function. */ - qstr->len = i; - name = qstr->name; - hash = init_name_hash(); - while (i--) - hash = partial_name_hash(*name++, hash); - qstr->hash = end_name_hash(hash); - return 0; -} - -struct dentry_operations minix_dentry_operations = { - .d_hash = minix_hash, -}; - static struct dentry *minix_lookup(struct inode * dir, struct dentry *dentry, struct nameidata *nd) { struct inode * inode = NULL; @@ -54,10 +30,9 @@ static struct dentry *minix_lookup(struct inode * dir, struct dentry *dentry, st ino = minix_inode_by_name(dentry); if (ino) { - inode = iget(dir->i_sb, ino); - - if (!inode) - return ERR_PTR(-EACCES); + inode = minix_iget(dir->i_sb, ino); + if (IS_ERR(inode)) + return ERR_CAST(inode); } d_add(dentry, inode); return NULL;