Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 Jun 2007 10:40:36 GMT
From:      Roman Divacky <rdivacky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 122468 for review
Message-ID:  <200706281040.l5SAeaCi036693@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=122468

Change 122468 by rdivacky@rdivacky_witten on 2007/06/28 10:40:19

	Change names/positions of params to match the POSIX.
	
	Suggested by: rwatson

Affected files ...

.. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_file.c#15 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_misc.c#5 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_stats.c#9 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/init_sysent.c#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/syscalls.c#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/syscalls.master#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/systrace_args.c#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#34 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscall.h#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscall.mk#7 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscallsubr.h#15 edit
.. //depot/projects/soc2007/rdivacky/linux_at/sys/sys/sysproto.h#7 edit

Differences ...

==== //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_file.c#15 (text+ko) ====

@@ -89,7 +89,7 @@
 
 
 static int
-linux_common_open(struct thread *td, char *path, int l_flags, int mode, int dirfd)
+linux_common_open(struct thread *td, int dirfd, char *path, int l_flags, int mode)
 {
     struct proc *p = td->td_proc;
     struct file *fp;
@@ -132,7 +132,7 @@
     /* XXX LINUX_O_NOATIME: unable to be easily implemented. */
 
     if (dirfd != -1)
-	error = kern_openat(td, path, UIO_SYSSPACE, bsd_flags, mode, dirfd);
+	error = kern_openat(td, dirfd, path, UIO_SYSSPACE, bsd_flags, mode);
     else
 	error = kern_open(td, path, UIO_SYSSPACE, bsd_flags, mode);
     if (!error) {
@@ -202,7 +202,7 @@
 		    path, args->flags, args->mode);
 #endif
 
-	return linux_common_open(td, path, args->flags, args->mode, dfd);
+	return linux_common_open(td, dfd, path, args->flags, args->mode);
 }
 
 int
@@ -221,7 +221,7 @@
 		    path, args->flags, args->mode);
 #endif
 
-    return linux_common_open(td, path, args->flags, args->mode, -1);
+    return linux_common_open(td, -1, path, args->flags, args->mode);
 }
 
 int
@@ -592,7 +592,7 @@
 		printf(ARGS(access, "%s, %d"), path, args->mode);
 #endif
 
-	error = kern_accessat(td, path, UIO_SYSSPACE, args->mode, dfd);
+	error = kern_accessat(td, dfd, path, UIO_SYSSPACE, args->mode);
 	LFREEPATH(path);
 
 	return (error);
@@ -645,12 +645,12 @@
 #endif
 
 	if (args->flag & LINUX_AT_REMOVEDIR)
-		error = kern_rmdirat(td, path, UIO_SYSSPACE, dfd);
+		error = kern_rmdirat(td, dfd, path, UIO_SYSSPACE);
 	else
-		error = kern_unlinkat(td, path, UIO_SYSSPACE, dfd);
+		error = kern_unlinkat(td, dfd, path, UIO_SYSSPACE);
 	if (error == EPERM)
 		/* Introduce POSIX noncompliant behaviour of Linux */
-		if (kern_statat(td, path, UIO_SYSSPACE, &st, dfd) == 0)
+		if (kern_statat(td, dfd, path, UIO_SYSSPACE, &st) == 0)
 			if (S_ISDIR(st.st_mode))
 				error = EISDIR;
 	LFREEPATH(path);
@@ -708,7 +708,7 @@
 		printf(ARGS(fchmodat, "%s, %d"), path, args->mode);
 #endif
 
-	error = kern_chmodat(td, path, UIO_SYSSPACE, args->mode, dfd);
+	error = kern_chmodat(td, dfd, path, UIO_SYSSPACE, args->mode);
 	LFREEPATH(path);
 	return (error);
 }
@@ -747,7 +747,7 @@
 	if (ldebug(mkdirat))
 		printf(ARGS(mkdirat, "%s, %d"), path, args->mode);
 #endif
-	error = kern_mkdirat(td, path, UIO_SYSSPACE, args->mode, dfd);
+	error = kern_mkdirat(td, dfd, path, UIO_SYSSPACE, args->mode);
 	LFREEPATH(path);
 	return (error);
 }
@@ -821,7 +821,7 @@
 	if (ldebug(renameat))
 		printf(ARGS(renameat, "%s, %s"), from, to);
 #endif
-	error = kern_renameat(td, from, to, UIO_SYSSPACE, olddfd, newdfd);
+	error = kern_renameat(td, olddfd, newdfd, from, to, UIO_SYSSPACE);
 	LFREEPATH(from);
 	LFREEPATH(to);
 	return (error);
@@ -875,7 +875,7 @@
 		printf(ARGS(symlinkat, "%s, %s"), path, to);
 #endif
 
-	error = kern_symlinkat(td, path, to, UIO_SYSSPACE, dfd);
+	error = kern_symlinkat(td, dfd, path, to, UIO_SYSSPACE);
 	LFREEPATH(path);
 	LFREEPATH(to);
 	return (error);
