summaryrefslogtreecommitdiffstats
path: root/fs/sysv/namei.c
diff options
context:
space:
mode:
authorAl Viro2019-04-02 15:42:50 +0200
committerAl Viro2019-04-10 01:21:06 +0200
commit1d8b29fdb7ef39bd76bcd7a7f516938163097b0e (patch)
tree6529627ac8c398afd4d447e7259c0ecc589df138 /fs/sysv/namei.c
parentnsfs: unobfuscate (diff)
downloadkernel-qcow2-linux-1d8b29fdb7ef39bd76bcd7a7f516938163097b0e.tar.gz
kernel-qcow2-linux-1d8b29fdb7ef39bd76bcd7a7f516938163097b0e.tar.xz
kernel-qcow2-linux-1d8b29fdb7ef39bd76bcd7a7f516938163097b0e.zip
sysv: bury the broken "quietly truncate the long filenames" logics
It's contrary to the normal semantics, only sysv and adfs try to do that (on any other filesystem you'll get -ENAMETOOLONG instead of quiet truncation) and nobody actually uses that - it got accidentally broken 5 years ago and nobody noticed. Time to bury it... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/sysv/namei.c')
-rw-r--r--fs/sysv/namei.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/fs/sysv/namei.c b/fs/sysv/namei.c
index 4d5d20491ffd..ea2414b385ec 100644
--- a/fs/sysv/namei.c
+++ b/fs/sysv/namei.c
@@ -28,21 +28,6 @@ static int add_nondir(struct dentry *dentry, struct inode *inode)
return err;
}
-static int sysv_hash(const struct dentry *dentry, struct qstr *qstr)
-{
- /* Truncate the name in place, avoids having to define a compare
- function. */
- if (qstr->len > SYSV_NAMELEN) {
- qstr->len = SYSV_NAMELEN;
- qstr->hash = full_name_hash(dentry, qstr->name, qstr->len);
- }
- return 0;
-}
-
-const struct dentry_operations sysv_dentry_operations = {
- .d_hash = sysv_hash,
-};
-
static struct dentry *sysv_lookup(struct inode * dir, struct dentry * dentry, unsigned int flags)
{
struct inode * inode = NULL;