PERFORCE change 91318 for review
Warner Losh
imp at FreeBSD.org
Tue Feb 7 09:15:17 PST 2006
http://perforce.freebsd.org/chv.cgi?CH=91318
Change 91318 by imp at imp_harmony on 2006/02/07 17:14:34
IFC @91316
Affected files ...
.. //depot/projects/arm/src/sys/alpha/linux/linux_machdep.c#2 integrate
.. //depot/projects/arm/src/sys/alpha/osf1/osf1_misc.c#3 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux32_machdep.c#3 integrate
.. //depot/projects/arm/src/sys/arm/include/atomic.h#5 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_misc.c#6 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_stats.c#6 integrate
.. //depot/projects/arm/src/sys/compat/svr4/svr4_misc.c#3 integrate
.. //depot/projects/arm/src/sys/conf/files#17 integrate
.. //depot/projects/arm/src/sys/conf/kern.post.mk#7 integrate
.. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#10 integrate
.. //depot/projects/arm/src/sys/dev/em/if_em.c#13 integrate
.. //depot/projects/arm/src/sys/fs/nullfs/null_vfsops.c#4 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_misc.c#3 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_proto.h#3 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_syscall.h#3 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_sysent.c#3 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix.c#3 integrate
.. //depot/projects/arm/src/sys/i386/ibcs2/syscalls.master#3 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_machdep.c#4 integrate
.. //depot/projects/arm/src/sys/ia64/ia64/mca.c#2 integrate
.. //depot/projects/arm/src/sys/kern/init_main.c#4 integrate
.. //depot/projects/arm/src/sys/kern/kern_acct.c#5 integrate
.. //depot/projects/arm/src/sys/kern/kern_exec.c#6 integrate
.. //depot/projects/arm/src/sys/kern/kern_exit.c#9 integrate
.. //depot/projects/arm/src/sys/kern/kern_fork.c#5 integrate
.. //depot/projects/arm/src/sys/kern/kern_kse.c#4 integrate
.. //depot/projects/arm/src/sys/kern/kern_kthread.c#2 integrate
.. //depot/projects/arm/src/sys/kern/kern_shutdown.c#3 integrate
.. //depot/projects/arm/src/sys/kern/sys_process.c#4 integrate
.. //depot/projects/arm/src/sys/kern/vfs_cache.c#3 integrate
.. //depot/projects/arm/src/sys/kern/vfs_lookup.c#6 integrate
.. //depot/projects/arm/src/sys/kern/vfs_mount.c#10 integrate
.. //depot/projects/arm/src/sys/kern/vfs_subr.c#10 integrate
.. //depot/projects/arm/src/sys/kern/vfs_syscalls.c#9 integrate
.. //depot/projects/arm/src/sys/netgraph/ng_eiface.c#5 integrate
.. //depot/projects/arm/src/sys/netinet/ip_input.c#10 integrate
.. //depot/projects/arm/src/sys/security/audit/audit.c#3 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_pipe.c#1 branch
.. //depot/projects/arm/src/sys/security/audit/audit_private.h#2 integrate
.. //depot/projects/arm/src/sys/sys/imgact.h#3 integrate
.. //depot/projects/arm/src/sys/sys/mount.h#7 integrate
.. //depot/projects/arm/src/sys/sys/ptrace.h#3 integrate
.. //depot/projects/arm/src/sys/sys/syscallsubr.h#4 integrate
.. //depot/projects/arm/src/sys/sys/systm.h#8 integrate
.. //depot/projects/arm/src/sys/vm/vnode_pager.c#6 integrate
Differences ...
==== //depot/projects/arm/src/sys/alpha/linux/linux_machdep.c#2 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_machdep.c,v 1.36 2005/02/18 18:32:32 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_machdep.c,v 1.37 2006/02/06 22:06:52 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -81,7 +81,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/alpha/osf1/osf1_misc.c#3 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.58 2005/09/28 07:03:01 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.59 2006/02/06 22:06:52 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1246,7 +1246,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/amd64/linux32/linux32_machdep.c#3 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.10 2005/06/24 17:41:27 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.11 2006/02/06 22:06:53 jhb Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -205,7 +205,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/arm/include/atomic.h#5 (text+ko) ====
@@ -33,7 +33,7 @@
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/arm/include/atomic.h,v 1.16 2006/02/05 22:06:12 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/atomic.h,v 1.17 2006/02/06 18:29:05 cognet Exp $
*/
#ifndef _MACHINE_ATOMIC_H_
@@ -163,7 +163,7 @@
"moveq %1, #1\n"
"movne %1, #0\n"
: "=r" (ras_start), "=r" (done)
- ,"+r" (p), "+r" (cmpval), "+r" (newval));
+ ,"+r" (p), "+r" (cmpval), "+r" (newval) : : "memory");
return (done);
}
@@ -185,7 +185,8 @@
"2:\n"
"mov %1, #0\n"
"str %1, [%0]\n"
- : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (val));
+ : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (val)
+ : : "memory");
}
static __inline void
@@ -207,7 +208,8 @@
"mov %1, #0\n"
"str %1, [%0]\n"
- : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (val));
+ : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (val)
+ : : "memory");
}
static __inline void
@@ -229,7 +231,8 @@
"mov %1, #0\n"
"str %1, [%0]\n"
- : "=r" (ras_start), "=r" (start), "+r" (address), "+r" (setmask));
+ : "=r" (ras_start), "=r" (start), "+r" (address), "+r" (setmask)
+ : : "memory");
}
static __inline void
@@ -250,7 +253,8 @@
"2:\n"
"mov %1, #0\n"
"str %1, [%0]\n"
- : "=r" (ras_start), "=r" (start), "+r" (address), "+r" (clearmask));
+ : "=r" (ras_start), "=r" (start), "+r" (address), "+r" (clearmask)
+ : : "memory");
}
@@ -272,7 +276,8 @@
"2:\n"
"mov %3, #0\n"
"str %3, [%0]\n"
- : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (v));
+ : "=r" (ras_start), "=r" (start), "+r" (p), "+r" (v)
+ : : "memory");
return (start);
}
==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_misc.c#6 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.49 2006/01/20 16:22:06 ambrisko Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.50 2006/02/06 22:06:53 jhb Exp $");
#include "opt_compat.h"
@@ -324,7 +324,6 @@
uap->argv, uap->envv);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/compat/linux/linux_stats.c#6 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.74 2006/01/26 21:48:50 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.75 2006/02/06 10:10:42 jeff Exp $");
#include "opt_mac.h"
@@ -311,54 +311,6 @@
#endif
return (EOPNOTSUPP);
-
-#ifdef not_that_way
- struct l_ustat lu;
- struct cdev *dev;
- struct vnode *vp;
- struct statfs *stat;
- int error;
-
-
- /*
- * lu.f_fname and lu.f_fpack are not used. They are always zeroed.
- * lu.f_tinode and lu.f_tfree are set from the device's super block.
- */
- bzero(&lu, sizeof(lu));
-
- /*
- * XXX - Don't return an error if we can't find a vnode for the
- * device. Our struct cdev *is 32-bits whereas Linux only has a 16-bits
- * struct cdev *. The struct cdev *that is used now may as well be a truncated
- * struct cdev *returned from previous syscalls. Just return a bzeroed
- * ustat in that case.
- *
- * XXX: findcdev() SHALL not be used this way. Somebody (TM) will
- * have to find a better way. It may be that we should stick
- * a dev_t into struct mount, and walk the mountlist for a
- * perfect match and failing that try again looking for a
- * minor-truncated match.
- */
- dev = findcdev(makedev(args->dev >> 8, args->dev & 0xFF));
- if (dev != NULL && vfinddev(dev, &vp)) {
- if (vp->v_mount == NULL)
- return (EINVAL);
-#ifdef MAC
- error = mac_check_mount_stat(td->td_ucred, vp->v_mount);
- if (error)
- return (error);
-#endif
- stat = &(vp->v_mount->mnt_stat);
- error = VFS_STATFS(vp->v_mount, stat, td);
- if (error)
- return (error);
-
- lu.f_tfree = stat->f_bfree;
- lu.f_tinode = stat->f_ffree;
- }
-
- return (copyout(&lu, args->ubuf, sizeof(lu)));
-#endif
}
#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32))
==== //depot/projects/arm/src/sys/compat/svr4/svr4_misc.c#3 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.83 2005/10/19 09:33:15 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.84 2006/02/06 22:06:53 jhb Exp $");
#include "opt_mac.h"
@@ -175,7 +175,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
@@ -195,7 +194,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/conf/files#17 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1093 2006/02/03 00:36:19 mjacob Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1095 2006/02/06 22:50:39 rwatson Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -1829,13 +1829,14 @@
posix4/p1003_1b.c standard
posix4/posix4_mib.c standard
rpc/rpcclnt.c optional nfsclient
+security/audit/audit.c optional audit
security/audit/audit_arg.c optional audit
-security/audit/audit_syscalls.c standard
-security/audit/audit_trigger.c optional audit
-security/audit/audit.c optional audit
security/audit/audit_bsm.c optional audit
security/audit/audit_bsm_klib.c optional audit
security/audit/audit_bsm_token.c optional audit
+security/audit/audit_pipe.c optional audit
+security/audit/audit_syscalls.c standard
+security/audit/audit_trigger.c optional audit
security/mac/mac_inet.c optional mac inet
security/mac/mac_label.c optional mac
security/mac/mac_net.c optional mac
==== //depot/projects/arm/src/sys/conf/kern.post.mk#7 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/kern.post.mk,v 1.91 2006/01/16 16:25:17 ru Exp $
+# $FreeBSD: src/sys/conf/kern.post.mk,v 1.92 2006/02/07 13:37:26 ru Exp $
# Part of a unified Makefile for building kernels. This part includes all
# the definitions that need to be after all the % directives except %RULES
@@ -44,7 +44,7 @@
kernel-all: ${KERNEL_KO}
-kernel-cleandir: kernel-clean
+kernel-cleandir: kernel-clean kernel-cleandepend
kernel-clobber:
find . -maxdepth 1 ! -type d ! -name version -delete
==== //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#10 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.155 2006/01/25 23:07:42 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.156 2006/02/06 19:17:48 sos Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -1897,7 +1897,7 @@
}
/* any drive action to take care of ? */
- return 1;
+ return ata_pci_status(dev);
}
static int
==== //depot/projects/arm/src/sys/dev/em/if_em.c#13 (text+ko) ====
@@ -31,7 +31,7 @@
***************************************************************************/
-/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.105 2006/01/30 13:45:55 glebius Exp $*/
+/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.106 2006/02/07 13:11:13 glebius Exp $*/
#ifdef HAVE_KERNEL_OPTION_HEADERS
#include "opt_device_polling.h"
@@ -1101,6 +1101,7 @@
struct adapter *adapter = context;
struct ifnet *ifp;
+ NET_LOCK_GIANT();
ifp = adapter->ifp;
/*
@@ -1120,7 +1121,7 @@
}
em_enable_intr(adapter);
- return;
+ NET_UNLOCK_GIANT();
}
#endif
==== //depot/projects/arm/src/sys/fs/nullfs/null_vfsops.c#4 (text+ko) ====
@@ -32,7 +32,7 @@
* @(#)null_vfsops.c 8.2 (Berkeley) 1/21/94
*
* @(#)lofs_vfsops.c 1.2 (Berkeley) 6/18/92
- * $FreeBSD: src/sys/fs/nullfs/null_vfsops.c,v 1.75 2005/12/14 00:49:50 des Exp $
+ * $FreeBSD: src/sys/fs/nullfs/null_vfsops.c,v 1.76 2006/02/07 11:31:32 jeff Exp $
*/
/*
@@ -112,7 +112,7 @@
/*
* Find lower node
*/
- NDINIT(ndp, LOOKUP, FOLLOW|WANTPARENT|LOCKLEAF,
+ NDINIT(ndp, LOOKUP, FOLLOW|LOCKLEAF,
UIO_SYSSPACE, target, td);
error = namei(ndp);
/*
@@ -130,9 +130,6 @@
*/
lowerrootvp = ndp->ni_vp;
- vrele(ndp->ni_dvp);
- ndp->ni_dvp = NULLVP;
-
/*
* Check multi null mount to avoid `lock against myself' panic.
*/
==== //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_misc.c#3 (text+ko) ====
@@ -47,7 +47,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_misc.c,v 1.61 2005/07/07 19:29:42 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_misc.c,v 1.62 2006/02/06 22:06:53 jhb Exp $");
/*
* IBCS2 compatibility module.
@@ -207,7 +207,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
@@ -227,7 +226,6 @@
free(path, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_proto.h#3 (text+ko) ====
@@ -2,7 +2,7 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/ibcs2/ibcs2_proto.h,v 1.22 2005/07/13 20:35:08 jhb Exp $
+ * $FreeBSD: src/sys/i386/ibcs2/ibcs2_proto.h,v 1.23 2006/02/06 22:15:00 rwatson Exp $
* created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.21 2005/07/13 20:32:42 jhb Exp
*/
==== //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_syscall.h#3 (text+ko) ====
@@ -2,7 +2,7 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/ibcs2/ibcs2_syscall.h,v 1.19 2005/07/13 20:35:08 jhb Exp $
+ * $FreeBSD: src/sys/i386/ibcs2/ibcs2_syscall.h,v 1.20 2006/02/06 22:15:00 rwatson Exp $
* created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.21 2005/07/13 20:32:42 jhb Exp
*/
==== //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_sysent.c#3 (text+ko) ====
@@ -2,7 +2,7 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/ibcs2/ibcs2_sysent.c,v 1.24 2005/07/13 20:35:08 jhb Exp $
+ * $FreeBSD: src/sys/i386/ibcs2/ibcs2_sysent.c,v 1.25 2006/02/06 22:15:00 rwatson Exp $
* created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.21 2005/07/13 20:32:42 jhb Exp
*/
@@ -19,68 +19,68 @@
/* The casts are bogus but will do for now. */
struct sysent ibcs2_sysent[] = {
{ SYF_MPSAFE | 0, (sy_call_t *)nosys, AUE_NULL }, /* 0 = syscall */
- { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_NULL }, /* 1 = exit */
- { SYF_MPSAFE | 0, (sy_call_t *)fork, AUE_NULL }, /* 2 = fork */
+ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 1 = exit */
+ { SYF_MPSAFE | 0, (sy_call_t *)fork, AUE_FORK }, /* 2 = fork */
{ AS(ibcs2_read_args), (sy_call_t *)ibcs2_read, AUE_NULL }, /* 3 = ibcs2_read */
{ SYF_MPSAFE | AS(write_args), (sy_call_t *)write, AUE_NULL }, /* 4 = write */
- { SYF_MPSAFE | AS(ibcs2_open_args), (sy_call_t *)ibcs2_open, AUE_NULL }, /* 5 = ibcs2_open */
- { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_NULL }, /* 6 = close */
- { SYF_MPSAFE | AS(ibcs2_wait_args), (sy_call_t *)ibcs2_wait, AUE_NULL }, /* 7 = ibcs2_wait */
- { SYF_MPSAFE | AS(ibcs2_creat_args), (sy_call_t *)ibcs2_creat, AUE_NULL }, /* 8 = ibcs2_creat */
- { SYF_MPSAFE | AS(link_args), (sy_call_t *)link, AUE_NULL }, /* 9 = link */
- { SYF_MPSAFE | AS(ibcs2_unlink_args), (sy_call_t *)ibcs2_unlink, AUE_NULL }, /* 10 = ibcs2_unlink */
- { SYF_MPSAFE | AS(ibcs2_execv_args), (sy_call_t *)ibcs2_execv, AUE_NULL }, /* 11 = ibcs2_execv */
- { SYF_MPSAFE | AS(ibcs2_chdir_args), (sy_call_t *)ibcs2_chdir, AUE_NULL }, /* 12 = ibcs2_chdir */
+ { SYF_MPSAFE | AS(ibcs2_open_args), (sy_call_t *)ibcs2_open, AUE_OPEN_RWTC }, /* 5 = ibcs2_open */
+ { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_CLOSE }, /* 6 = close */
+ { SYF_MPSAFE | AS(ibcs2_wait_args), (sy_call_t *)ibcs2_wait, AUE_WAIT4 }, /* 7 = ibcs2_wait */
+ { SYF_MPSAFE | AS(ibcs2_creat_args), (sy_call_t *)ibcs2_creat, AUE_CREAT }, /* 8 = ibcs2_creat */
+ { SYF_MPSAFE | AS(link_args), (sy_call_t *)link, AUE_LINK }, /* 9 = link */
+ { SYF_MPSAFE | AS(ibcs2_unlink_args), (sy_call_t *)ibcs2_unlink, AUE_UNLINK }, /* 10 = ibcs2_unlink */
+ { SYF_MPSAFE | AS(ibcs2_execv_args), (sy_call_t *)ibcs2_execv, AUE_EXECVE }, /* 11 = ibcs2_execv */
+ { SYF_MPSAFE | AS(ibcs2_chdir_args), (sy_call_t *)ibcs2_chdir, AUE_CHDIR }, /* 12 = ibcs2_chdir */
{ SYF_MPSAFE | AS(ibcs2_time_args), (sy_call_t *)ibcs2_time, AUE_NULL }, /* 13 = ibcs2_time */
- { SYF_MPSAFE | AS(ibcs2_mknod_args), (sy_call_t *)ibcs2_mknod, AUE_NULL }, /* 14 = ibcs2_mknod */
- { SYF_MPSAFE | AS(ibcs2_chmod_args), (sy_call_t *)ibcs2_chmod, AUE_NULL }, /* 15 = ibcs2_chmod */
- { SYF_MPSAFE | AS(ibcs2_chown_args), (sy_call_t *)ibcs2_chown, AUE_NULL }, /* 16 = ibcs2_chown */
+ { SYF_MPSAFE | AS(ibcs2_mknod_args), (sy_call_t *)ibcs2_mknod, AUE_MKNOD }, /* 14 = ibcs2_mknod */
+ { SYF_MPSAFE | AS(ibcs2_chmod_args), (sy_call_t *)ibcs2_chmod, AUE_CHMOD }, /* 15 = ibcs2_chmod */
+ { SYF_MPSAFE | AS(ibcs2_chown_args), (sy_call_t *)ibcs2_chown, AUE_CHOWN }, /* 16 = ibcs2_chown */
{ SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak, AUE_NULL }, /* 17 = obreak */
- { SYF_MPSAFE | AS(ibcs2_stat_args), (sy_call_t *)ibcs2_stat, AUE_NULL }, /* 18 = ibcs2_stat */
- { SYF_MPSAFE | AS(ibcs2_lseek_args), (sy_call_t *)ibcs2_lseek, AUE_NULL }, /* 19 = ibcs2_lseek */
+ { SYF_MPSAFE | AS(ibcs2_stat_args), (sy_call_t *)ibcs2_stat, AUE_STAT }, /* 18 = ibcs2_stat */
+ { SYF_MPSAFE | AS(ibcs2_lseek_args), (sy_call_t *)ibcs2_lseek, AUE_LSEEK }, /* 19 = ibcs2_lseek */
{ SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_NULL }, /* 20 = getpid */
- { AS(ibcs2_mount_args), (sy_call_t *)ibcs2_mount, AUE_NULL }, /* 21 = ibcs2_mount */
- { AS(ibcs2_umount_args), (sy_call_t *)ibcs2_umount, AUE_NULL }, /* 22 = ibcs2_umount */
- { SYF_MPSAFE | AS(ibcs2_setuid_args), (sy_call_t *)ibcs2_setuid, AUE_NULL }, /* 23 = ibcs2_setuid */
- { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_NULL }, /* 24 = getuid */
- { SYF_MPSAFE | AS(ibcs2_stime_args), (sy_call_t *)ibcs2_stime, AUE_NULL }, /* 25 = ibcs2_stime */
- { SYF_MPSAFE | AS(ptrace_args), (sy_call_t *)ptrace, AUE_NULL }, /* 26 = ptrace */
+ { AS(ibcs2_mount_args), (sy_call_t *)ibcs2_mount, AUE_MOUNT }, /* 21 = ibcs2_mount */
+ { AS(ibcs2_umount_args), (sy_call_t *)ibcs2_umount, AUE_UMOUNT }, /* 22 = ibcs2_umount */
+ { SYF_MPSAFE | AS(ibcs2_setuid_args), (sy_call_t *)ibcs2_setuid, AUE_SETUID }, /* 23 = ibcs2_setuid */
+ { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_GETUID }, /* 24 = getuid */
+ { SYF_MPSAFE | AS(ibcs2_stime_args), (sy_call_t *)ibcs2_stime, AUE_SETTIMEOFDAY }, /* 25 = ibcs2_stime */
+ { SYF_MPSAFE | AS(ptrace_args), (sy_call_t *)ptrace, AUE_PTRACE }, /* 26 = ptrace */
{ SYF_MPSAFE | AS(ibcs2_alarm_args), (sy_call_t *)ibcs2_alarm, AUE_NULL }, /* 27 = ibcs2_alarm */
- { SYF_MPSAFE | AS(ibcs2_fstat_args), (sy_call_t *)ibcs2_fstat, AUE_NULL }, /* 28 = ibcs2_fstat */
+ { SYF_MPSAFE | AS(ibcs2_fstat_args), (sy_call_t *)ibcs2_fstat, AUE_FSTAT }, /* 28 = ibcs2_fstat */
{ SYF_MPSAFE | 0, (sy_call_t *)ibcs2_pause, AUE_NULL }, /* 29 = ibcs2_pause */
{ SYF_MPSAFE | AS(ibcs2_utime_args), (sy_call_t *)ibcs2_utime, AUE_NULL }, /* 30 = ibcs2_utime */
{ SYF_MPSAFE | AS(ibcs2_stty_args), (sy_call_t *)ibcs2_stty, AUE_NULL }, /* 31 = ibcs2_stty */
{ SYF_MPSAFE | AS(ibcs2_gtty_args), (sy_call_t *)ibcs2_gtty, AUE_NULL }, /* 32 = ibcs2_gtty */
- { SYF_MPSAFE | AS(ibcs2_access_args), (sy_call_t *)ibcs2_access, AUE_NULL }, /* 33 = ibcs2_access */
- { SYF_MPSAFE | AS(ibcs2_nice_args), (sy_call_t *)ibcs2_nice, AUE_NULL }, /* 34 = ibcs2_nice */
- { SYF_MPSAFE | AS(ibcs2_statfs_args), (sy_call_t *)ibcs2_statfs, AUE_NULL }, /* 35 = ibcs2_statfs */
+ { SYF_MPSAFE | AS(ibcs2_access_args), (sy_call_t *)ibcs2_access, AUE_ACCESS }, /* 33 = ibcs2_access */
+ { SYF_MPSAFE | AS(ibcs2_nice_args), (sy_call_t *)ibcs2_nice, AUE_NICE }, /* 34 = ibcs2_nice */
+ { SYF_MPSAFE | AS(ibcs2_statfs_args), (sy_call_t *)ibcs2_statfs, AUE_STATFS }, /* 35 = ibcs2_statfs */
{ SYF_MPSAFE | 0, (sy_call_t *)sync, AUE_NULL }, /* 36 = sync */
- { SYF_MPSAFE | AS(ibcs2_kill_args), (sy_call_t *)ibcs2_kill, AUE_NULL }, /* 37 = ibcs2_kill */
- { SYF_MPSAFE | AS(ibcs2_fstatfs_args), (sy_call_t *)ibcs2_fstatfs, AUE_NULL }, /* 38 = ibcs2_fstatfs */
+ { SYF_MPSAFE | AS(ibcs2_kill_args), (sy_call_t *)ibcs2_kill, AUE_KILL }, /* 37 = ibcs2_kill */
+ { SYF_MPSAFE | AS(ibcs2_fstatfs_args), (sy_call_t *)ibcs2_fstatfs, AUE_FSTATFS }, /* 38 = ibcs2_fstatfs */
{ SYF_MPSAFE | AS(ibcs2_pgrpsys_args), (sy_call_t *)ibcs2_pgrpsys, AUE_NULL }, /* 39 = ibcs2_pgrpsys */
{ SYF_MPSAFE | AS(ibcs2_xenix_args), (sy_call_t *)ibcs2_xenix, AUE_NULL }, /* 40 = ibcs2_xenix */
{ SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_NULL }, /* 41 = dup */
- { SYF_MPSAFE | 0, (sy_call_t *)pipe, AUE_NULL }, /* 42 = pipe */
+ { SYF_MPSAFE | 0, (sy_call_t *)pipe, AUE_PIPE }, /* 42 = pipe */
{ SYF_MPSAFE | AS(ibcs2_times_args), (sy_call_t *)ibcs2_times, AUE_NULL }, /* 43 = ibcs2_times */
- { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil, AUE_NULL }, /* 44 = profil */
+ { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil, AUE_PROFILE }, /* 44 = profil */
{ SYF_MPSAFE | AS(ibcs2_plock_args), (sy_call_t *)ibcs2_plock, AUE_NULL }, /* 45 = ibcs2_plock */
- { SYF_MPSAFE | AS(ibcs2_setgid_args), (sy_call_t *)ibcs2_setgid, AUE_NULL }, /* 46 = ibcs2_setgid */
- { SYF_MPSAFE | 0, (sy_call_t *)getgid, AUE_NULL }, /* 47 = getgid */
+ { SYF_MPSAFE | AS(ibcs2_setgid_args), (sy_call_t *)ibcs2_setgid, AUE_SETGID }, /* 46 = ibcs2_setgid */
+ { SYF_MPSAFE | 0, (sy_call_t *)getgid, AUE_GETGID }, /* 47 = getgid */
{ SYF_MPSAFE | AS(ibcs2_sigsys_args), (sy_call_t *)ibcs2_sigsys, AUE_NULL }, /* 48 = ibcs2_sigsys */
- { AS(ibcs2_msgsys_args), (sy_call_t *)ibcs2_msgsys, AUE_NULL }, /* 49 = ibcs2_msgsys */
+ { AS(ibcs2_msgsys_args), (sy_call_t *)ibcs2_msgsys, AUE_MSGSYS }, /* 49 = ibcs2_msgsys */
{ SYF_MPSAFE | AS(ibcs2_sysi86_args), (sy_call_t *)ibcs2_sysi86, AUE_NULL }, /* 50 = ibcs2_sysi86 */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 51 = ibcs2_acct */
- { AS(ibcs2_shmsys_args), (sy_call_t *)ibcs2_shmsys, AUE_NULL }, /* 52 = ibcs2_shmsys */
- { AS(ibcs2_semsys_args), (sy_call_t *)ibcs2_semsys, AUE_NULL }, /* 53 = ibcs2_semsys */
- { AS(ibcs2_ioctl_args), (sy_call_t *)ibcs2_ioctl, AUE_NULL }, /* 54 = ibcs2_ioctl */
+ { AS(ibcs2_shmsys_args), (sy_call_t *)ibcs2_shmsys, AUE_SHMSYS }, /* 52 = ibcs2_shmsys */
+ { AS(ibcs2_semsys_args), (sy_call_t *)ibcs2_semsys, AUE_SEMSYS }, /* 53 = ibcs2_semsys */
+ { AS(ibcs2_ioctl_args), (sy_call_t *)ibcs2_ioctl, AUE_IOCTL }, /* 54 = ibcs2_ioctl */
{ SYF_MPSAFE | AS(ibcs2_uadmin_args), (sy_call_t *)ibcs2_uadmin, AUE_NULL }, /* 55 = ibcs2_uadmin */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = nosys */
{ SYF_MPSAFE | AS(ibcs2_utssys_args), (sy_call_t *)ibcs2_utssys, AUE_NULL }, /* 57 = ibcs2_utssys */
- { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_NULL }, /* 58 = fsync */
- { SYF_MPSAFE | AS(ibcs2_execve_args), (sy_call_t *)ibcs2_execve, AUE_NULL }, /* 59 = ibcs2_execve */
- { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_NULL }, /* 60 = umask */
- { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_NULL }, /* 61 = chroot */
- { SYF_MPSAFE | AS(ibcs2_fcntl_args), (sy_call_t *)ibcs2_fcntl, AUE_NULL }, /* 62 = ibcs2_fcntl */
+ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 58 = fsync */
+ { SYF_MPSAFE | AS(ibcs2_execve_args), (sy_call_t *)ibcs2_execve, AUE_EXECVE }, /* 59 = ibcs2_execve */
+ { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_UMASK }, /* 60 = umask */
+ { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_CHROOT }, /* 61 = chroot */
+ { SYF_MPSAFE | AS(ibcs2_fcntl_args), (sy_call_t *)ibcs2_fcntl, AUE_FCNTL }, /* 62 = ibcs2_fcntl */
{ SYF_MPSAFE | AS(ibcs2_ulimit_args), (sy_call_t *)ibcs2_ulimit, AUE_NULL }, /* 63 = ibcs2_ulimit */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 64 = reserved for unix/pc */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 65 = reserved for unix/pc */
@@ -97,20 +97,20 @@
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 76 = obsolete rfs_rdebug */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 77 = obsolete rfs_rfstop */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 78 = rfs_rfsys */
- { SYF_MPSAFE | AS(ibcs2_rmdir_args), (sy_call_t *)ibcs2_rmdir, AUE_NULL }, /* 79 = ibcs2_rmdir */
- { SYF_MPSAFE | AS(ibcs2_mkdir_args), (sy_call_t *)ibcs2_mkdir, AUE_NULL }, /* 80 = ibcs2_mkdir */
- { AS(ibcs2_getdents_args), (sy_call_t *)ibcs2_getdents, AUE_NULL }, /* 81 = ibcs2_getdents */
+ { SYF_MPSAFE | AS(ibcs2_rmdir_args), (sy_call_t *)ibcs2_rmdir, AUE_RMDIR }, /* 79 = ibcs2_rmdir */
+ { SYF_MPSAFE | AS(ibcs2_mkdir_args), (sy_call_t *)ibcs2_mkdir, AUE_MKDIR }, /* 80 = ibcs2_mkdir */
+ { AS(ibcs2_getdents_args), (sy_call_t *)ibcs2_getdents, AUE_GETDIRENTRIES }, /* 81 = ibcs2_getdents */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 82 = nosys */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 83 = nosys */
{ SYF_MPSAFE | AS(ibcs2_sysfs_args), (sy_call_t *)ibcs2_sysfs, AUE_NULL }, /* 84 = ibcs2_sysfs */
- { SYF_MPSAFE | AS(ibcs2_getmsg_args), (sy_call_t *)ibcs2_getmsg, AUE_NULL }, /* 85 = ibcs2_getmsg */
- { SYF_MPSAFE | AS(ibcs2_putmsg_args), (sy_call_t *)ibcs2_putmsg, AUE_NULL }, /* 86 = ibcs2_putmsg */
- { AS(ibcs2_poll_args), (sy_call_t *)ibcs2_poll, AUE_NULL }, /* 87 = ibcs2_poll */
+ { SYF_MPSAFE | AS(ibcs2_getmsg_args), (sy_call_t *)ibcs2_getmsg, AUE_GETMSG }, /* 85 = ibcs2_getmsg */
+ { SYF_MPSAFE | AS(ibcs2_putmsg_args), (sy_call_t *)ibcs2_putmsg, AUE_PUTMSG }, /* 86 = ibcs2_putmsg */
+ { AS(ibcs2_poll_args), (sy_call_t *)ibcs2_poll, AUE_POLL }, /* 87 = ibcs2_poll */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 88 = nosys */
{ SYF_MPSAFE | AS(ibcs2_secure_args), (sy_call_t *)ibcs2_secure, AUE_NULL }, /* 89 = ibcs2_secure */
- { SYF_MPSAFE | AS(ibcs2_symlink_args), (sy_call_t *)ibcs2_symlink, AUE_NULL }, /* 90 = ibcs2_symlink */
- { SYF_MPSAFE | AS(ibcs2_lstat_args), (sy_call_t *)ibcs2_lstat, AUE_NULL }, /* 91 = ibcs2_lstat */
- { SYF_MPSAFE | AS(ibcs2_readlink_args), (sy_call_t *)ibcs2_readlink, AUE_NULL }, /* 92 = ibcs2_readlink */
+ { SYF_MPSAFE | AS(ibcs2_symlink_args), (sy_call_t *)ibcs2_symlink, AUE_SYMLINK }, /* 90 = ibcs2_symlink */
+ { SYF_MPSAFE | AS(ibcs2_lstat_args), (sy_call_t *)ibcs2_lstat, AUE_LSTAT }, /* 91 = ibcs2_lstat */
+ { SYF_MPSAFE | AS(ibcs2_readlink_args), (sy_call_t *)ibcs2_readlink, AUE_READLINK }, /* 92 = ibcs2_readlink */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 93 = nosys */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 94 = nosys */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 95 = nosys */
==== //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix.c#3 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_xenix.c,v 1.35 2005/07/07 19:28:55 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_xenix.c,v 1.36 2006/02/06 22:00:52 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -216,7 +216,7 @@
bsd_flags |= X_OK;
CHECKALTEXIST(td, uap->path, &path);
- error = kern_access(td, path, UIO_SYSSPACE, bsd_flags);
+ error = kern_eaccess(td, path, UIO_SYSSPACE, bsd_flags);
free(path, M_TEMP);
return (error);
}
==== //depot/projects/arm/src/sys/i386/ibcs2/syscalls.master#3 (text+ko) ====
@@ -1,10 +1,10 @@
- $FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.21 2005/07/13 20:32:42 jhb Exp $
+ $FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.22 2006/02/06 22:14:50 rwatson Exp $
; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
; System call name/number master file (or rather, slave, from IBCS2).
; Processed to created ibcs2_sysent.c, ibcs2_syscalls.c and ibcs2_syscall.h.
-; Columns: number type nargs name alt{name,tag,rtyp}/comments
+; Columns: number audit type nargs name alt{name,tag,rtyp}/comments
; number system call number, must be in order
; audit the audit event associated with the system call
; A value of AUE_NULL means no auditing, but it also means that
@@ -36,45 +36,45 @@
; #ifdef's, etc. may be included, and are copied to the output files.
0 AUE_NULL MNOPROTO { int nosys(void); } syscall nosys_args int
-1 AUE_NULL MNOPROTO { void sys_exit(int rval); } exit \
+1 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit \
sys_exit_args void
-2 AUE_NULL MNOPROTO { int fork(void); }
+2 AUE_FORK MNOPROTO { int fork(void); }
3 AUE_NULL STD { int ibcs2_read(int fd, char *buf, \
u_int nbytes); }
4 AUE_NULL MNOPROTO { int write(int fd, char *buf, \
u_int nbytes); }
-5 AUE_NULL MSTD { int ibcs2_open(char *path, int flags, \
+5 AUE_OPEN_RWTC MSTD { int ibcs2_open(char *path, int flags, \
int mode); }
-6 AUE_NULL MNOPROTO { int close(int fd); }
-7 AUE_NULL MSTD { int ibcs2_wait(int a1, int a2, int a3); }
-8 AUE_NULL MSTD { int ibcs2_creat(char *path, int mode); }
-9 AUE_NULL MNOPROTO { int link(char *path, char *link); }
-10 AUE_NULL MSTD { int ibcs2_unlink(char *path); }
-11 AUE_NULL MSTD { int ibcs2_execv(char *path, char **argp); }
-12 AUE_NULL MSTD { int ibcs2_chdir(char *path); }
+6 AUE_CLOSE MNOPROTO { int close(int fd); }
+7 AUE_WAIT4 MSTD { int ibcs2_wait(int a1, int a2, int a3); }
+8 AUE_CREAT MSTD { int ibcs2_creat(char *path, int mode); }
+9 AUE_LINK MNOPROTO { int link(char *path, char *link); }
+10 AUE_UNLINK MSTD { int ibcs2_unlink(char *path); }
+11 AUE_EXECVE MSTD { int ibcs2_execv(char *path, char **argp); }
+12 AUE_CHDIR MSTD { int ibcs2_chdir(char *path); }
13 AUE_NULL MSTD { int ibcs2_time(ibcs2_time_t *tp); }
-14 AUE_NULL MSTD { int ibcs2_mknod(char* path, int mode, \
+14 AUE_MKNOD MSTD { int ibcs2_mknod(char* path, int mode, \
int dev); }
-15 AUE_NULL MSTD { int ibcs2_chmod(char *path, int mode); }
-16 AUE_NULL MSTD { int ibcs2_chown(char *path, int uid, \
+15 AUE_CHMOD MSTD { int ibcs2_chmod(char *path, int mode); }
+16 AUE_CHOWN MSTD { int ibcs2_chown(char *path, int uid, \
int gid); }
17 AUE_NULL MNOPROTO { int obreak(caddr_t nsize); }
-18 AUE_NULL MSTD { int ibcs2_stat(char* path, \
+18 AUE_STAT MSTD { int ibcs2_stat(char* path, \
struct ibcs2_stat *st); }
-19 AUE_NULL MSTD { long ibcs2_lseek(int fd, long offset, \
+19 AUE_LSEEK MSTD { long ibcs2_lseek(int fd, long offset, \
int whence); }
20 AUE_NULL MNOPROTO { pid_t getpid(void); }
-21 AUE_NULL STD { int ibcs2_mount(char *special, char *dir, \
+21 AUE_MOUNT STD { int ibcs2_mount(char *special, char *dir, \
int flags, int fstype, char *data, \
int len); }
-22 AUE_NULL STD { int ibcs2_umount(char *name); }
-23 AUE_NULL MSTD { int ibcs2_setuid(int uid); }
-24 AUE_NULL MNOPROTO { uid_t getuid(void); }
-25 AUE_NULL MSTD { int ibcs2_stime(long *timep); }
-26 AUE_NULL MNOPROTO { int ptrace(int req, pid_t pid, \
+22 AUE_UMOUNT STD { int ibcs2_umount(char *name); }
+23 AUE_SETUID MSTD { int ibcs2_setuid(int uid); }
+24 AUE_GETUID MNOPROTO { uid_t getuid(void); }
+25 AUE_SETTIMEOFDAY MSTD { int ibcs2_stime(long *timep); }
+26 AUE_PTRACE MNOPROTO { int ptrace(int req, pid_t pid, \
caddr_t addr, int data); }
27 AUE_NULL MSTD { int ibcs2_alarm(unsigned sec); }
-28 AUE_NULL MSTD { int ibcs2_fstat(int fd, \
+28 AUE_FSTAT MSTD { int ibcs2_fstat(int fd, \
struct ibcs2_stat *st); }
29 AUE_NULL MSTD { int ibcs2_pause(void); }
30 AUE_NULL MSTD { int ibcs2_utime(char *path, \
@@ -83,14 +83,14 @@
struct sgttyb *buf); }
32 AUE_NULL MSTD { int ibcs2_gtty(int fd, \
struct sgttyb *buf); }
-33 AUE_NULL MSTD { int ibcs2_access(char *path, int flags); }
-34 AUE_NULL MSTD { int ibcs2_nice(int incr); }
-35 AUE_NULL MSTD { int ibcs2_statfs(char *path, \
+33 AUE_ACCESS MSTD { int ibcs2_access(char *path, int flags); }
+34 AUE_NICE MSTD { int ibcs2_nice(int incr); }
+35 AUE_STATFS MSTD { int ibcs2_statfs(char *path, \
struct ibcs2_statfs *buf, int len, \
int fstype); }
36 AUE_NULL MNOPROTO { int sync(void); }
-37 AUE_NULL MSTD { int ibcs2_kill(int pid, int signo); }
-38 AUE_NULL MSTD { int ibcs2_fstatfs(int fd, \
+37 AUE_KILL MSTD { int ibcs2_kill(int pid, int signo); }
+38 AUE_FSTATFS MSTD { int ibcs2_fstatfs(int fd, \
struct ibcs2_statfs *buf, int len, \
int fstype); }
39 AUE_NULL MSTD { int ibcs2_pgrpsys(int type, caddr_t dummy, \
@@ -98,35 +98,35 @@
40 AUE_NULL MSTD { int ibcs2_xenix(int a1, int a2, int a3, \
int a4, int a5); }
41 AUE_NULL MNOPROTO { int dup(u_int fd); }
-42 AUE_NULL MNOPROTO { int pipe(void); }
+42 AUE_PIPE MNOPROTO { int pipe(void); }
43 AUE_NULL MSTD { int ibcs2_times(struct tms *tp); }
-44 AUE_NULL MNOPROTO { int profil(caddr_t samples, u_int size, \
+44 AUE_PROFILE MNOPROTO { int profil(caddr_t samples, u_int size, \
u_int offset, u_int scale); }
45 AUE_NULL MSTD { int ibcs2_plock(int cmd); }
-46 AUE_NULL MSTD { int ibcs2_setgid(int gid); }
-47 AUE_NULL MNOPROTO { gid_t getgid(void); }
+46 AUE_SETGID MSTD { int ibcs2_setgid(int gid); }
+47 AUE_GETGID MNOPROTO { gid_t getgid(void); }
48 AUE_NULL MSTD { int ibcs2_sigsys(int sig, ibcs2_sig_t fp); }
-49 AUE_NULL STD { int ibcs2_msgsys(int which, int a2, \
+49 AUE_MSGSYS STD { int ibcs2_msgsys(int which, int a2, \
int a3, int a4, int a5, int a6); }
50 AUE_NULL MSTD { int ibcs2_sysi86(int cmd, int *arg); }
51 AUE_NULL UNIMPL ibcs2_acct
-52 AUE_NULL STD { int ibcs2_shmsys(int which, int a2, \
+52 AUE_SHMSYS STD { int ibcs2_shmsys(int which, int a2, \
int a3, int a4); }
-53 AUE_NULL STD { int ibcs2_semsys(int which, int a2, \
+53 AUE_SEMSYS STD { int ibcs2_semsys(int which, int a2, \
int a3, int a4, int a5); }
-54 AUE_NULL STD { int ibcs2_ioctl(int fd, int cmd, \
+54 AUE_IOCTL STD { int ibcs2_ioctl(int fd, int cmd, \
caddr_t data); }
55 AUE_NULL MSTD { int ibcs2_uadmin(int cmd, int func, \
caddr_t data); }
56 AUE_NULL UNIMPL nosys
57 AUE_NULL MSTD { int ibcs2_utssys(int a1, int a2, \
int flag); }
-58 AUE_NULL MNOPROTO { int fsync(int fd); }
-59 AUE_NULL MSTD { int ibcs2_execve(char *path, char **argp, \
+58 AUE_FSYNC MNOPROTO { int fsync(int fd); }
+59 AUE_EXECVE MSTD { int ibcs2_execve(char *path, char **argp, \
char **envp); }
-60 AUE_NULL MNOPROTO { int umask(int newmask); }
-61 AUE_NULL MNOPROTO { int chroot(char *path); }
-62 AUE_NULL MSTD { int ibcs2_fcntl(int fd, int cmd, \
+60 AUE_UMASK MNOPROTO { int umask(int newmask); }
+61 AUE_CHROOT MNOPROTO { int chroot(char *path); }
+62 AUE_FCNTL MSTD { int ibcs2_fcntl(int fd, int cmd, \
char *arg); }
63 AUE_NULL MSTD { long ibcs2_ulimit(int cmd, int newlimit); }
64 AUE_NULL UNIMPL reserved for unix/pc
@@ -144,30 +144,30 @@
76 AUE_NULL OBSOL rfs_rdebug
77 AUE_NULL OBSOL rfs_rfstop
78 AUE_NULL UNIMPL rfs_rfsys
-79 AUE_NULL MSTD { int ibcs2_rmdir(char *path); }
-80 AUE_NULL MSTD { int ibcs2_mkdir(char *path, int mode); }
-81 AUE_NULL STD { int ibcs2_getdents(int fd, char *buf, \
+79 AUE_RMDIR MSTD { int ibcs2_rmdir(char *path); }
+80 AUE_MKDIR MSTD { int ibcs2_mkdir(char *path, int mode); }
+81 AUE_GETDIRENTRIES STD { int ibcs2_getdents(int fd, char *buf, \
int nbytes); }
82 AUE_NULL UNIMPL nosys
83 AUE_NULL UNIMPL nosys
84 AUE_NULL MSTD { int ibcs2_sysfs(int cmd, caddr_t d1, \
char *buf); }
-85 AUE_NULL MSTD { int ibcs2_getmsg(int fd, \
+85 AUE_GETMSG MSTD { int ibcs2_getmsg(int fd, \
struct ibcs2_stropts *ctl, \
struct ibcs2_stropts *dat, int *flags); }
-86 AUE_NULL MSTD { int ibcs2_putmsg(int fd, \
+86 AUE_PUTMSG MSTD { int ibcs2_putmsg(int fd, \
struct ibcs2_stropts *ctl, \
struct ibcs2_stropts *dat, int flags); }
-87 AUE_NULL STD { int ibcs2_poll(struct ibcs2_poll *fds, \
+87 AUE_POLL STD { int ibcs2_poll(struct ibcs2_poll *fds, \
long nfds, int timeout); }
88 AUE_NULL UNIMPL nosys
89 AUE_NULL MSTD { int ibcs2_secure(int cmd, int a1, int a2, \
int a3, int a4, int a5); }
-90 AUE_NULL MSTD { int ibcs2_symlink(char *path, \
+90 AUE_SYMLINK MSTD { int ibcs2_symlink(char *path, \
char *link); }
-91 AUE_NULL MSTD { int ibcs2_lstat(char *path, \
+91 AUE_LSTAT MSTD { int ibcs2_lstat(char *path, \
struct ibcs2_stat *st); }
-92 AUE_NULL MSTD { int ibcs2_readlink(char *path, char *buf, \
+92 AUE_READLINK MSTD { int ibcs2_readlink(char *path, char *buf, \
int count); }
93 AUE_NULL UNIMPL nosys
94 AUE_NULL UNIMPL nosys
==== //depot/projects/arm/src/sys/i386/linux/linux_machdep.c#4 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/linux/linux_machdep.c,v 1.49 2005/08/01 17:35:48 sobomax Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/linux/linux_machdep.c,v 1.50 2006/02/06 22:06:53 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -122,7 +122,6 @@
free(newpath, M_TEMP);
if (error == 0)
error = kern_execve(td, &eargs, NULL);
- exec_free_args(&eargs);
return (error);
}
==== //depot/projects/arm/src/sys/ia64/ia64/mca.c#2 (text+ko) ====
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/ia64/ia64/mca.c,v 1.10 2005/02/09 04:48:23 marcel Exp $
+ * $FreeBSD: src/sys/ia64/ia64/mca.c,v 1.11 2006/02/07 02:02:14 marcel Exp $
*/
#include <sys/param.h>
@@ -109,7 +109,7 @@
mtx_unlock_spin(&mca_info_block_lock);
totsz = sizeof(struct sysctl_oid) + recsz + 32;
- oidp = malloc(totsz, M_MCA, M_WAITOK|M_ZERO);
+ oidp = malloc(totsz, M_MCA, M_NOWAIT|M_ZERO);
state = (char*)(oidp + 1);
name = state + recsz;
sprintf(name, "%lld", (long long)seqnr);
==== //depot/projects/arm/src/sys/kern/init_main.c#4 (text+ko) ====
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.260 2006/02/02 01:16:31 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.261 2006/02/06 16:03:10 cognet Exp $");
#include "opt_init_path.h"
#include "opt_mac.h"
@@ -90,7 +90,7 @@
static struct session session0;
static struct pgrp pgrp0;
struct proc proc0;
-struct thread thread0;
+struct thread thread0 __aligned(8);
struct ksegrp ksegrp0;
struct vmspace vmspace0;
struct proc *initproc;
==== //depot/projects/arm/src/sys/kern/kern_acct.c#5 (text+ko) ====
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.78 2006/02/03 16:37:55 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.79 2006/02/07 16:04:03 jhb Exp $");
#include "opt_mac.h"
@@ -51,6 +51,7 @@
#include <sys/acct.h>
#include <sys/fcntl.h>
#include <sys/kernel.h>
+#include <sys/kthread.h>
#include <sys/lock.h>
#include <sys/mac.h>
#include <sys/mount.h>
@@ -58,6 +59,7 @@
#include <sys/namei.h>
#include <sys/proc.h>
#include <sys/resourcevar.h>
+#include <sys/sched.h>
#include <sys/sx.h>
#include <sys/sysctl.h>
#include <sys/sysent.h>
@@ -83,12 +85,9 @@
* was provided by UCB with the 4.4BSD-Lite release
*/
static comp_t encode_comp_t(u_long, u_long);
-static void acctwatch(void *);
-
-/*
- * Accounting callout used for periodic scheduling of acctwatch.
- */
-static struct callout acctwatch_callout;
+static void acctwatch(void);
+static void acct_thread(void *);
+static int acct_disable(struct thread *);
/*
* Accounting vnode pointer, saved vnode pointer, and flags for each.
@@ -104,6 +103,14 @@
SX_SYSINIT(acct, &acct_sx, "acct_sx");
/*
+ * State of the accounting kthread.
+ */
+static int acct_state;
+
+#define ACCT_RUNNING 1 /* Accounting kthread is running. */
+#define ACCT_EXITREQ 2 /* Accounting kthread should exit. */
+
+/*
* Values associated with enabling and disabling accounting
*/
static int acctsuspend = 2; /* stop accounting when < 2% free space left */
@@ -188,16 +195,13 @@
* enabled.
*/
acct_suspended = 0;
- if (acct_vp != NULL) {
- callout_stop(&acctwatch_callout);
- error = vn_close(acct_vp, acct_flags, acct_cred, td);
- crfree(acct_cred);
- acct_vp = NULL;
- acct_cred = NULL;
- acct_flags = 0;
- log(LOG_NOTICE, "Accounting disabled\n");
- }
+ if (acct_vp != NULL)
+ error = acct_disable(td);
if (uap->path == NULL) {
+ if (acct_state & ACCT_RUNNING) {
+ acct_state |= ACCT_EXITREQ;
+ wakeup(&acct_state);
+ }
sx_xunlock(&acct_sx);
goto done;
}
@@ -209,16 +213,54 @@
acct_vp = nd.ni_vp;
acct_cred = crhold(td->td_ucred);
acct_flags = flags;
- callout_init(&acctwatch_callout, CALLOUT_MPSAFE);
+ if (acct_state & ACCT_RUNNING)
+ acct_state &= ~ACCT_EXITREQ;
+ else {
+ /*
+ * Try to start up an accounting kthread. We may start more
+ * than one, but if so the extras will commit suicide as
+ * soon as they start up.
+ */
+ error = kthread_create(acct_thread, NULL, NULL, 0, 0,
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list