@@ -919,8 +919,8 @@
 		    args->bufsiz);
 #endif
 
-	error = kern_readlinkat(td, name, UIO_SYSSPACE, args->buf, UIO_USERSPACE,
-	    args->bufsiz, dfd);
+	error = kern_readlinkat(td, dfd, name, UIO_SYSSPACE, args->buf,
+	    UIO_USERSPACE, args->bufsiz);
 	LFREEPATH(name);
 	return (error);
 }
@@ -1018,7 +1018,7 @@
 			args->newdfd, to, args->flags);
 #endif
 
-	error = kern_linkat(td, path, to, UIO_SYSSPACE, olddfd, newdfd, FOLLOW);
+	error = kern_linkat(td, olddfd, newdfd, path, to, UIO_SYSSPACE, FOLLOW);
 	LFREEPATH(path);
 	LFREEPATH(to);
 	return (error);
@@ -1511,9 +1511,9 @@
 #endif
 
 	if (args->flag & LINUX_AT_SYMLINK_NOFOLLOW)
-		error = kern_lchownat(td, path, UIO_SYSSPACE, args->uid, args->gid, dfd);
+		error = kern_lchownat(td, dfd, path, UIO_SYSSPACE, args->uid, args->gid);
 	else
-		error = kern_chownat(td, path, UIO_SYSSPACE, args->uid, args->gid, dfd);
+		error = kern_chownat(td, dfd, path, UIO_SYSSPACE, args->uid, args->gid);
 	LFREEPATH(path);
 	return (error);
 }

==== //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_misc.c#5 (text+ko) ====

@@ -854,7 +854,7 @@
 		tvp = tv;
 	}
 
-	error = kern_utimesat(td, fname, UIO_SYSSPACE, tvp, UIO_SYSSPACE, dfd);
+	error = kern_utimesat(td, dfd, fname, UIO_SYSSPACE, tvp, UIO_SYSSPACE);
 	LFREEPATH(fname);
 	return (error);
 }

==== //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_stats.c#9 (text+ko) ====

@@ -144,7 +144,7 @@
 	if (!S_ISCHR(buf->st_mode) && !S_ISBLK(buf->st_mode))
 		return;
 	temp = td->td_retval[0];
-	if (kern_openat(td, path, UIO_SYSSPACE, O_RDONLY, 0, dfd) != 0)
+	if (kern_openat(td, dfd, path, UIO_SYSSPACE, O_RDONLY, 0) != 0)
 		return;
 	fd = td->td_retval[0];
 	td->td_retval[0] = temp;
@@ -621,9 +621,9 @@
 #endif
 
 	if (args->flag & LINUX_AT_SYMLINK_NOFOLLOW)
-		error = kern_lstatat(td, path, UIO_SYSSPACE, &buf, dfd);
+		error = kern_lstatat(td, dfd, path, UIO_SYSSPACE, &buf);
 	else
-		error = kern_statat(td, path, UIO_SYSSPACE, &buf, dfd);
+		error = kern_statat(td, dfd, path, UIO_SYSSPACE, &buf);
 		
 	translate_path_major_minor_at(td, args->pathname, &buf, dfd);
 	if (!error)

==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/init_sysent.c#7 (text+ko) ====


==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/syscalls.c#7 (text+ko) ====


==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/syscalls.master#7 (text+ko) ====

