summaryrefslogtreecommitdiffstats
path: root/sys/nfsclient/nfs_vfsops.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2004-12-07 14:26:39 +0000
committerphk <phk@FreeBSD.org>2004-12-07 14:26:39 +0000
commit849729c60bb4e75b1807c2774e9c57a50004db95 (patch)
treecc28aef86434095dda4373c61a73ab7676d24992 /sys/nfsclient/nfs_vfsops.c
parent89697130c640e3edf13b16ce36701cc87159676f (diff)
downloadFreeBSD-src-849729c60bb4e75b1807c2774e9c57a50004db95.zip
FreeBSD-src-849729c60bb4e75b1807c2774e9c57a50004db95.tar.gz
Don't clobber mnt_stat.f_mntonname
Diffstat (limited to 'sys/nfsclient/nfs_vfsops.c')
-rw-r--r--sys/nfsclient/nfs_vfsops.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/sys/nfsclient/nfs_vfsops.c b/sys/nfsclient/nfs_vfsops.c
index 121b6db..0f16db6 100644
--- a/sys/nfsclient/nfs_vfsops.c
+++ b/sys/nfsclient/nfs_vfsops.c
@@ -103,7 +103,7 @@ SYSCTL_INT(_vfs_nfs, NFS_TPRINTF_DELAY,
static int nfs_iosize(struct nfsmount *nmp);
static void nfs_decode_args(struct mount *mp, struct nfsmount *nmp, struct nfs_args *argp);
static int mountnfs(struct nfs_args *, struct mount *,
- struct sockaddr *, char *, char *, struct vnode **,
+ struct sockaddr *, char *, struct vnode **,
struct ucred *cred);
static vfs_mount_t nfs_mount;
static vfs_cmount_t nfs_cmount;
@@ -162,7 +162,7 @@ SYSCTL_OPAQUE(_vfs_nfs, OID_AUTO, diskless_rootaddr, CTLFLAG_RD,
void nfsargs_ntoh(struct nfs_args *);
-static int nfs_mountdiskless(char *, char *, int,
+static int nfs_mountdiskless(char *, int,
struct sockaddr_in *, struct nfs_args *,
struct thread *, struct vnode **, struct mount *);
static void nfs_convert_diskless(void);
@@ -477,7 +477,7 @@ nfs_mountroot(struct mount *mp, struct thread *td)
(l >> 24) & 0xff, (l >> 16) & 0xff,
(l >> 8) & 0xff, (l >> 0) & 0xff, nd->root_hostnam);
printf("NFS ROOT: %s\n", buf);
- if ((error = nfs_mountdiskless(buf, "/", MNT_RDONLY,
+ if ((error = nfs_mountdiskless(buf, MNT_RDONLY,
&nd->root_saddr, &nd->root_args, td, &vp, mp)) != 0) {
return (error);
}
@@ -500,7 +500,7 @@ nfs_mountroot(struct mount *mp, struct thread *td)
* Internal version of mount system call for diskless setup.
*/
static int
-nfs_mountdiskless(char *path, char *which, int mountflag,
+nfs_mountdiskless(char *path, int mountflag,
struct sockaddr_in *sin, struct nfs_args *args, struct thread *td,
struct vnode **vpp, struct mount *mp)
{
@@ -510,13 +510,11 @@ nfs_mountdiskless(char *path, char *which, int mountflag,
mp->mnt_kern_flag = 0;
mp->mnt_flag = mountflag;
nam = sodupsockaddr((struct sockaddr *)sin, M_WAITOK);
- if ((error = mountnfs(args, mp, nam, which, path, vpp,
+ if ((error = mountnfs(args, mp, nam, path, vpp,
td->td_ucred)) != 0) {
- printf("nfs_mountroot: mount %s on %s: %d\n", path, which,
- error);
+ printf("nfs_mountroot: mount %s on /: %d\n", path, error);
return (error);
}
- (void) copystr(which, mp->mnt_stat.f_mntonname, MNAMELEN - 1, 0);
return (0);
}
@@ -686,8 +684,6 @@ nfs_mount(struct mount *mp, struct thread *td)
char hst[MNAMELEN];
size_t len;
u_char nfh[NFSX_V3FHMAX];
- char *path = "XXX: foo";
-
if (vfs_filteropt(mp->mnt_optnew, nfs_opts))
return (EINVAL);
@@ -744,7 +740,7 @@ nfs_mount(struct mount *mp, struct thread *td)
if (error)
return (error);
args.fh = nfh;
- error = mountnfs(&args, mp, nam, path, hst, &vp, td->td_ucred);
+ error = mountnfs(&args, mp, nam, hst, &vp, td->td_ucred);
return (error);
}
@@ -781,7 +777,7 @@ nfs_cmount(struct mntarg *ma, void *data, int flags, struct thread *td)
*/
static int
mountnfs(struct nfs_args *argp, struct mount *mp, struct sockaddr *nam,
- char *pth, char *hst, struct vnode **vpp, struct ucred *cred)
+ char *hst, struct vnode **vpp, struct ucred *cred)
{
struct nfsmount *nmp;
struct nfsnode *np;
@@ -838,7 +834,6 @@ mountnfs(struct nfs_args *argp, struct mount *mp, struct sockaddr *nam,
nmp->nm_fhsize = argp->fhsize;
bcopy((caddr_t)argp->fh, (caddr_t)nmp->nm_fh, argp->fhsize);
bcopy(hst, mp->mnt_stat.f_mntfromname, MNAMELEN);
- bcopy(pth, mp->mnt_stat.f_mntonname, MNAMELEN);
nmp->nm_nam = nam;
/* Set up the sockets and per-host congestion */
nmp->nm_sotype = argp->sotype;
OpenPOWER on IntegriCloud