Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 008b150a authored by Al Viro's avatar Al Viro Committed by Linus Torvalds
Browse files

[PATCH] Fix up symlink function pointers



This fixes up the symlink functions for the calling convention change:

 * afs, autofs4, befs, devfs, freevxfs, jffs2, jfs, ncpfs, procfs,
   smbfs, sysvfs, ufs, xfs - prototype change for ->follow_link()
 * befs, smbfs, xfs - same for ->put_link()

Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent cc314eef
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ static struct dentry *afs_mntpt_lookup(struct inode *dir,
				       struct dentry *dentry,
				       struct nameidata *nd);
static int afs_mntpt_open(struct inode *inode, struct file *file);
static int afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd);
static void *afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd);

struct file_operations afs_mntpt_file_operations = {
	.open		= afs_mntpt_open,
@@ -233,7 +233,7 @@ static struct vfsmount *afs_mntpt_do_automount(struct dentry *mntpt)
/*
 * follow a link from a mountpoint directory, thus causing it to be mounted
 */
static int afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd)
static void *afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd)
{
	struct vfsmount *newmnt;
	struct dentry *old_dentry;
@@ -249,7 +249,7 @@ static int afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd)
	newmnt = afs_mntpt_do_automount(dentry);
	if (IS_ERR(newmnt)) {
		path_release(nd);
		return PTR_ERR(newmnt);
		return (void *)newmnt;
	}

	old_dentry = nd->dentry;
@@ -267,7 +267,7 @@ static int afs_mntpt_follow_link(struct dentry *dentry, struct nameidata *nd)
	}

	kleave(" = %d", err);
	return err;
	return ERR_PTR(err);
} /* end afs_mntpt_follow_link() */

/*****************************************************************************/
+2 −2
Original line number Diff line number Diff line
@@ -12,11 +12,11 @@

#include "autofs_i.h"

static int autofs4_follow_link(struct dentry *dentry, struct nameidata *nd)
static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd)
{
	struct autofs_info *ino = autofs4_dentry_ino(dentry);
	nd_set_link(nd, (char *)ino->u.symlink);
	return 0;
	return NULL;
}

struct inode_operations autofs4_symlink_inode_operations = {
+4 −4
Original line number Diff line number Diff line
@@ -41,8 +41,8 @@ static struct inode *befs_alloc_inode(struct super_block *sb);
static void befs_destroy_inode(struct inode *inode);
static int befs_init_inodecache(void);
static void befs_destroy_inodecache(void);
static int befs_follow_link(struct dentry *, struct nameidata *);
static void befs_put_link(struct dentry *, struct nameidata *);
static void *befs_follow_link(struct dentry *, struct nameidata *);
static void befs_put_link(struct dentry *, struct nameidata *, void *);
static int befs_utf2nls(struct super_block *sb, const char *in, int in_len,
			char **out, int *out_len);
static int befs_nls2utf(struct super_block *sb, const char *in, int in_len,
@@ -487,10 +487,10 @@ befs_follow_link(struct dentry *dentry, struct nameidata *nd)
	}

	nd_set_link(nd, link);
	return 0;
	return NULL;
}

static void befs_put_link(struct dentry *dentry, struct nameidata *nd)
static void befs_put_link(struct dentry *dentry, struct nameidata *nd, void *p)
{
	befs_inode_info *befs_ino = BEFS_I(dentry->d_inode);
	if (befs_ino->i_flags & BEFS_LONG_SYMLINK) {
+2 −2
Original line number Diff line number Diff line
@@ -2491,11 +2491,11 @@ static int devfs_mknod(struct inode *dir, struct dentry *dentry, int mode,
	return 0;
}				/*  End Function devfs_mknod  */

static int devfs_follow_link(struct dentry *dentry, struct nameidata *nd)
static void *devfs_follow_link(struct dentry *dentry, struct nameidata *nd)
{
	struct devfs_entry *p = get_devfs_entry_from_vfs_inode(dentry->d_inode);
	nd_set_link(nd, p ? p->u.symlink.linkname : ERR_PTR(-ENODEV));
	return 0;
	return NULL;
}				/*  End Function devfs_follow_link  */

static struct inode_operations devfs_iops = {
+2 −2
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
#include "vxfs_inode.h"


static int	vxfs_immed_follow_link(struct dentry *, struct nameidata *);
static void *	vxfs_immed_follow_link(struct dentry *, struct nameidata *);

static int	vxfs_immed_readpage(struct file *, struct page *);

@@ -77,7 +77,7 @@ vxfs_immed_follow_link(struct dentry *dp, struct nameidata *np)
{
	struct vxfs_inode_info		*vip = VXFS_INO(dp->d_inode);
	nd_set_link(np, vip->vii_immed.vi_immed);
	return 0;
	return NULL;
}

/**
Loading