@@ -835,9 +835,9 @@
 474     AUE_NULL        STD    { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, \
 				    struct sockaddr * from, __socklen_t *fromlenaddr, \
 				    struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
-475	AUE_ACCESS	STD	{ int faccessat(int dirfd, const char *path, int mode, int flag); }
-476	AUE_CHMOD	STD	{ int fchmodat(int dirfd, const char *path, mode_t mode, int flag); }
-477	AUE_CHOWN	STD	{ int fchownat(int dirfd, const char *path, uid_t uid, gid_t gid, int flag); }
+475	AUE_ACCESS	STD	{ int faccessat(int fd, const char *path, int mode, int flag); }
+476	AUE_CHMOD	STD	{ int fchmodat(int fd, const char *path, mode_t mode, int flag); }
+477	AUE_CHOWN	STD	{ int fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
 478	AUE_EXECVE	STD	{ int fexecve(int fd, char **argv, char **envv); }
 479	AUE_STAT	STD	{ int fstatat(int fd, const char *path, struct stat *buf, int flag); }
 480	AUE_UTIMES	STD	{ int futimesat(int fd, const char *path, const struct timeval *times); }

==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/systrace_args.c#7 (text+ko) ====

@@ -2808,7 +2808,7 @@
 	/* faccessat */
 	case 475: {
 		struct faccessat_args *p = params;
-		iarg[0] = p->dirfd; /* int */
+		iarg[0] = p->fd; /* int */
 		uarg[1] = (intptr_t) p->path; /* const char * */
 		iarg[2] = p->mode; /* int */
 		iarg[3] = p->flag; /* int */
@@ -2818,7 +2818,7 @@
 	/* fchmodat */
 	case 476: {
 		struct fchmodat_args *p = params;
-		iarg[0] = p->dirfd; /* int */
+		iarg[0] = p->fd; /* int */
 		uarg[1] = (intptr_t) p->path; /* const char * */
 		iarg[2] = p->mode; /* mode_t */
 		iarg[3] = p->flag; /* int */
@@ -2828,7 +2828,7 @@
 	/* fchownat */
 	case 477: {
 		struct fchownat_args *p = params;
-		iarg[0] = p->dirfd; /* int */
+		iarg[0] = p->fd; /* int */
 		uarg[1] = (intptr_t) p->path; /* const char * */
 		uarg[2] = p->uid; /* uid_t */
 		iarg[3] = p->gid; /* gid_t */

==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#34 (text+ko) ====

@@ -966,15 +966,15 @@
 int
 openat(struct thread *td, struct openat_args *args)
 {
-	return kern_openat(td, args->path, UIO_USERSPACE, args->flag,
-	    args->mode, args->fd);
+	return kern_openat(td, args->fd, args->path, UIO_USERSPACE,
+	   args->flag, args->mode);
 }
 
 int
 kern_open(struct thread *td, char *path, enum uio_seg pathseg, int flags,
     int mode)
 {
-	return kern_openat(td, (const char *)path, pathseg, flags, mode, AT_FDCWD);
+	return kern_openat(td, AT_FDCWD, (const char *)path, pathseg, flags, mode);
 }
 
 static int
@@ -1017,8 +1017,8 @@
 }
 
 int
-kern_openat(struct thread *td, const char *path, enum uio_seg pathseg, int flags,
-    int mode, int dirfd)
+kern_openat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int flags, int mode)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
@@ -1038,7 +1038,7 @@
 	AUDIT_ARG(mode, mode);
 	/* XXX: audit dirfd */
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -1225,20 +1225,20 @@
 int
 mknodat(struct thread *td, struct mknodat_args *args)
 {
-	return kern_mknodat(td, args->path, UIO_USERSPACE, args->mode,
-	    args->dev, args->fd);
+	return kern_mknodat(td, args->fd, args->path, UIO_USERSPACE, args->mode,
+	    args->dev);
 }
 
 int
 kern_mknod(struct thread *td, char *path, enum uio_seg pathseg, int mode,
     int dev)
 {
-	return kern_mknodat(td, (const char *)path, pathseg, mode, dev, AT_FDCWD);
+	return kern_mknodat(td, AT_FDCWD, (const char *)path, pathseg, mode, dev);
 }
 
 int
-kern_mknodat(struct thread *td, const char *path, enum uio_seg pathseg, int mode,
-    int dev, int dirfd)
+kern_mknodat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int mode, int dev)
 {
 	struct vnode *vp, *dir_vn = NULL;
 	struct mount *mp;
@@ -1270,7 +1270,7 @@
 restart:
 	if (dir_vn)
 		vrele(dir_vn);
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 	bwillwrite();
@@ -1387,18 +1387,18 @@
 int
 mkfifoat(struct thread *td, struct mkfifoat_args *args)
 {
-	return kern_mkfifoat(td, args->path, UIO_USERSPACE, args->mode, args->fd);
+	return kern_mkfifoat(td, args->fd, args->path, UIO_USERSPACE, args->mode);
 }
 
 int
 kern_mkfifo(struct thread *td, char *path, enum uio_seg pathseg, int mode)
 {
-	return kern_mkfifoat(td, (const char *)path, pathseg, mode, AT_FDCWD);
+	return kern_mkfifoat(td, AT_FDCWD, (const char *)path, pathseg, mode);
 }
 
 int
-kern_mkfifoat(struct thread *td, const char *path, enum uio_seg pathseg, int mode,
-    int dirfd)
+kern_mkfifoat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int mode)
 {
 	struct mount *mp;
 	struct vattr vattr;
@@ -1411,7 +1411,7 @@
 restart:
 	if (dir_vn)
 		vrele(dir_vn);
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 	bwillwrite();
@@ -1512,11 +1512,11 @@
 		return (EINVAL);
 
 	if (args->flag & AT_SYMLINK_FOLLOW)
-		return kern_linkat(td, args->path1, args->path2,
-		    UIO_USERSPACE, args->fd1, args->fd2, FOLLOW);
+		return kern_linkat(td, args->fd1, args->fd2, args->path1,
+		    args->path2, UIO_USERSPACE, FOLLOW);
 	else
-		return kern_linkat(td, args->path1, args->path2,
-		    UIO_USERSPACE, args->fd1, args->fd2, 0);
+		return kern_linkat(td, args->fd1, args->fd2, args->path1,
+		    args->path2, UIO_USERSPACE, 0);
 }
 
 static int hardlink_check_uid = 0;
@@ -1561,13 +1561,13 @@
 int
 kern_link(struct thread *td, char *path, char *link, enum uio_seg segflg)
 {
-	return kern_linkat(td, (const char *)path, (const char *)link,
-	    segflg, AT_FDCWD, AT_FDCWD, FOLLOW);
+	return kern_linkat(td, AT_FDCWD, AT_FDCWD, (const char *)path,
+	    (const char *)link, segflg, FOLLOW);
 }
 
 int
-kern_linkat(struct thread *td, const char *path, const char *link,
-    enum uio_seg segflg, int olddirfd, int newdirfd, int follow)
+kern_linkat(struct thread *td, int fd1, int fd2, const char *path1, const char *path2,
+    enum uio_seg segflg, int follow)
 {
 	struct nameidata ndp, ndl;
 	int error;
@@ -1577,19 +1577,19 @@
 	int vfslocked;
 	int lvfslocked;
 
-	error = kern_get_at(td, olddirfd, &pdir_vn);
-	if (error && !kern_absolute_path(path, segflg))
+	error = kern_get_at(td, fd1, &pdir_vn);
+	if (error && !kern_absolute_path(path1, segflg))
 		return (error);
 
 	NDINIT_AT(&ndp, LOOKUP, ((error) ? ATBADF : 0) | follow | MPSAFE |
-	    AUDITVNODE1, segflg, path, td, pdir_vn);
+	    AUDITVNODE1, segflg, path1, td, pdir_vn);
 
-	error = kern_get_at(td, newdirfd, &ldir_vn);
-	if (error && !kern_absolute_path(link, segflg))
+	error = kern_get_at(td, fd2, &ldir_vn);
+	if (error && !kern_absolute_path(path2, segflg))
 		return (error);
 
 	NDINIT_AT(&ndl, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT |
-	    SAVENAME | MPSAFE | AUDITVNODE1, segflg, link, td, ldir_vn);
+	    SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, ldir_vn);
 
 	bwillwrite();
 	if ((error = namei(&ndp)) != 0)
@@ -1678,19 +1678,19 @@
 int
 symlinkat(struct thread *td, struct symlinkat_args *args)
 {
-	return kern_symlinkat(td, args->path1, args->path2, UIO_USERSPACE, args->fd);
+	return kern_symlinkat(td, args->path1, args->fd, args->path2, UIO_USERSPACE);
 }
 
 int
 kern_symlink(struct thread *td, char *path, char *link, enum uio_seg segflg)
 {
-	return kern_symlinkat(td, (const char *)path, (const char *)link,
-	    segflg, AT_FDCWD);
+	return kern_symlinkat(td, (const char *)path, AT_FDCWD, (const char *)link,
+	    segflg);
 }
 
 int
-kern_symlinkat(struct thread *td, const char *path, const char *link,
-    enum uio_seg segflg, int dirfd)
+kern_symlinkat(struct thread *td, const char *path1, int fd, const char *path2,
+    enum uio_seg segflg)
 {
 	struct mount *mp;
 	struct vattr vattr;
@@ -1701,22 +1701,22 @@
 	struct vnode *dir_vn = NULL;
 
 	if (segflg == UIO_SYSSPACE) {
-		syspath = __DECONST(char *, path);
+		syspath = __DECONST(char *, path1);
 	} else {
 		syspath = uma_zalloc(namei_zone, M_WAITOK);
-		if ((error = copyinstr(path, syspath, MAXPATHLEN, NULL)) != 0)
+		if ((error = copyinstr(path1, syspath, MAXPATHLEN, NULL)) != 0)
 			goto out;
 	}
 	AUDIT_ARG(text, syspath);
 restart:
 	if (dir_vn)
 		vrele(dir_vn);
-	error = kern_get_at(td, dirfd, &dir_vn);
-	if (error && !kern_absolute_path(link, segflg))
+	error = kern_get_at(td, fd, &dir_vn);
+	if (error && !kern_absolute_path(path2, segflg))
 		return (error);
 	bwillwrite();
 	NDINIT_AT(&nd, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT |
-	    SAVENAME | MPSAFE | AUDITVNODE1, segflg, link, td, dir_vn);
+	    SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, dir_vn);
 	if ((error = namei(&nd)) != 0)
 		goto out;
 	vfslocked = NDHASGIANT(&nd);
@@ -1856,19 +1856,19 @@
 		return (EINVAL);
 
 	if (args->flag & AT_REMOVEDIR)
-		return kern_rmdirat(td, args->path, UIO_USERSPACE, args->fd);
+		return kern_rmdirat(td, args->fd, args->path, UIO_USERSPACE);
 	else
-		return kern_unlinkat(td, args->path, UIO_USERSPACE, args->fd);
+		return kern_unlinkat(td, args->fd, args->path, UIO_USERSPACE);
 }
 
 int
 kern_unlink(struct thread *td, char *path, enum uio_seg pathseg)
 {
-	return kern_unlinkat(td, (const char *)path, pathseg, AT_FDCWD);
+	return kern_unlinkat(td, AT_FDCWD, (const char *)path, pathseg);
 }
 
 int
