PERFORCE change 93860 for review
Warner Losh
imp at FreeBSD.org
Thu Mar 23 18:27:43 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=93860
Change 93860 by imp at imp_harmony on 2006/03/23 18:27:15
IFC/Merge @93856
Affected files ...
.. //depot/projects/arm/src/sys/alpha/linux/linux_dummy.c#2 integrate
.. //depot/projects/arm/src/sys/alpha/linux/linux_proto.h#5 integrate
.. //depot/projects/arm/src/sys/alpha/linux/linux_syscall.h#5 integrate
.. //depot/projects/arm/src/sys/alpha/linux/linux_sysent.c#5 integrate
.. //depot/projects/arm/src/sys/alpha/linux/linux_sysvec.c#5 integrate
.. //depot/projects/arm/src/sys/alpha/linux/syscalls.master#6 integrate
.. //depot/projects/arm/src/sys/amd64/amd64/io_apic.c#6 integrate
.. //depot/projects/arm/src/sys/amd64/amd64/local_apic.c#9 integrate
.. //depot/projects/arm/src/sys/amd64/amd64/mp_machdep.c#9 integrate
.. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#6 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux.h#2 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#4 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#4 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#4 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysvec.c#5 integrate
.. //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#4 integrate
.. //depot/projects/arm/src/sys/arm/arm/pmap.c#12 integrate
.. //depot/projects/arm/src/sys/arm/at91/at91.c#13 integrate
.. //depot/projects/arm/src/sys/arm/at91/at91_st.c#7 integrate
.. //depot/projects/arm/src/sys/arm/at91/at91rm92reg.h#17 integrate
.. //depot/projects/arm/src/sys/arm/at91/files.at91#4 integrate
.. //depot/projects/arm/src/sys/arm/at91/if_ate.c#48 integrate
.. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#20 integrate
.. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#15 integrate
.. //depot/projects/arm/src/sys/cam/scsi/scsi_da.c#8 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_file.c#3 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_getcwd.c#5 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_ioctl.c#5 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_ipc.c#3 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_mib.c#3 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_misc.c#5 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_signal.c#3 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_socket.c#6 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_stats.c#7 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_sysctl.c#2 integrate
.. //depot/projects/arm/src/sys/compat/linux/linux_uid16.c#2 integrate
.. //depot/projects/arm/src/sys/conf/files#22 integrate
.. //depot/projects/arm/src/sys/dev/ata/ata-usb.c#2 integrate
.. //depot/projects/arm/src/sys/dev/ata/atapi-fd.c#5 integrate
.. //depot/projects/arm/src/sys/dev/en/midway.c#3 integrate
.. //depot/projects/arm/src/sys/dev/fatm/if_fatm.c#4 integrate
.. //depot/projects/arm/src/sys/dev/hme/if_hme.c#4 integrate
.. //depot/projects/arm/src/sys/dev/hwpmc/hwpmc_mod.c#6 integrate
.. //depot/projects/arm/src/sys/dev/mii/brgphy.c#4 integrate
.. //depot/projects/arm/src/sys/dev/mii/miidevs#3 integrate
.. //depot/projects/arm/src/sys/dev/patm/if_patm_attach.c#4 integrate
.. //depot/projects/arm/src/sys/dev/ral/rt2560.c#2 integrate
.. //depot/projects/arm/src/sys/dev/ral/rt2661.c#2 integrate
.. //depot/projects/arm/src/sys/dev/re/if_re.c#10 integrate
.. //depot/projects/arm/src/sys/dev/sound/isa/ad1816.c#4 integrate
.. //depot/projects/arm/src/sys/dev/sound/pci/atiixp.c#6 integrate
.. //depot/projects/arm/src/sys/dev/sound/pci/ich.c#8 integrate
.. //depot/projects/arm/src/sys/dev/sound/pcm/channel.c#5 integrate
.. //depot/projects/arm/src/sys/dev/sound/pcm/dsp.c#7 integrate
.. //depot/projects/arm/src/sys/dev/sound/pcm/mixer.c#4 integrate
.. //depot/projects/arm/src/sys/dev/sound/pcm/sound.c#5 integrate
.. //depot/projects/arm/src/sys/dev/sound/pcm/sound.h#5 integrate
.. //depot/projects/arm/src/sys/dev/usb/ehci.c#7 integrate
.. //depot/projects/arm/src/sys/dev/usb/hid.c#2 integrate
.. //depot/projects/arm/src/sys/fs/fdescfs/fdesc_vnops.c#5 integrate
.. //depot/projects/arm/src/sys/geom/mirror/g_mirror.c#10 integrate
.. //depot/projects/arm/src/sys/geom/mirror/g_mirror.h#7 integrate
.. //depot/projects/arm/src/sys/geom/mirror/g_mirror_ctl.c#5 integrate
.. //depot/projects/arm/src/sys/geom/raid3/g_raid3.c#12 integrate
.. //depot/projects/arm/src/sys/geom/raid3/g_raid3.h#7 integrate
.. //depot/projects/arm/src/sys/geom/raid3/g_raid3_ctl.c#5 integrate
.. //depot/projects/arm/src/sys/i386/i386/io_apic.c#5 integrate
.. //depot/projects/arm/src/sys/i386/i386/local_apic.c#8 integrate
.. //depot/projects/arm/src/sys/i386/i386/pmap.c#6 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux.h#3 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_dummy.c#2 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_proto.h#5 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_syscall.h#5 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_sysent.c#5 integrate
.. //depot/projects/arm/src/sys/i386/linux/linux_sysvec.c#5 integrate
.. //depot/projects/arm/src/sys/i386/linux/syscalls.master#5 integrate
.. //depot/projects/arm/src/sys/kern/init_sysent.c#10 integrate
.. //depot/projects/arm/src/sys/kern/kern_descrip.c#8 integrate
.. //depot/projects/arm/src/sys/kern/kern_mac.c#3 integrate
.. //depot/projects/arm/src/sys/kern/kern_thread.c#9 integrate
.. //depot/projects/arm/src/sys/kern/syscalls.c#10 integrate
.. //depot/projects/arm/src/sys/kern/syscalls.master#11 integrate
.. //depot/projects/arm/src/sys/kern/vfs_aio.c#6 integrate
.. //depot/projects/arm/src/sys/kern/vfs_bio.c#8 integrate
.. //depot/projects/arm/src/sys/kern/vfs_cluster.c#4 integrate
.. //depot/projects/arm/src/sys/kern/vfs_subr.c#14 integrate
.. //depot/projects/arm/src/sys/kern/vfs_syscalls.c#12 integrate
.. //depot/projects/arm/src/sys/kern/vfs_vnops.c#7 integrate
.. //depot/projects/arm/src/sys/modules/Makefile#16 integrate
.. //depot/projects/arm/src/sys/modules/linux/Makefile#4 integrate
.. //depot/projects/arm/src/sys/net/if.c#8 integrate
.. //depot/projects/arm/src/sys/netinet/in_pcb.h#3 integrate
.. //depot/projects/arm/src/sys/netinet/ip_carp.c#5 integrate
.. //depot/projects/arm/src/sys/netinet/ip_carp.h#2 integrate
.. //depot/projects/arm/src/sys/netinet/ip_icmp.c#5 integrate
.. //depot/projects/arm/src/sys/netinet6/in6.h#3 integrate
.. //depot/projects/arm/src/sys/netinet6/in6_pcb.c#3 integrate
.. //depot/projects/arm/src/sys/netinet6/nd6_rtr.c#3 integrate
.. //depot/projects/arm/src/sys/netipsec/xform_esp.c#3 integrate
.. //depot/projects/arm/src/sys/nfsclient/nfs_diskless.c#4 integrate
.. //depot/projects/arm/src/sys/pci/if_rlreg.h#3 integrate
.. //depot/projects/arm/src/sys/security/audit/audit.c#7 integrate
.. //depot/projects/arm/src/sys/security/audit/audit.h#3 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_arg.c#2 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_bsm.c#3 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_bsm_klib.c#2 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_ioctl.h#1 branch
.. //depot/projects/arm/src/sys/security/audit/audit_pipe.c#3 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_private.h#4 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_syscalls.c#2 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_trigger.c#2 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_worker.c#1 branch
.. //depot/projects/arm/src/sys/sys/aio.h#3 integrate
.. //depot/projects/arm/src/sys/sys/syscall.h#10 integrate
.. //depot/projects/arm/src/sys/sys/syscall.mk#10 integrate
.. //depot/projects/arm/src/sys/sys/sysproto.h#10 integrate
.. //depot/projects/arm/src/sys/ufs/ffs/ffs_snapshot.c#10 integrate
.. //depot/projects/arm/src/sys/ufs/ffs/ffs_vfsops.c#10 integrate
.. //depot/projects/arm/src/sys/ufs/ufs/ufs_vnops.c#5 integrate
Differences ...
==== //depot/projects/arm/src/sys/alpha/linux/linux_dummy.c#2 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_dummy.c,v 1.38 2004/03/29 02:19:43 bms Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_dummy.c,v 1.39 2006/03/21 21:08:02 netchild Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -72,11 +72,8 @@
DUMMY(pciconfig_read);
DUMMY(pciconfig_write);
DUMMY(pivot_root);
-DUMMY(recvmsg);
-DUMMY(sendmsg);
DUMMY(sethae);
DUMMY(sigaltstack);
DUMMY(sigpending);
-DUMMY(socketpair);
DUMMY(utimes);
==== //depot/projects/arm/src/sys/alpha/linux/linux_proto.h#5 (text+ko) ====
@@ -2,8 +2,8 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.24 2006/02/06 01:16:00 rwatson Exp $
- * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.66 2006/02/06 01:13:47 rwatson Exp
+ * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.27 2006/03/20 19:48:02 netchild Exp $
+ * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.69 2006/03/20 19:46:56 netchild Exp
*/
#ifndef _LINUX_SYSPROTO_H_
@@ -170,6 +170,10 @@
struct linux_gethostname_args {
register_t dummy;
};
+struct linux_sethostname_args {
+ char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)];
+ char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)];
+};
struct linux_getdtablesize_args {
register_t dummy;
};
@@ -199,10 +203,22 @@
char name_l_[PADL_(struct l_sockaddr *)]; struct l_sockaddr * name; char name_r_[PADR_(struct l_sockaddr *)];
char namelen_l_[PADL_(l_int)]; l_int namelen; char namelen_r_[PADR_(l_int)];
};
+struct linux_accept_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_accept_args *)]; struct linux_accept_args * args; char args_r_[PADR_(struct linux_accept_args *)];
+};
struct linux_getpriority_args {
char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)];
};
+struct linux_send_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_send_args *)]; struct linux_send_args * args; char args_r_[PADR_(struct linux_send_args *)];
+};
+struct linux_recv_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_recv_args *)]; struct linux_recv_args * args; char args_r_[PADR_(struct linux_recv_args *)];
+};
struct osf1_sigreturn_args {
char sigcntxp_l_[PADL_(struct osigcontext *)]; struct osigcontext * sigcntxp; char sigcntxp_r_[PADR_(struct osigcontext *)];
};
@@ -223,6 +239,10 @@
char who_l_[PADL_(long)]; long who; char who_r_[PADR_(long)];
char rusage_l_[PADL_(void *)]; void * rusage; char rusage_r_[PADR_(void *)];
};
+struct linux_recvfrom_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_recvfrom_args *)]; struct linux_recvfrom_args * args; char args_r_[PADR_(struct linux_recvfrom_args *)];
+};
struct linux_rename_args {
char from_l_[PADL_(char *)]; char * from; char from_r_[PADR_(char *)];
char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)];
@@ -231,6 +251,10 @@
char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
char length_l_[PADL_(l_ulong)]; l_ulong length; char length_r_[PADR_(l_ulong)];
};
+struct linux_ftruncate_args {
+ char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)];
+};
struct osf1_sendto_args {
char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)];
@@ -249,6 +273,10 @@
struct linux_rmdir_args {
char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
};
+struct linux_getpeername_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_getpeername_args *)]; struct linux_getpeername_args * args; char args_r_[PADR_(struct linux_getpeername_args *)];
+};
struct linux_getrlimit_args {
char resource_l_[PADL_(l_uint)]; l_uint resource; char resource_r_[PADR_(l_uint)];
char rlim_l_[PADL_(struct l_rlimit *)]; struct l_rlimit * rlim; char rlim_r_[PADR_(struct l_rlimit *)];
@@ -260,6 +288,10 @@
struct linux_quotactl_args {
register_t dummy;
};
+struct linux_getsockname_args {
+ char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];
+ char args_l_[PADL_(struct linux_getsockname_args *)]; struct linux_getsockname_args * args; char args_r_[PADR_(struct linux_getsockname_args *)];
+};
struct osf1_sigaction_args {
char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
char nsa_l_[PADL_(struct osf1_sigaction *)]; struct osf1_sigaction * nsa; char nsa_r_[PADR_(struct osf1_sigaction *)];
@@ -620,28 +652,36 @@
int linux_getgroups(struct thread *, struct linux_getgroups_args *);
int osf1_setitimer(struct thread *, struct osf1_setitimer_args *);
int linux_gethostname(struct thread *, struct linux_gethostname_args *);
+int linux_sethostname(struct thread *, struct linux_sethostname_args *);
int linux_getdtablesize(struct thread *, struct linux_getdtablesize_args *);
int linux_newfstat(struct thread *, struct linux_newfstat_args *);
int linux_fcntl(struct thread *, struct linux_fcntl_args *);
int osf1_select(struct thread *, struct osf1_select_args *);
int osf1_socket(struct thread *, struct osf1_socket_args *);
int linux_connect(struct thread *, struct linux_connect_args *);
+int linux_accept(struct thread *, struct linux_accept_args *);
int linux_getpriority(struct thread *, struct linux_getpriority_args *);
+int linux_send(struct thread *, struct linux_send_args *);
+int linux_recv(struct thread *, struct linux_recv_args *);
int osf1_sigreturn(struct thread *, struct osf1_sigreturn_args *);
int osf1_sigsuspend(struct thread *, struct osf1_sigsuspend_args *);
int linux_recvmsg(struct thread *, struct linux_recvmsg_args *);
int linux_sendmsg(struct thread *, struct linux_sendmsg_args *);
int osf1_gettimeofday(struct thread *, struct osf1_gettimeofday_args *);
int osf1_getrusage(struct thread *, struct osf1_getrusage_args *);
+int linux_recvfrom(struct thread *, struct linux_recvfrom_args *);
int linux_rename(struct thread *, struct linux_rename_args *);
int linux_truncate(struct thread *, struct linux_truncate_args *);
+int linux_ftruncate(struct thread *, struct linux_ftruncate_args *);
int osf1_sendto(struct thread *, struct osf1_sendto_args *);
int linux_socketpair(struct thread *, struct linux_socketpair_args *);
int linux_mkdir(struct thread *, struct linux_mkdir_args *);
int linux_rmdir(struct thread *, struct linux_rmdir_args *);
+int linux_getpeername(struct thread *, struct linux_getpeername_args *);
int linux_getrlimit(struct thread *, struct linux_getrlimit_args *);
int linux_setrlimit(struct thread *, struct linux_setrlimit_args *);
int linux_quotactl(struct thread *, struct linux_quotactl_args *);
+int linux_getsockname(struct thread *, struct linux_getsockname_args *);
int osf1_sigaction(struct thread *, struct osf1_sigaction_args *);
int linux_msgctl(struct thread *, struct linux_msgctl_args *);
int linux_msgget(struct thread *, struct linux_msgget_args *);
==== //depot/projects/arm/src/sys/alpha/linux/linux_syscall.h#5 (text+ko) ====
@@ -2,8 +2,8 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.22 2006/02/06 01:16:00 rwatson Exp $
- * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.66 2006/02/06 01:13:47 rwatson Exp
+ * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.25 2006/03/20 19:48:02 netchild Exp $
+ * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.69 2006/03/20 19:46:56 netchild Exp
*/
#define LINUX_SYS_exit 1
@@ -57,7 +57,7 @@
#define LINUX_SYS_linux_getgroups 80
#define LINUX_SYS_osf1_setitimer 83
#define LINUX_SYS_linux_gethostname 87
-#define LINUX_SYS_osethostname 88
+#define LINUX_SYS_linux_sethostname 88
#define LINUX_SYS_linux_getdtablesize 89
#define LINUX_SYS_dup2 90
#define LINUX_SYS_linux_newfstat 91
@@ -68,10 +68,10 @@
#define LINUX_SYS_setpriority 96
#define LINUX_SYS_osf1_socket 97
#define LINUX_SYS_linux_connect 98
-#define LINUX_SYS_accept 99
+#define LINUX_SYS_linux_accept 99
#define LINUX_SYS_linux_getpriority 100
-#define LINUX_SYS_osend 101
-#define LINUX_SYS_orecv 102
+#define LINUX_SYS_linux_send 101
+#define LINUX_SYS_linux_recv 102
#define LINUX_SYS_osf1_sigreturn 103
#define LINUX_SYS_bind 104
#define LINUX_SYS_setsockopt 105
@@ -86,12 +86,12 @@
#define LINUX_SYS_writev 121
#define LINUX_SYS_fchown 123
#define LINUX_SYS_fchmod 124
-#define LINUX_SYS_recvfrom 125
+#define LINUX_SYS_linux_recvfrom 125
#define LINUX_SYS_setreuid 126
#define LINUX_SYS_setregid 127
#define LINUX_SYS_linux_rename 128
#define LINUX_SYS_linux_truncate 129
-#define LINUX_SYS_oftruncate 130
+#define LINUX_SYS_linux_ftruncate 130
#define LINUX_SYS_flock 131
#define LINUX_SYS_setgid 132
#define LINUX_SYS_osf1_sendto 133
@@ -100,12 +100,12 @@
#define LINUX_SYS_linux_mkdir 136
#define LINUX_SYS_linux_rmdir 137
#define LINUX_SYS_utimes 138
-#define LINUX_SYS_ogetpeername 141
+#define LINUX_SYS_linux_getpeername 141
#define LINUX_SYS_linux_getrlimit 144
#define LINUX_SYS_linux_setrlimit 145
#define LINUX_SYS_setsid 147
#define LINUX_SYS_linux_quotactl 148
-#define LINUX_SYS_getsockname 150
+#define LINUX_SYS_linux_getsockname 150
#define LINUX_SYS_osf1_sigaction 156
#define LINUX_SYS_setdomainname 166
#define LINUX_SYS_linux_msgctl 200
==== //depot/projects/arm/src/sys/alpha/linux/linux_sysent.c#5 (text+ko) ====
@@ -2,12 +2,11 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.22 2006/02/06 01:16:00 rwatson Exp $
- * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.66 2006/02/06 01:13:47 rwatson Exp
+ * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.25 2006/03/20 19:48:02 netchild Exp $
+ * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.69 2006/03/20 19:46:56 netchild Exp
*/
#include <bsm/audit_kevents.h>
-#include "opt_compat.h"
#include <sys/param.h>
#include <sys/sysent.h>
#include <sys/sysproto.h>
@@ -108,7 +107,7 @@
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 85 = */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = osf_getitimer */
{ SYF_MPSAFE | 0, (sy_call_t *)linux_gethostname, AUE_SYSCTL }, /* 87 = linux_gethostname */
- { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname, AUE_SYSCTL }, /* 88 = osethostname */
+ { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_SYSCTL }, /* 88 = linux_sethostname */
{ SYF_MPSAFE | 0, (sy_call_t *)linux_getdtablesize, AUE_GETDTABLESIZE }, /* 89 = linux_getdtablesize */
{ SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_DUP2 }, /* 90 = dup2 */
{ SYF_MPSAFE | AS(linux_newfstat_args), (sy_call_t *)linux_newfstat, AUE_FSTAT }, /* 91 = linux_newfstat */
@@ -119,10 +118,10 @@
{ SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority, AUE_SETPRIORITY }, /* 96 = setpriority */
{ SYF_MPSAFE | AS(osf1_socket_args), (sy_call_t *)osf1_socket, AUE_SOCKET }, /* 97 = osf1_socket */
{ SYF_MPSAFE | AS(linux_connect_args), (sy_call_t *)linux_connect, AUE_CONNECT }, /* 98 = linux_connect */
- { SYF_MPSAFE | AS(accept_args), (sy_call_t *)oaccept, AUE_ACCEPT }, /* 99 = accept */
+ { SYF_MPSAFE | AS(linux_accept_args), (sy_call_t *)linux_accept, AUE_ACCEPT }, /* 99 = linux_accept */
{ SYF_MPSAFE | AS(linux_getpriority_args), (sy_call_t *)linux_getpriority, AUE_GETPRIORITY }, /* 100 = linux_getpriority */
- { SYF_MPSAFE | AS(osend_args), (sy_call_t *)osend, AUE_SEND }, /* 101 = osend */
- { SYF_MPSAFE | AS(orecv_args), (sy_call_t *)orecv, AUE_RECV }, /* 102 = orecv */
+ { SYF_MPSAFE | AS(linux_send_args), (sy_call_t *)linux_send, AUE_SEND }, /* 101 = linux_send */
+ { SYF_MPSAFE | AS(linux_recv_args), (sy_call_t *)linux_recv, AUE_RECV }, /* 102 = linux_recv */
{ SYF_MPSAFE | AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn, AUE_NULL }, /* 103 = osf1_sigreturn */
{ SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind, AUE_BIND }, /* 104 = bind */
{ SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt, AUE_SETSOCKOPT }, /* 105 = setsockopt */
@@ -145,12 +144,12 @@
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 122 = osf_settimeofday */
{ AS(fchown_args), (sy_call_t *)fchown, AUE_FCHOWN }, /* 123 = fchown */
{ AS(fchmod_args), (sy_call_t *)fchmod, AUE_FCHMOD }, /* 124 = fchmod */
- { AS(recvfrom_args), (sy_call_t *)orecvfrom, AUE_RECVFROM }, /* 125 = recvfrom */
+ { SYF_MPSAFE | AS(linux_recvfrom_args), (sy_call_t *)linux_recvfrom, AUE_RECVFROM }, /* 125 = linux_recvfrom */
{ SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid, AUE_SETREUID }, /* 126 = setreuid */
{ SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid, AUE_SETREGID }, /* 127 = setregid */
{ SYF_MPSAFE | AS(linux_rename_args), (sy_call_t *)linux_rename, AUE_RENAME }, /* 128 = linux_rename */
{ SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 129 = linux_truncate */
- { SYF_MPSAFE | AS(oftruncate_args), (sy_call_t *)oftruncate, AUE_FTRUNCATE }, /* 130 = oftruncate */
+ { SYF_MPSAFE | AS(linux_ftruncate_args), (sy_call_t *)linux_ftruncate, AUE_FTRUNCATE }, /* 130 = linux_ftruncate */
{ SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 131 = flock */
{ SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid, AUE_SETGID }, /* 132 = setgid */
{ SYF_MPSAFE | AS(osf1_sendto_args), (sy_call_t *)osf1_sendto, AUE_SENDTO }, /* 133 = osf1_sendto */
@@ -161,7 +160,7 @@
{ SYF_MPSAFE | AS(utimes_args), (sy_call_t *)utimes, AUE_UTIMES }, /* 138 = utimes */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 139 = */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 140 = */
- { SYF_MPSAFE | AS(ogetpeername_args), (sy_call_t *)ogetpeername, AUE_GETPEERNAME }, /* 141 = ogetpeername */
+ { SYF_MPSAFE | AS(linux_getpeername_args), (sy_call_t *)linux_getpeername, AUE_GETPEERNAME }, /* 141 = linux_getpeername */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 142 = */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 143 = */
{ SYF_MPSAFE | AS(linux_getrlimit_args), (sy_call_t *)linux_getrlimit, AUE_GETRLIMIT }, /* 144 = linux_getrlimit */
@@ -170,7 +169,7 @@
{ SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_SETSID }, /* 147 = setsid */
{ SYF_MPSAFE | 0, (sy_call_t *)linux_quotactl, AUE_QUOTACTL }, /* 148 = linux_quotactl */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 149 = */
- { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)ogetsockname, AUE_GETSOCKNAME }, /* 150 = getsockname */
+ { SYF_MPSAFE | AS(linux_getsockname_args), (sy_call_t *)linux_getsockname, AUE_GETSOCKNAME }, /* 150 = linux_getsockname */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 151 = */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 152 = */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 153 = */
==== //depot/projects/arm/src/sys/alpha/linux/linux_sysvec.c#5 (text+ko) ====
@@ -27,14 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_sysvec.c,v 1.98 2005/12/26 21:23:56 sobomax Exp $");
-
-/* XXX we use functions that might not exist. */
-#include "opt_compat.h"
-
-#ifndef COMPAT_43
-#error "Unable to compile Linux-emulator due to missing COMPAT_43 option!"
-#endif
+__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_sysvec.c,v 1.99 2006/03/18 18:24:38 netchild Exp $");
#include <sys/param.h>
#include <sys/systm.h>
==== //depot/projects/arm/src/sys/alpha/linux/syscalls.master#6 (text+ko) ====
@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.66 2006/02/06 01:13:47 rwatson Exp $
+ $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.69 2006/03/20 19:46:56 netchild Exp $
; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
; System call name/number master file (or rather, slave, from LINUX).
@@ -11,8 +11,7 @@
; there is no audit event for the call at this time. For the
; case where the event exists, but we don't want auditing, the
; event should be #defined to AUE_NULL in audit_kevents.h.
-; type one of STD, OBSOL, UNIMPL, COMPAT, CPT_NOA, LIBCOMPAT,
-; NODEF, NOARGS, NOPROTO
+; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, NOPROTO
; name psuedo-prototype of syscall routine
; If one of the following alts is different, then all appear:
; altname name of system call if different
@@ -22,9 +21,6 @@
; types:
; STD always included
-; COMPAT included on COMPAT #ifdef
-; CPT_NOA combines COMPAT with NOARGS
-; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
; NOARGS same as STD except do not create structure in sys/sysproto.h
; NODEF ??
; NOPROTO same as STD except do not create structure or function in
@@ -32,7 +28,6 @@
; OBSOL obsolete, not included in system, only specifies name
; UNIMPL not implemented, placeholder only
-#include "opt_compat.h"
#include <sys/param.h>
#include <sys/sysent.h>
#include <sys/sysproto.h>
@@ -158,9 +153,7 @@
85 AUE_NULL UNIMPL
86 AUE_GETITIMER UNIMPL osf_getitimer
87 AUE_SYSCTL MSTD { int linux_gethostname(void); }
-88 AUE_SYSCTL MNOPROTO { int osethostname(char *hostname, \
- u_int len); } osethostname \
- sethostname_args int
+88 AUE_SYSCTL MSTD { int linux_sethostname(char *hostname, u_int len); }
89 AUE_GETDTABLESIZE MSTD { int linux_getdtablesize(void); }
90 AUE_DUP2 MNOPROTO { int dup2(u_int from, u_int to); }
91 AUE_FSTAT MSTD { int linux_newfstat(l_uint fd, \
@@ -179,13 +172,13 @@
int protocol); }
98 AUE_CONNECT MSTD { int linux_connect(l_int s, \
struct l_sockaddr *name, l_int namelen); }
-99 AUE_ACCEPT MNOPROTO { int oaccept(int s, caddr_t name, \
- int *anamelen); } accept accept_args int
+99 AUE_ACCEPT MSTD { int linux_accept(l_int s, \
+ struct linux_accept_args *args); }
100 AUE_GETPRIORITY MSTD { int linux_getpriority(int which, int who); }
-101 AUE_SEND MNOPROTO { int osend(int s, caddr_t buf, int len, \
- int flags); }
-102 AUE_RECV MNOPROTO { int orecv(int s, caddr_t buf, int len, \
- int flags); }
+101 AUE_SEND MSTD { int linux_send(l_int s, \
+ struct linux_send_args *args); }
+102 AUE_RECV MSTD { int linux_recv(l_int s, \
+ struct linux_recv_args *args); }
103 AUE_NULL MSTD { int osf1_sigreturn( \
struct osigcontext *sigcntxp); }
104 AUE_BIND MNOPROTO { int bind(int s, caddr_t name, \
@@ -217,16 +210,14 @@
122 AUE_SETTIMEOFDAY UNIMPL osf_settimeofday
123 AUE_FCHOWN NOPROTO { int fchown(int fd, int uid, int gid); }
124 AUE_FCHMOD NOPROTO { int fchmod(int fd, int mode); }
-125 AUE_RECVFROM NOPROTO { int orecvfrom(int s, caddr_t buf, \
- size_t len, int flags, caddr_t from, \
- int *fromlenaddr); } recvfrom \
- recvfrom_args int
+125 AUE_RECVFROM MSTD { int linux_recvfrom(l_int s, \
+ struct linux_recvfrom_args *args); }
126 AUE_SETREUID MNOPROTO { int setreuid(int ruid, int euid); }
127 AUE_SETREGID MNOPROTO { int setregid(int rgid, int egid); }
128 AUE_RENAME MSTD { int linux_rename(char *from, char *to); }
129 AUE_TRUNCATE MSTD { int linux_truncate(char *path, \
l_ulong length); }
-130 AUE_FTRUNCATE MNOPROTO { int oftruncate(int fd, long length); }
+130 AUE_FTRUNCATE MSTD { int linux_ftruncate(int fd, long length); }
131 AUE_FLOCK MNOPROTO { int flock(int fd, int how); }
132 AUE_SETGID MNOPROTO { int setgid(gid_t gid); }
133 AUE_SENDTO MSTD { int osf1_sendto(int s, caddr_t buf, \
@@ -240,8 +231,8 @@
struct timeval *tptr); }
139 AUE_NULL UNIMPL
140 AUE_NULL UNIMPL
-141 AUE_GETPEERNAME MNOPROTO { int ogetpeername(int fdes, caddr_t asa, \
- int *alen); }
+141 AUE_GETPEERNAME MSTD { int linux_getpeername(l_int s, \
+ struct linux_getpeername_args *args); }
142 AUE_NULL UNIMPL
143 AUE_NULL UNIMPL
144 AUE_GETRLIMIT MSTD { int linux_getrlimit(l_uint resource, \
@@ -252,9 +243,8 @@
147 AUE_SETSID MNOPROTO { int setsid(void); }
148 AUE_QUOTACTL MSTD { int linux_quotactl(void); }
149 AUE_NULL UNIMPL
-150 AUE_GETSOCKNAME MNOPROTO { int ogetsockname(int fdec, caddr_t asa, \
- int *alen);} getsockname \
- getsockname_args int
+150 AUE_GETSOCKNAME MSTD { int linux_getsockname(l_int s, \
+ struct linux_getsockname_args *args);}
151 AUE_NULL UNIMPL
152 AUE_NULL UNIMPL
153 AUE_NULL UNIMPL
==== //depot/projects/arm/src/sys/amd64/amd64/io_apic.c#6 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.22 2006/03/13 23:55:31 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.23 2006/03/20 19:39:07 jhb Exp $");
#include "opt_atpic.h"
#include "opt_isa.h"
@@ -447,7 +447,7 @@
uint32_t value;
/* Map the register window so we can access the device. */
- apic = (ioapic_t *)pmap_mapdev(addr, IOAPIC_MEM_REGION);
+ apic = pmap_mapdev(addr, IOAPIC_MEM_REGION);
mtx_lock_spin(&icu_lock);
value = ioapic_read(apic, IOAPIC_VER);
mtx_unlock_spin(&icu_lock);
==== //depot/projects/arm/src/sys/amd64/amd64/local_apic.c#9 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.24 2006/02/28 22:24:54 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.25 2006/03/20 19:39:07 jhb Exp $");
#include "opt_hwpmc_hooks.h"
@@ -208,7 +208,7 @@
/* Map the local APIC and setup the spurious interrupt handler. */
KASSERT(trunc_page(addr) == addr,
("local APIC not aligned on a page boundary"));
- lapic = (lapic_t *)pmap_mapdev(addr, sizeof(lapic_t));
+ lapic = pmap_mapdev(addr, sizeof(lapic_t));
setidt(APIC_SPURIOUS_INT, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0);
/* Perform basic initialization of the BSP's local APIC. */
==== //depot/projects/arm/src/sys/amd64/amd64/mp_machdep.c#9 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.270 2006/03/09 16:38:52 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.271 2006/03/18 19:32:46 ups Exp $");
#include "opt_cpu.h"
#include "opt_kstack_pages.h"
@@ -561,6 +561,13 @@
smp_active = 1; /* historic */
}
+ /*
+ * Enable global pages TLB extension
+ * This also implicitly flushes the TLB
+ */
+
+ load_cr4(rcr4() | CR4_PGE);
+
mtx_unlock_spin(&ap_boot_mtx);
/* wait until all the AP's are up */
==== //depot/projects/arm/src/sys/amd64/amd64/pmap.c#6 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.537 2006/03/13 08:13:37 ps Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.539 2006/03/21 18:07:41 alc Exp $");
/*
* Manages physical address maps.
@@ -1731,7 +1731,13 @@
sva += PAGE_SIZE) {
if (*pte == 0)
continue;
- anyvalid = 1;
+
+ /*
+ * The TLB entry for a PG_G mapping is invalidated
+ * by pmap_remove_pte().
+ */
+ if ((*pte & PG_G) == 0)
+ anyvalid = 1;
if (pmap_remove_pte(pmap, pte, sva, ptpaddr))
break;
}
@@ -2988,7 +2994,6 @@
void
pmap_activate(struct thread *td)
{
- struct proc *p = td->td_proc;
pmap_t pmap, oldpmap;
u_int64_t cr3;
@@ -3005,18 +3010,7 @@
pmap->pm_active |= PCPU_GET(cpumask);
#endif
cr3 = vtophys(pmap->pm_pml4);
- /* XXXKSE this is wrong.
- * pmap_activate is for the current thread on the current cpu
- */
- if (p->p_flag & P_SA) {
- /* Make sure all other cr3 entries are updated. */
- /* what if they are running? XXXKSE (maybe abort them) */
- FOREACH_THREAD_IN_PROC(p, td) {
- td->td_pcb->pcb_cr3 = cr3;
- }
- } else {
- td->td_pcb->pcb_cr3 = cr3;
- }
+ td->td_pcb->pcb_cr3 = cr3;
load_cr3(cr3);
critical_exit();
}
==== //depot/projects/arm/src/sys/amd64/linux32/linux.h#2 (text+ko) ====
@@ -27,7 +27,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/amd64/linux32/linux.h,v 1.1 2004/08/16 07:55:06 tjr Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.2 2006/03/18 18:24:38 netchild Exp $
*/
#ifndef _AMD64_LINUX_LINUX_H_
@@ -197,6 +197,24 @@
l_ulong __unused5;
} __packed;
+struct l_stat {
+ l_ushort st_dev;
+ l_ulong st_ino;
+ l_ushort st_mode;
+ l_ushort st_nlink;
+ l_ushort st_uid;
+ l_ushort st_gid;
+ l_ushort st_rdev;
+ l_long st_size;
+ struct l_timespec st_atimespec;
+ struct l_timespec st_mtimespec;
+ struct l_timespec st_ctimespec;
+ l_long st_blksize;
+ l_long st_blocks;
+ l_ulong st_flags;
+ l_ulong st_gen;
+};
+
struct l_stat64 {
l_ushort st_dev;
u_char __pad0[10];
==== //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#4 (text+ko) ====
@@ -2,8 +2,8 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.6 2005/07/13 20:35:07 jhb Exp $
- * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.5 2005/07/13 20:32:42 jhb Exp
+ * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.10 2006/03/20 18:54:29 netchild Exp $
+ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.8 2006/03/20 18:53:26 netchild Exp
*/
#ifndef _LINUX_SYSPROTO_H_
@@ -82,6 +82,10 @@
char uid_l_[PADL_(l_uid16_t)]; l_uid16_t uid; char uid_r_[PADR_(l_uid16_t)];
char gid_l_[PADL_(l_gid16_t)]; l_gid16_t gid; char gid_r_[PADR_(l_gid16_t)];
};
+struct linux_stat_args {
+ char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
+ char up_l_[PADL_(struct linux_stat *)]; struct linux_stat * up; char up_r_[PADR_(struct linux_stat *)];
+};
struct linux_lseek_args {
char fdes_l_[PADL_(l_uint)]; l_uint fdes; char fdes_r_[PADR_(l_uint)];
char off_l_[PADL_(l_off_t)]; l_off_t off; char off_r_[PADR_(l_off_t)];
@@ -220,6 +224,10 @@
struct linux_sigpending_args {
char mask_l_[PADL_(l_osigset_t *)]; l_osigset_t * mask; char mask_r_[PADR_(l_osigset_t *)];
};
+struct linux_sethostname_args {
+ char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)];
+ char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)];
+};
struct linux_setrlimit_args {
char resource_l_[PADL_(l_uint)]; l_uint resource; char resource_r_[PADR_(l_uint)];
char rlim_l_[PADL_(struct l_rlimit *)]; struct l_rlimit * rlim; char rlim_r_[PADR_(struct l_rlimit *)];
@@ -255,6 +263,10 @@
char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)];
};
+struct linux_lstat_args {
+ char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
+ char up_l_[PADL_(struct linux_lstat *)]; struct linux_lstat * up; char up_r_[PADR_(struct linux_lstat *)];
+};
struct linux_readlink_args {
char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)];
char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
@@ -278,6 +290,10 @@
char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
char length_l_[PADL_(l_ulong)]; l_ulong length; char length_r_[PADR_(l_ulong)];
};
+struct linux_ftruncate_args {
+ char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)];
+};
struct linux_getpriority_args {
char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)];
@@ -703,6 +719,7 @@
int linux_mknod(struct thread *, struct linux_mknod_args *);
int linux_chmod(struct thread *, struct linux_chmod_args *);
int linux_lchown16(struct thread *, struct linux_lchown16_args *);
+int linux_stat(struct thread *, struct linux_stat_args *);
int linux_lseek(struct thread *, struct linux_lseek_args *);
int linux_getpid(struct thread *, struct linux_getpid_args *);
int linux_mount(struct thread *, struct linux_mount_args *);
@@ -740,6 +757,7 @@
int linux_setregid16(struct thread *, struct linux_setregid16_args *);
int linux_sigsuspend(struct thread *, struct linux_sigsuspend_args *);
int linux_sigpending(struct thread *, struct linux_sigpending_args *);
+int linux_sethostname(struct thread *, struct linux_sethostname_args *);
int linux_setrlimit(struct thread *, struct linux_setrlimit_args *);
int linux_old_getrlimit(struct thread *, struct linux_old_getrlimit_args *);
int linux_getrusage(struct thread *, struct linux_getrusage_args *);
@@ -749,11 +767,13 @@
int linux_setgroups16(struct thread *, struct linux_setgroups16_args *);
int linux_old_select(struct thread *, struct linux_old_select_args *);
int linux_symlink(struct thread *, struct linux_symlink_args *);
+int linux_lstat(struct thread *, struct linux_lstat_args *);
int linux_readlink(struct thread *, struct linux_readlink_args *);
int linux_reboot(struct thread *, struct linux_reboot_args *);
int linux_readdir(struct thread *, struct linux_readdir_args *);
int linux_mmap(struct thread *, struct linux_mmap_args *);
int linux_truncate(struct thread *, struct linux_truncate_args *);
+int linux_ftruncate(struct thread *, struct linux_ftruncate_args *);
int linux_getpriority(struct thread *, struct linux_getpriority_args *);
int linux_statfs(struct thread *, struct linux_statfs_args *);
int linux_fstatfs(struct thread *, struct linux_fstatfs_args *);
==== //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#4 (text+ko) ====
@@ -2,8 +2,8 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.6 2005/07/13 20:35:07 jhb Exp $
- * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.5 2005/07/13 20:32:42 jhb Exp
+ * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.10 2006/03/20 18:54:29 netchild Exp $
+ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.8 2006/03/20 18:53:26 netchild Exp
*/
#define LINUX_SYS_exit 1
@@ -22,6 +22,7 @@
#define LINUX_SYS_linux_mknod 14
#define LINUX_SYS_linux_chmod 15
#define LINUX_SYS_linux_lchown16 16
+#define LINUX_SYS_linux_stat 18
#define LINUX_SYS_linux_lseek 19
#define LINUX_SYS_linux_getpid 20
#define LINUX_SYS_linux_mount 21
@@ -69,7 +70,7 @@
#define LINUX_SYS_linux_setregid16 71
#define LINUX_SYS_linux_sigsuspend 72
#define LINUX_SYS_linux_sigpending 73
-#define LINUX_SYS_osethostname 74
+#define LINUX_SYS_linux_sethostname 74
#define LINUX_SYS_linux_setrlimit 75
#define LINUX_SYS_linux_old_getrlimit 76
#define LINUX_SYS_linux_getrusage 77
@@ -79,6 +80,7 @@
#define LINUX_SYS_linux_setgroups16 81
#define LINUX_SYS_linux_old_select 82
#define LINUX_SYS_linux_symlink 83
+#define LINUX_SYS_linux_lstat 84
#define LINUX_SYS_linux_readlink 85
#define LINUX_SYS_swapon 87
#define LINUX_SYS_linux_reboot 88
@@ -86,7 +88,7 @@
#define LINUX_SYS_linux_mmap 90
#define LINUX_SYS_munmap 91
#define LINUX_SYS_linux_truncate 92
-#define LINUX_SYS_oftruncate 93
+#define LINUX_SYS_linux_ftruncate 93
#define LINUX_SYS_fchmod 94
#define LINUX_SYS_fchown 95
#define LINUX_SYS_linux_getpriority 96
==== //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#4 (text+ko) ====
@@ -2,8 +2,8 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.6 2005/07/13 20:35:07 jhb Exp $
- * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.5 2005/07/13 20:32:42 jhb Exp
+ * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.10 2006/03/20 18:54:29 netchild Exp $
+ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.8 2006/03/20 18:53:26 netchild Exp
*/
#include <bsm/audit_kevents.h>
@@ -38,7 +38,7 @@
{ SYF_MPSAFE | AS(linux_chmod_args), (sy_call_t *)linux_chmod, AUE_NULL }, /* 15 = linux_chmod */
{ SYF_MPSAFE | AS(linux_lchown16_args), (sy_call_t *)linux_lchown16, AUE_NULL }, /* 16 = linux_lchown16 */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 17 = break */
- { 0, (sy_call_t *)nosys, AUE_NULL }, /* 18 = stat */
+ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_NULL }, /* 18 = linux_stat */
{ SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_NULL }, /* 19 = linux_lseek */
{ SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_NULL }, /* 20 = linux_getpid */
{ AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_NULL }, /* 21 = linux_mount */
@@ -94,7 +94,7 @@
{ SYF_MPSAFE | AS(linux_setregid16_args), (sy_call_t *)linux_setregid16, AUE_NULL }, /* 71 = linux_setregid16 */
{ SYF_MPSAFE | AS(linux_sigsuspend_args), (sy_call_t *)linux_sigsuspend, AUE_NULL }, /* 72 = linux_sigsuspend */
{ SYF_MPSAFE | AS(linux_sigpending_args), (sy_call_t *)linux_sigpending, AUE_NULL }, /* 73 = linux_sigpending */
- { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname, AUE_NULL }, /* 74 = osethostname */
+ { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_NULL }, /* 74 = linux_sethostname */
{ SYF_MPSAFE | AS(linux_setrlimit_args), (sy_call_t *)linux_setrlimit, AUE_NULL }, /* 75 = linux_setrlimit */
{ SYF_MPSAFE | AS(linux_old_getrlimit_args), (sy_call_t *)linux_old_getrlimit, AUE_NULL }, /* 76 = linux_old_getrlimit */
{ SYF_MPSAFE | AS(linux_getrusage_args), (sy_call_t *)linux_getrusage, AUE_NULL }, /* 77 = linux_getrusage */
@@ -104,7 +104,7 @@
{ SYF_MPSAFE | AS(linux_setgroups16_args), (sy_call_t *)linux_setgroups16, AUE_NULL }, /* 81 = linux_setgroups16 */
{ SYF_MPSAFE | AS(linux_old_select_args), (sy_call_t *)linux_old_select, AUE_NULL }, /* 82 = linux_old_select */
{ SYF_MPSAFE | AS(linux_symlink_args), (sy_call_t *)linux_symlink, AUE_NULL }, /* 83 = linux_symlink */
- { 0, (sy_call_t *)nosys, AUE_NULL }, /* 84 = ostat */
+ { SYF_MPSAFE | AS(linux_lstat_args), (sy_call_t *)linux_lstat, AUE_NULL }, /* 84 = linux_lstat */
{ SYF_MPSAFE | AS(linux_readlink_args), (sy_call_t *)linux_readlink, AUE_NULL }, /* 85 = linux_readlink */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = linux_uselib */
{ SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_NULL }, /* 87 = swapon */
@@ -113,7 +113,7 @@
{ SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_NULL }, /* 90 = linux_mmap */
{ SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_NULL }, /* 91 = munmap */
{ SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_NULL }, /* 92 = linux_truncate */
- { SYF_MPSAFE | AS(oftruncate_args), (sy_call_t *)oftruncate, AUE_NULL }, /* 93 = oftruncate */
+ { SYF_MPSAFE | AS(linux_ftruncate_args), (sy_call_t *)linux_ftruncate, AUE_NULL }, /* 93 = linux_ftruncate */
{ SYF_MPSAFE | AS(fchmod_args), (sy_call_t *)fchmod, AUE_NULL }, /* 94 = fchmod */
{ SYF_MPSAFE | AS(fchown_args), (sy_call_t *)fchown, AUE_NULL }, /* 95 = fchown */
{ SYF_MPSAFE | AS(linux_getpriority_args), (sy_call_t *)linux_getpriority, AUE_NULL }, /* 96 = linux_getpriority */
==== //depot/projects/arm/src/sys/amd64/linux32/linux32_sysvec.c#5 (text+ko) ====
@@ -31,14 +31,9 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.14 2005/12/26 21:23:57 sobomax Exp $");
-
-/* XXX we use functions that might not exist. */
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.17 2006/03/19 11:10:32 ru Exp $");
#include "opt_compat.h"
-#ifndef COMPAT_43
-#error "Unable to compile Linux-emulator due to missing COMPAT_43 option!"
-#endif
#ifndef COMPAT_IA32
#error "Unable to compile Linux-emulator due to missing COMPAT_IA32 option!"
#endif
==== //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#4 (text+ko) ====
@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.5 2005/07/13 20:32:42 jhb Exp $
+ $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.8 2006/03/20 18:53:26 netchild Exp $
; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
; System call name/number master file (or rather, slave, from LINUX).
@@ -11,7 +11,7 @@
; there is no audit event for the call at this time. For the
; case where the event exists, but we don't want auditing, the
; event should be #defined to AUE_NULL in audit_kevents.h.
-; type one of STD, OBSOL, UNIMPL, COMPAT
+; type one of STD, OBSOL, UNIMPL
; name psuedo-prototype of syscall routine
; If one of the following alts is different, then all appear:
; altname name of system call if different
@@ -21,8 +21,6 @@
; types:
; STD always included
-; COMPAT included on COMPAT #ifdef
-; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
; OBSOL obsolete, not included in system, only specifies name
; UNIMPL not implemented, placeholder only
@@ -66,7 +64,8 @@
16 AUE_NULL MSTD { int linux_lchown16(char *path, \
l_uid16_t uid, l_gid16_t gid); }
17 AUE_NULL UNIMPL break
-18 AUE_NULL UNIMPL stat
+18 AUE_NULL MSTD { int linux_stat(char *path, \
+ struct linux_stat *up); }
19 AUE_NULL MSTD { int linux_lseek(l_uint fdes, l_off_t off, \
l_int whence); }
20 AUE_NULL MSTD { int linux_getpid(void); }
@@ -136,9 +135,8 @@
72 AUE_NULL MSTD { int linux_sigsuspend(l_int hist0, \
l_int hist1, l_osigset_t mask); }
73 AUE_NULL MSTD { int linux_sigpending(l_osigset_t *mask); }
-74 AUE_NULL MNOPROTO { int osethostname(char *hostname, \
- u_int len); } osethostname \
- sethostname_args int
+74 AUE_NULL MSTD { int linux_sethostname(char *hostname, \
+ u_int len); }
75 AUE_NULL MSTD { int linux_setrlimit(l_uint resource, \
struct l_rlimit *rlim); }
76 AUE_NULL MSTD { int linux_old_getrlimit(l_uint resource, \
@@ -159,7 +157,7 @@
struct l_old_select_argv *ptr); }
83 AUE_NULL MSTD { int linux_symlink(char *path, \
char *to); }
-84 AUE_NULL UNIMPL ostat
+84 AUE_NULL MSTD { int linux_lstat(char *path, struct linux_lstat *up); }
85 AUE_NULL MSTD { int linux_readlink(char *name, \
char *buf, l_int count); }
86 AUE_NULL UNIMPL linux_uselib
@@ -173,7 +171,7 @@
91 AUE_NULL MNOPROTO { int munmap(caddr_t addr, int len); }
92 AUE_NULL MSTD { int linux_truncate(char *path, \
l_ulong length); }
-93 AUE_NULL MNOPROTO { int oftruncate(int fd, long length); }
+93 AUE_NULL MSTD { int linux_ftruncate(int fd, long length); }
94 AUE_NULL MNOPROTO { int fchmod(int fd, int mode); }
95 AUE_NULL MNOPROTO { int fchown(int fd, int uid, int gid); }
96 AUE_NULL MSTD { int linux_getpriority(int which, int who); }
==== //depot/projects/arm/src/sys/arm/arm/pmap.c#12 (text+ko) ====
@@ -147,7 +147,7 @@
#include "opt_vm.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.42 2006/03/01 23:04:25 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.44 2006/03/22 22:11:10 cognet Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
==== //depot/projects/arm/src/sys/arm/at91/at91.c#13 (text+ko) ====
@@ -23,7 +23,7 @@
*/
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list