-kern_unlinkat(struct thread *td, const char *path, enum uio_seg pathseg, int dirfd)
+kern_unlinkat(struct thread *td, int fd, const char *path, enum uio_seg pathseg)
 {
 	struct mount *mp;
 	struct vnode *vp, *dir_vn = NULL;
@@ -1879,7 +1879,7 @@
 restart:
 	if (dir_vn)
 		vrele(dir_vn);
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 	bwillwrite();
@@ -2134,18 +2134,18 @@
 	if (args->flag & ~AT_EACCESS)
 		return (EINVAL);
 	/* XXX: what about mode? */
-	return kern_accessat(td, args->path, UIO_USERSPACE, args->flag, args->dirfd);
+	return kern_accessat(td, args->fd, args->path, UIO_USERSPACE, args->flag);
 }
 
 int
 kern_access(struct thread *td, char *path, enum uio_seg pathseg, int flags)
 {
-	return kern_accessat(td, (const char *)path, pathseg, flags, AT_FDCWD);
+	return kern_accessat(td, AT_FDCWD, (const char *)path, pathseg, flags);
 }
 
 int
-kern_accessat(struct thread *td, const char *path, enum uio_seg pathseg,
-    int flags, int dirfd)
+kern_accessat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int flags)
 {
 	int error;
 	struct nameidata nd;
@@ -2154,7 +2154,7 @@
 	struct vnode *vp;
 	int vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -2365,27 +2365,27 @@
 		return (EINVAL);
 
 	if (args->flag & AT_SYMLINK_NOFOLLOW)
-		return kern_lstatat(td, args->path, UIO_USERSPACE, args->buf, args->fd);
+		return kern_lstatat(td, args->fd, args->path, UIO_USERSPACE, args->buf);
 	else
-		return kern_statat(td, args->path, UIO_USERSPACE, args->buf, args->fd);
+		return kern_statat(td, args->fd, args->path, UIO_USERSPACE, args->buf);
 }
 
 int
 kern_stat(struct thread *td, char *path, enum uio_seg pathseg, struct stat *sbp)
 {
-	return kern_statat(td, (const char *)path, pathseg, sbp, AT_FDCWD);
+	return kern_statat(td, AT_FDCWD, (const char *)path, pathseg, sbp);
 }
 
 int
-kern_statat(struct thread *td, const char *path, enum uio_seg pathseg,
-    struct stat *sbp, int dirfd)
+kern_statat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    struct stat *sbp)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
 	struct stat sb;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -2442,12 +2442,12 @@
 int
 kern_lstat(struct thread *td, char *path, enum uio_seg pathseg, struct stat *sbp)
 {
-	return kern_lstatat(td, (const char *)path, pathseg, sbp, AT_FDCWD);
+	return kern_lstatat(td, AT_FDCWD, (const char *)path, pathseg, sbp);
 }
 
 int
-kern_lstatat(struct thread *td, const char *path, enum uio_seg pathseg,
-    struct stat *sbp, int dirfd)
+kern_lstatat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    struct stat *sbp)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
@@ -2455,7 +2455,7 @@
 	struct stat sb;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -2640,21 +2640,21 @@
 ssize_t
 readlinkat(struct thread *td, struct readlinkat_args *args)
 {
-	return kern_readlinkat(td, args->path, UIO_USERSPACE,
-	    args->buf, UIO_USERSPACE, args->bufsize, args->fd);
+	return kern_readlinkat(td, args->fd, args->path, UIO_USERSPACE,
+	    args->buf, UIO_USERSPACE, args->bufsize);
 }
 
 int
 kern_readlink(struct thread *td, char *path, enum uio_seg pathseg, char *buf,
     enum uio_seg bufseg, int count)
 {
-	return kern_readlinkat(td, (const char *)path, pathseg, buf, bufseg,
-	    count, AT_FDCWD);
+	return kern_readlinkat(td, AT_FDCWD, (const char *)path, pathseg, buf,
+	    bufseg, count);
 }
 
 int
-kern_readlinkat(struct thread *td, const char *path, enum uio_seg pathseg,
-    char *buf, enum uio_seg bufseg, int count, int dirfd)
+kern_readlinkat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    char *buf, enum uio_seg bufseg, int count)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
@@ -2663,7 +2663,7 @@
 	struct uio auio;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -2912,28 +2912,28 @@
 		return (EINVAL);
 
 	if (args->flag & AT_SYMLINK_NOFOLLOW)
-		return kern_lchmodat(td, args->path, UIO_USERSPACE,
-		    args->mode, args->dirfd);
+		return kern_lchmodat(td, args->fd, args->path, UIO_USERSPACE,
+		    args->mode);
 	else
-		return kern_chmodat(td, args->path, UIO_USERSPACE,
-		    args->mode, args->dirfd);
+		return kern_chmodat(td, args->fd, args->path, UIO_USERSPACE,
+		    args->mode);
 }
 
 int
 kern_chmod(struct thread *td, char *path, enum uio_seg pathseg, int mode)
 {
-	return kern_chmodat(td, (const char *)path, pathseg, mode, AT_FDCWD);
+	return kern_chmodat(td, AT_FDCWD, (const char *)path, pathseg, mode);
 }
 
 int
-kern_chmodat(struct thread *td, const char *path, enum uio_seg pathseg,
-    mode_t mode, int dirfd)
+kern_chmodat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    mode_t mode)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -2970,20 +2970,20 @@
 		int mode;
 	} */ *uap;
 {
-	return kern_lchmodat(td, uap->path, UIO_USERSPACE, uap->mode, AT_FDCWD);
+	return kern_lchmodat(td, AT_FDCWD, uap->path, UIO_USERSPACE, uap->mode);
 }
 
 
 int
-kern_lchmodat(struct thread *td, const char *path, enum uio_seg pathseg,
-    mode_t mode, int dirfd)
+kern_lchmodat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    mode_t mode)
 {
 	int error;
 	struct nameidata nd;
 	int vfslocked;
 	struct vnode *dir_vn;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -3101,29 +3101,29 @@
 		return (EINVAL);
 
 	if (args->flag & AT_SYMLINK_NOFOLLOW)
-		return kern_lchownat(td, args->path, UIO_USERSPACE, args->uid,
-		    args->gid, args->dirfd);
+		return kern_lchownat(td, args->fd, args->path, UIO_USERSPACE,
+		    args->uid, args->gid);
 	else
-		return kern_chownat(td, args->path, UIO_USERSPACE, args->uid,
-		    args->gid, args->dirfd);
+		return kern_chownat(td, args->fd, args->path, UIO_USERSPACE,
+		    args->uid, args->gid);
 }
 
 int
 kern_chown(struct thread *td, char *path, enum uio_seg pathseg, int uid,
     int gid)
 {
-	return kern_chownat(td, (const char *)path, pathseg, uid, gid, AT_FDCWD);
+	return kern_chownat(td, AT_FDCWD, (const char *)path, pathseg, uid, gid);
 }
 
 int
-kern_chownat(struct thread *td, const char *path, enum uio_seg pathseg, int uid,
-    int gid, int dirfd)
+kern_chownat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int uid, int gid)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -3170,18 +3170,18 @@
 kern_lchown(struct thread *td, char *path, enum uio_seg pathseg, int uid,
     int gid)
 {
-	return kern_lchownat(td, (const char *)path, pathseg, uid, gid, AT_FDCWD);
+	return kern_lchownat(td, AT_FDCWD, (const char *)path, pathseg, uid, gid);
 }
 
 int
-kern_lchownat(struct thread *td, const char *path, enum uio_seg pathseg, int uid,
-    int gid, int dirfd)
+kern_lchownat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    int uid, int gid)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
 	int error, vfslocked;
 
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -3345,27 +3345,28 @@
 int
 futimesat(struct thread *td, struct futimesat_args *args)
 {
-	return kern_utimesat(td, args->path, UIO_USERSPACE, args->times, UIO_USERSPACE, args->fd);
+	return kern_utimesat(td, args->fd, args->path, UIO_USERSPACE,
+	    args->times, UIO_USERSPACE);
 }
 
 int
 kern_utimes(struct thread *td, char *path, enum uio_seg pathseg,
     struct timeval *tptr, enum uio_seg tptrseg)
 {
-	return kern_utimesat(td, (const char *)path, pathseg,
-	    (const struct timeval *)tptr, tptrseg, AT_FDCWD);
+	return kern_utimesat(td, AT_FDCWD, (const char *)path, pathseg,
+	    (const struct timeval *)tptr, tptrseg);
 }
 
 int
-kern_utimesat(struct thread *td, const char *path, enum uio_seg pathseg,
-    const struct timeval *tptr, enum uio_seg tptrseg, int dirfd)
+kern_utimesat(struct thread *td, int fd, const char *path, enum uio_seg pathseg,
+    const struct timeval *tptr, enum uio_seg tptrseg)
 {
 	struct nameidata nd;
 	struct vnode *dir_vn;
 	struct timespec ts[2];
 	int error, vfslocked;
 
-   	error = kern_get_at(td, dirfd, &dir_vn);
+   	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 
@@ -3742,20 +3743,20 @@
 int
 renameat(struct thread *td, struct renameat_args *args)
 {
-	return kern_renameat(td, args->old, args->new, UIO_USERSPACE,
-	    args->oldfd, args->newfd);
+	return kern_renameat(td, args->oldfd, args->old, args->newfd, args->new,
+	    UIO_USERSPACE);
 }
 
 int
 kern_rename(struct thread *td, char *from, char *to, enum uio_seg pathseg)
 {
-	return kern_renameat(td, (const char *)from, (const char *)to, pathseg,
-	    AT_FDCWD, AT_FDCWD);
+	return kern_renameat(td, AT_FDCWD, (const char *)from, AT_FDCWD,
+	    (const char *)to, pathseg);
 }
 
 int
-kern_renameat(struct thread *td, const char *from, const char *to,
-    enum uio_seg pathseg, int fdirfd, int tdirfd)
+kern_renameat(struct thread *td, int oldfd, const char *old, int newfd,
+    const char *new, enum uio_seg pathseg)
 {
 	struct nameidata fromnd, tond;
 	struct vnode *fdir_vn, *tdir_vn;
@@ -3765,23 +3766,23 @@
 	int fvfslocked;
 	int error;
 
-	error = kern_get_at(td, fdirfd, &fdir_vn);
-	if (error && !kern_absolute_path(from, pathseg))
+	error = kern_get_at(td, oldfd, &fdir_vn);
+	if (error && !kern_absolute_path(old, pathseg))
 		return (error);
-	error = kern_get_at(td, tdirfd, &tdir_vn);
-	if (error && !kern_absolute_path(to, pathseg))
+	error = kern_get_at(td, newfd, &tdir_vn);
+	if (error && !kern_absolute_path(new, pathseg))
 		return (error);
 
 #ifdef MAC
 	NDINIT_AT(&fromnd, DELETE, ((error) ? ATBADF : 0) | LOCKPARENT |
-	    LOCKLEAF | SAVESTART | MPSAFE | AUDITVNODE1, pathseg, from, td, fdir_vn);
+	    LOCKLEAF | SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, fdir_vn);
 #else
 	NDINIT_AT(&fromnd, DELETE, ((error) ? ATBADF : 0) | WANTPARENT |
-	    SAVESTART | MPSAFE | AUDITVNODE1, pathseg, from, td, fdir_vn);
+	    SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, fdir_vn);
 #endif
 	NDINIT_AT(&tond, RENAME, ((error) ? ATBADF : 0) | LOCKPARENT |
 	    LOCKLEAF | NOCACHE | SAVESTART | MPSAFE | AUDITVNODE2,
-	    pathseg, to, td, tdir_vn);
+	    pathseg, new, td, tdir_vn);
 
 	bwillwrite();
 	if ((error = namei(&fromnd)) != 0)
@@ -3915,18 +3916,18 @@
 int
 mkdirat(struct thread *td, struct mkdirat_args *args)
 {
-	return kern_mkdirat(td, args->path, UIO_USERSPACE, args->mode, args->fd);
+	return kern_mkdirat(td, args->fd, args->path, UIO_USERSPACE, args->mode);
 }
 
 int
 kern_mkdir(struct thread *td, char *path, enum uio_seg segflg, int mode)
 {
-	return kern_mkdirat(td, (const char *)path, segflg, mode, AT_FDCWD);
+	return kern_mkdirat(td, AT_FDCWD, (const char *)path, segflg, mode);
 }
 
 int
-kern_mkdirat(struct thread *td, const char *path, enum uio_seg segflg,
-    int mode, int dirfd)
+kern_mkdirat(struct thread *td, int fd, const char *path, enum uio_seg segflg,
+    int mode)
 {
 	struct mount *mp;
 	struct vnode *vp, *dir_vn = NULL;
@@ -3939,7 +3940,7 @@
 restart:
 	if (dir_vn)
 		vrele(dir_vn);
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, segflg))
 		return (error);
 	bwillwrite();
@@ -4030,11 +4031,11 @@
 int
 kern_rmdir(struct thread *td, char *path, enum uio_seg pathseg)
 {
-	return kern_rmdirat(td, (const char *)path, pathseg, AT_FDCWD);
+	return kern_rmdirat(td, AT_FDCWD, (const char *)path, pathseg);
 }
 
 int
-kern_rmdirat(struct thread *td, const char *path, enum uio_seg pathseg, int dirfd)
+kern_rmdirat(struct thread *td, int fd, const char *path, enum uio_seg pathseg)
 {
 	struct mount *mp;
 	struct vnode *vp, *dir_vn = NULL;
@@ -4043,7 +4044,7 @@
 	int vfslocked;
 
 restart:
-	error = kern_get_at(td, dirfd, &dir_vn);
+	error = kern_get_at(td, fd, &dir_vn);
 	if (error && !kern_absolute_path(path, pathseg))
 		return (error);
 	bwillwrite();

==== //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscall.h#7 (text+ko) ====


==== //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscall.mk#7 (text+ko) ====


==== //depot/projects/soc2007/rdivacky/linux_at/sys/sys/syscallsubr.h#15 (text+ko) ====

@@ -56,8 +56,8 @@
 	    socklen_t *namelen, struct file **fp);
 int	kern_access(struct thread *td, char *path, enum uio_seg pathseg,
 	    int flags);
-int	kern_accessat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    int flags, int dirfd);
+int	kern_accessat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int flags);
 int	kern_adjtime(struct thread *td, struct timeval *delta,
 	    struct timeval *olddelta);
 int	kern_alternate_path(struct thread *td, const char *prefix, const char *path,
@@ -66,14 +66,14 @@
 int	kern_chdir(struct thread *td, char *path, enum uio_seg pathseg);
 int	kern_chmod(struct thread *td, char *path, enum uio_seg pathseg,
 	    int mode);
-int	kern_chmodat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    mode_t mode, int dirfd);
+int	kern_chmodat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, mode_t mode);
 int	kern_chown(struct thread *td, char *path, enum uio_seg pathseg, int uid,
 	    int gid);
-int	kern_chownat(struct thread *td, const char *path, enum uio_seg pathseg, int uid,
-	    int gid, int dirfd);
-int	kern_lchmodat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    mode_t mode, int dirfd);
+int	kern_chownat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int uid, int gid);
+int	kern_lchmodat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, mode_t mode);
 int	kern_clock_getres(struct thread *td, clockid_t clock_id,
 	    struct timespec *ts);
 int	kern_clock_gettime(struct thread *td, clockid_t clock_id,
@@ -110,30 +110,30 @@
 int	kern_kldunload(struct thread *td, int fileid, int flags);
 int	kern_lchown(struct thread *td, char *path, enum uio_seg pathseg,
 	    int uid, int gid);
-int	kern_lchownat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    int uid, int gid, int dirfd);
+int	kern_lchownat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int uid, int gid);
 int	kern_link(struct thread *td, char *path, char *link,
 	    enum uio_seg segflg);
-int	kern_linkat(struct thread *td, const char *path, const char *link,
-	    enum uio_seg segflg, int olddfd, int newdfd, int follow);
+int	kern_linkat(struct thread *td, int fd1, int fd2, const char *path1,
+	    const char *path2, enum uio_seg segflg, int follow);
 int	kern_lstat(struct thread *td, char *path, enum uio_seg pathseg,
 	    struct stat *sbp);
-int	kern_lstatat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    struct stat *sbp, int dfd);
+int	kern_lstatat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, struct stat *sbp);
 int	kern_lutimes(struct thread *td, char *path, enum uio_seg pathseg,
 	    struct timeval *tptr, enum uio_seg tptrseg);
 int	kern_mkdir(struct thread *td, char *path, enum uio_seg segflg,
 	    int mode);
-int	kern_mkdirat(struct thread *td, const char *path, enum uio_seg segflg,
-	    int mode, int dirfd);
+int	kern_mkdirat(struct thread *td, int fd, const char *path,
+	    enum uio_seg segflg, int mode);
 int	kern_mkfifo(struct thread *td, char *path, enum uio_seg pathseg,
 	    int mode);
-int	kern_mkfifoat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    int mode, int dirfd);
+int	kern_mkfifoat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int mode);
 int	kern_mknod(struct thread *td, char *path, enum uio_seg pathseg,
 	    int mode, int dev);
-int	kern_mknodat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    int mode, int dev, int dirfd);
+int	kern_mknodat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int mode, int dev);
 int	kern_msgctl(struct thread *, int, int, struct msqid_ds *);
 int	kern_msgsnd(struct thread *, int, const void *, size_t, int, long);
 int	kern_msgrcv(struct thread *, int, void *, size_t, long, int, long *);
@@ -141,8 +141,8 @@
 	    struct timespec *rmt);
 int	kern_open(struct thread *td, char *path, enum uio_seg pathseg,
 	    int flags, int mode);
-int	kern_openat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    int flags, int mode, int dirfd);
+int	kern_openat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, int flags, int mode);
 int	kern_pathconf(struct thread *td, char *path, enum uio_seg pathseg,
 	    int name);
 int	kern_preadv(struct thread *td, int fd, struct uio *auio, off_t offset);
@@ -151,17 +151,17 @@
 int	kern_pwritev(struct thread *td, int fd, struct uio *auio, off_t offset);
 int	kern_readlink(struct thread *td, char *path, enum uio_seg pathseg,
 	    char *buf, enum uio_seg bufseg, int count);
-int	kern_readlinkat(struct thread *td, const char *path, enum uio_seg pathseg,
-	    char *buf, enum uio_seg bufseg, int count, int dirfd);
+int	kern_readlinkat(struct thread *td, int fd, const char *path,
+	    enum uio_seg pathseg, char *buf, enum uio_seg bufseg, int count);
 int	kern_readv(struct thread *td, int fd, struct uio *auio);

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706281040.l5SAeaCi036693>