Date: Sun, 26 Mar 2006 21:52:52 GMT From: Marcel Moolenaar <marcel@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 94086 for review Message-ID: <200603262152.k2QLqqFT046013@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=94086 Change 94086 by marcel@marcel_nfs on 2006/03/26 21:52:08 IFC @94084 Affected files ... .. //depot/projects/uart/Makefile#5 integrate .. //depot/projects/uart/alpha/linux/linux_dummy.c#4 integrate .. //depot/projects/uart/alpha/linux/linux_proto.h#7 integrate .. //depot/projects/uart/alpha/linux/linux_syscall.h#7 integrate .. //depot/projects/uart/alpha/linux/linux_sysent.c#7 integrate .. //depot/projects/uart/alpha/linux/linux_sysvec.c#9 integrate .. //depot/projects/uart/alpha/linux/syscalls.master#7 integrate .. //depot/projects/uart/amd64/amd64/apic_vector.S#6 integrate .. //depot/projects/uart/amd64/amd64/db_trace.c#10 integrate .. //depot/projects/uart/amd64/amd64/io_apic.c#7 integrate .. //depot/projects/uart/amd64/amd64/local_apic.c#9 integrate .. //depot/projects/uart/amd64/amd64/machdep.c#18 integrate .. //depot/projects/uart/amd64/amd64/mp_machdep.c#12 integrate .. //depot/projects/uart/amd64/amd64/pmap.c#27 integrate .. //depot/projects/uart/amd64/amd64/trap.c#11 integrate .. //depot/projects/uart/amd64/include/asmacros.h#4 integrate .. //depot/projects/uart/amd64/include/bus.h#3 integrate .. //depot/projects/uart/amd64/include/pmap.h#9 integrate .. //depot/projects/uart/amd64/include/trap.h#3 integrate .. //depot/projects/uart/amd64/linux32/linux.h#2 integrate .. //depot/projects/uart/amd64/linux32/linux32_proto.h#5 integrate .. //depot/projects/uart/amd64/linux32/linux32_syscall.h#5 integrate .. //depot/projects/uart/amd64/linux32/linux32_sysent.c#5 integrate .. //depot/projects/uart/amd64/linux32/linux32_sysvec.c#9 integrate .. //depot/projects/uart/amd64/linux32/syscalls.master#5 integrate .. //depot/projects/uart/amd64/pci/pci_bus.c#11 integrate .. //depot/projects/uart/arm/arm/pmap.c#11 integrate .. //depot/projects/uart/arm/at91/at91.c#2 integrate .. //depot/projects/uart/arm/at91/at91_pio.c#1 branch .. //depot/projects/uart/arm/at91/at91_pioreg.h#1 branch .. //depot/projects/uart/arm/at91/at91_pmc.c#1 branch .. //depot/projects/uart/arm/at91/at91_pmcreg.h#1 branch .. //depot/projects/uart/arm/at91/at91_pmcvar.h#1 branch .. //depot/projects/uart/arm/at91/at91_rtc.c#1 branch .. //depot/projects/uart/arm/at91/at91_rtcreg.h#1 branch .. //depot/projects/uart/arm/at91/at91_ssc.c#1 branch .. //depot/projects/uart/arm/at91/at91_sscreg.h#1 branch .. //depot/projects/uart/arm/at91/at91_st.c#2 integrate .. //depot/projects/uart/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/uart/arm/at91/files.at91#2 integrate .. //depot/projects/uart/arm/at91/if_ate.c#2 integrate .. //depot/projects/uart/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/uart/arm/at91/ohci_atmelarm.c#1 branch .. //depot/projects/uart/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/uart/boot/Makefile#6 integrate .. //depot/projects/uart/boot/alpha/common/Makefile.common#4 integrate .. //depot/projects/uart/boot/i386/libi386/Makefile#7 integrate .. //depot/projects/uart/boot/i386/libi386/smbios.c#4 integrate .. //depot/projects/uart/boot/i386/loader/Makefile#6 integrate .. //depot/projects/uart/boot/ia64/efi/Makefile#3 integrate .. //depot/projects/uart/boot/ia64/ski/Makefile#3 integrate .. //depot/projects/uart/boot/pc98/loader/Makefile#6 integrate .. //depot/projects/uart/boot/powerpc/loader/Makefile#5 integrate .. //depot/projects/uart/boot/sparc64/loader/Makefile#4 integrate .. //depot/projects/uart/cam/scsi/scsi_da.c#17 integrate .. //depot/projects/uart/compat/linux/linux_file.c#6 integrate .. //depot/projects/uart/compat/linux/linux_getcwd.c#8 integrate .. //depot/projects/uart/compat/linux/linux_ioctl.c#9 integrate .. //depot/projects/uart/compat/linux/linux_ipc.c#6 integrate .. //depot/projects/uart/compat/linux/linux_mib.c#5 integrate .. //depot/projects/uart/compat/linux/linux_misc.c#13 integrate .. //depot/projects/uart/compat/linux/linux_signal.c#6 integrate .. //depot/projects/uart/compat/linux/linux_socket.c#10 integrate .. //depot/projects/uart/compat/linux/linux_stats.c#9 integrate .. //depot/projects/uart/compat/linux/linux_sysctl.c#4 integrate .. //depot/projects/uart/compat/linux/linux_uid16.c#4 integrate .. //depot/projects/uart/conf/files#52 integrate .. //depot/projects/uart/conf/files.alpha#14 integrate .. //depot/projects/uart/conf/files.sparc64#15 integrate .. //depot/projects/uart/contrib/pf/net/pf_norm.c#6 integrate .. //depot/projects/uart/dev/aha/aha_isa.c#9 integrate .. //depot/projects/uart/dev/aha/aha_mca.c#6 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#18 integrate .. //depot/projects/uart/dev/ata/ata-pci.h#14 integrate .. //depot/projects/uart/dev/ata/ata-usb.c#2 integrate .. //depot/projects/uart/dev/ata/atapi-fd.c#10 integrate .. //depot/projects/uart/dev/atkbdc/psm.c#4 integrate .. //depot/projects/uart/dev/bge/if_bge.c#23 integrate .. //depot/projects/uart/dev/dc/if_dc.c#4 integrate .. //depot/projects/uart/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/uart/dev/en/midway.c#10 integrate .. //depot/projects/uart/dev/fatm/if_fatm.c#14 integrate .. //depot/projects/uart/dev/hme/if_hme.c#13 integrate .. //depot/projects/uart/dev/hwpmc/hwpmc_logging.c#4 integrate .. //depot/projects/uart/dev/hwpmc/hwpmc_mod.c#6 integrate .. //depot/projects/uart/dev/ipw/if_ipw.c#4 integrate .. //depot/projects/uart/dev/ipw/if_ipwreg.h#2 integrate .. //depot/projects/uart/dev/ipw/if_ipwvar.h#3 integrate .. //depot/projects/uart/dev/iwi/if_iwi.c#7 integrate .. //depot/projects/uart/dev/iwi/if_iwivar.h#5 integrate .. //depot/projects/uart/dev/mfi/mfi.c#1 branch .. //depot/projects/uart/dev/mfi/mfi_disk.c#1 branch .. //depot/projects/uart/dev/mfi/mfi_ioctl.h#1 branch .. //depot/projects/uart/dev/mfi/mfi_pci.c#1 branch .. //depot/projects/uart/dev/mfi/mfireg.h#1 branch .. //depot/projects/uart/dev/mfi/mfivar.h#1 branch .. //depot/projects/uart/dev/mii/brgphy.c#12 integrate .. //depot/projects/uart/dev/mii/miidevs#7 integrate .. //depot/projects/uart/dev/mpt/mpt.c#11 integrate .. //depot/projects/uart/dev/mpt/mpt.h#8 integrate .. //depot/projects/uart/dev/mpt/mpt_cam.c#8 integrate .. //depot/projects/uart/dev/mpt/mpt_debug.c#10 integrate .. //depot/projects/uart/dev/mpt/mpt_pci.c#14 integrate .. //depot/projects/uart/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/uart/dev/mpt/mpt_reg.h#3 integrate .. //depot/projects/uart/dev/patm/if_patm_attach.c#10 integrate .. //depot/projects/uart/dev/pccbb/pccbb.c#15 integrate .. //depot/projects/uart/dev/ral/rt2560.c#2 integrate .. //depot/projects/uart/dev/ral/rt2661.c#3 integrate .. //depot/projects/uart/dev/re/if_re.c#17 integrate .. //depot/projects/uart/dev/sound/isa/ad1816.c#8 integrate .. //depot/projects/uart/dev/sound/pci/atiixp.c#5 integrate .. //depot/projects/uart/dev/sound/pci/ich.c#19 integrate .. //depot/projects/uart/dev/sound/pcm/channel.c#9 integrate .. //depot/projects/uart/dev/sound/pcm/dsp.c#12 integrate .. //depot/projects/uart/dev/sound/pcm/mixer.c#9 integrate .. //depot/projects/uart/dev/sound/pcm/sound.c#9 integrate .. //depot/projects/uart/dev/sound/pcm/sound.h#9 integrate .. //depot/projects/uart/dev/sound/pcm/vchan.c#8 integrate .. //depot/projects/uart/dev/usb/ehci.c#15 integrate .. //depot/projects/uart/dev/usb/hid.c#6 integrate .. //depot/projects/uart/dev/usb/if_ural.c#6 integrate .. //depot/projects/uart/dev/usb/umass.c#18 integrate .. //depot/projects/uart/fs/fdescfs/fdesc_vnops.c#10 integrate .. //depot/projects/uart/fs/fifofs/fifo_vnops.c#10 integrate .. //depot/projects/uart/gdb/gdb_cons.c#1 branch .. //depot/projects/uart/gdb/gdb_int.h#3 integrate .. //depot/projects/uart/gdb/gdb_main.c#4 integrate .. //depot/projects/uart/geom/geom_io.c#10 integrate .. //depot/projects/uart/geom/mirror/g_mirror.c#12 integrate .. //depot/projects/uart/geom/mirror/g_mirror.h#7 integrate .. //depot/projects/uart/geom/mirror/g_mirror_ctl.c#7 integrate .. //depot/projects/uart/geom/raid3/g_raid3.c#13 integrate .. //depot/projects/uart/geom/raid3/g_raid3.h#7 integrate .. //depot/projects/uart/geom/raid3/g_raid3_ctl.c#7 integrate .. //depot/projects/uart/geom/vinum/geom_vinum.c#6 integrate .. //depot/projects/uart/geom/vinum/geom_vinum.h#5 integrate .. //depot/projects/uart/geom/vinum/geom_vinum_rm.c#5 integrate .. //depot/projects/uart/i386/i386/io_apic.c#8 integrate .. //depot/projects/uart/i386/i386/local_apic.c#10 integrate .. //depot/projects/uart/i386/i386/machdep.c#20 integrate .. //depot/projects/uart/i386/i386/pmap.c#30 integrate .. //depot/projects/uart/i386/linux/linux.h#4 integrate .. //depot/projects/uart/i386/linux/linux_dummy.c#3 integrate .. //depot/projects/uart/i386/linux/linux_proto.h#7 integrate .. //depot/projects/uart/i386/linux/linux_syscall.h#7 integrate .. //depot/projects/uart/i386/linux/linux_sysent.c#7 integrate .. //depot/projects/uart/i386/linux/linux_sysvec.c#11 integrate .. //depot/projects/uart/i386/linux/syscalls.master#7 integrate .. //depot/projects/uart/isofs/cd9660/cd9660_rrip.c#4 integrate .. //depot/projects/uart/kern/imgact_aout.c#9 integrate .. //depot/projects/uart/kern/init_sysent.c#16 integrate .. //depot/projects/uart/kern/kern_descrip.c#21 integrate .. //depot/projects/uart/kern/kern_environment.c#9 integrate .. //depot/projects/uart/kern/kern_exit.c#13 integrate .. //depot/projects/uart/kern/kern_fork.c#15 integrate .. //depot/projects/uart/kern/kern_linker.c#7 integrate .. //depot/projects/uart/kern/kern_mac.c#12 integrate .. //depot/projects/uart/kern/kern_tc.c#14 integrate .. //depot/projects/uart/kern/kern_thread.c#21 integrate .. //depot/projects/uart/kern/syscalls.c#16 integrate .. //depot/projects/uart/kern/syscalls.master#16 integrate .. //depot/projects/uart/kern/uipc_mbuf.c#12 integrate .. //depot/projects/uart/kern/uipc_socket.c#16 integrate .. //depot/projects/uart/kern/uipc_socket2.c#9 integrate .. //depot/projects/uart/kern/uipc_usrreq.c#10 integrate .. //depot/projects/uart/kern/vfs_aio.c#14 integrate .. //depot/projects/uart/kern/vfs_bio.c#21 integrate .. //depot/projects/uart/kern/vfs_cluster.c#15 integrate .. //depot/projects/uart/kern/vfs_mount.c#20 integrate .. //depot/projects/uart/kern/vfs_subr.c#24 integrate .. //depot/projects/uart/kern/vfs_syscalls.c#22 integrate .. //depot/projects/uart/kern/vfs_vnops.c#15 integrate .. //depot/projects/uart/modules/Makefile#28 integrate .. //depot/projects/uart/modules/acpi/acpi_video/Makefile#3 integrate .. //depot/projects/uart/modules/ce/Makefile#3 integrate .. //depot/projects/uart/modules/cp/Makefile#4 integrate .. //depot/projects/uart/modules/dummynet/Makefile#4 integrate .. //depot/projects/uart/modules/if_bridge/Makefile#3 integrate .. //depot/projects/uart/modules/if_gif/Makefile#4 integrate .. //depot/projects/uart/modules/ipfilter/Makefile#7 integrate .. //depot/projects/uart/modules/ipfw/Makefile#4 integrate .. //depot/projects/uart/modules/iwi/Makefile#3 integrate .. //depot/projects/uart/modules/linux/Makefile#6 integrate .. //depot/projects/uart/modules/mfi/Makefile#1 branch .. //depot/projects/uart/modules/netgraph/Makefile#8 integrate .. //depot/projects/uart/modules/pf/Makefile#7 integrate .. //depot/projects/uart/modules/pflog/Makefile#3 integrate .. //depot/projects/uart/net/if.c#17 integrate .. //depot/projects/uart/net/if_bridge.c#7 integrate .. //depot/projects/uart/net/if_media.h#8 integrate .. //depot/projects/uart/net/if_tap.c#8 integrate .. //depot/projects/uart/net/route.h#7 integrate .. //depot/projects/uart/net/rtsock.c#10 integrate .. //depot/projects/uart/net80211/ieee80211_output.c#17 integrate .. //depot/projects/uart/netatalk/ddp_pcb.c#3 integrate .. //depot/projects/uart/netatalk/ddp_usrreq.c#6 integrate .. //depot/projects/uart/netgraph/ng_tcpmss.c#2 integrate .. //depot/projects/uart/netinet/in_pcb.h#7 integrate .. //depot/projects/uart/netinet/ip_carp.c#5 integrate .. //depot/projects/uart/netinet/ip_carp.h#2 integrate .. //depot/projects/uart/netinet/ip_icmp.c#10 integrate .. //depot/projects/uart/netinet/tcp_input.c#18 integrate .. //depot/projects/uart/netinet/tcp_syncache.c#15 integrate .. //depot/projects/uart/netinet/tcp_timer.c#10 integrate .. //depot/projects/uart/netinet6/in6.h#7 integrate .. //depot/projects/uart/netinet6/in6_pcb.c#9 integrate .. //depot/projects/uart/netinet6/nd6.c#12 integrate .. //depot/projects/uart/netinet6/nd6_rtr.c#9 integrate .. //depot/projects/uart/netipsec/ipsec.c#9 integrate .. //depot/projects/uart/netipsec/ipsec.h#6 integrate .. //depot/projects/uart/netipsec/ipsec_mbuf.c#5 integrate .. //depot/projects/uart/netipsec/key.c#7 integrate .. //depot/projects/uart/netipsec/key_var.h#3 integrate .. //depot/projects/uart/netipsec/keydb.h#6 integrate .. //depot/projects/uart/netipsec/xform_ah.c#6 integrate .. //depot/projects/uart/netipsec/xform_esp.c#7 integrate .. //depot/projects/uart/netipsec/xform_ipcomp.c#7 integrate .. //depot/projects/uart/netipsec/xform_tcp.c#3 integrate .. //depot/projects/uart/netipx/README#5 integrate .. //depot/projects/uart/netipx/ipx_input.c#8 integrate .. //depot/projects/uart/netipx/ipx_ip.c#6 integrate .. //depot/projects/uart/netipx/ipx_pcb.c#5 integrate .. //depot/projects/uart/netipx/ipx_pcb.h#4 integrate .. //depot/projects/uart/netipx/ipx_usrreq.c#6 integrate .. //depot/projects/uart/netipx/spx_usrreq.c#10 integrate .. //depot/projects/uart/netnatm/natm.c#8 integrate .. //depot/projects/uart/nfsclient/nfs_diskless.c#7 integrate .. //depot/projects/uart/nfsclient/nfs_socket.c#10 integrate .. //depot/projects/uart/pc98/pc98/machdep.c#6 integrate .. //depot/projects/uart/pci/if_rlreg.h#15 integrate .. //depot/projects/uart/security/audit/audit.c#4 integrate .. //depot/projects/uart/security/audit/audit.h#2 integrate .. //depot/projects/uart/security/audit/audit_arg.c#2 integrate .. //depot/projects/uart/security/audit/audit_bsm.c#3 integrate .. //depot/projects/uart/security/audit/audit_bsm_klib.c#2 integrate .. //depot/projects/uart/security/audit/audit_ioctl.h#1 branch .. //depot/projects/uart/security/audit/audit_pipe.c#3 integrate .. //depot/projects/uart/security/audit/audit_private.h#3 integrate .. //depot/projects/uart/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/uart/security/audit/audit_trigger.c#2 integrate .. //depot/projects/uart/security/audit/audit_worker.c#1 branch .. //depot/projects/uart/sys/aio.h#4 integrate .. //depot/projects/uart/sys/cdefs.h#12 integrate .. //depot/projects/uart/sys/clock.h#2 integrate .. //depot/projects/uart/sys/event.h#7 integrate .. //depot/projects/uart/sys/hash.h#1 branch .. //depot/projects/uart/sys/linker.h#4 integrate .. //depot/projects/uart/sys/mbuf.h#12 integrate .. //depot/projects/uart/sys/md5.h#5 integrate .. //depot/projects/uart/sys/param.h#23 integrate .. //depot/projects/uart/sys/pmc.h#4 integrate .. //depot/projects/uart/sys/pmckern.h#3 integrate .. //depot/projects/uart/sys/pmclog.h#2 integrate .. //depot/projects/uart/sys/proc.h#22 integrate .. //depot/projects/uart/sys/protosw.h#7 integrate .. //depot/projects/uart/sys/socketvar.h#10 integrate .. //depot/projects/uart/sys/syscall.h#15 integrate .. //depot/projects/uart/sys/syscall.mk#15 integrate .. //depot/projects/uart/sys/sysproto.h#15 integrate .. //depot/projects/uart/ufs/ffs/ffs_snapshot.c#13 integrate .. //depot/projects/uart/ufs/ffs/ffs_vfsops.c#18 integrate .. //depot/projects/uart/ufs/ufs/ufs_vnops.c#15 integrate .. //depot/projects/uart/vm/vm_mmap.c#13 integrate Differences ... ==== //depot/projects/uart/Makefile#5 (text+ko) ==== @@ -1,7 +1,9 @@ -# $FreeBSD: src/sys/Makefile,v 1.34 2006/01/10 20:58:27 rees Exp $ +# $FreeBSD: src/sys/Makefile,v 1.35 2006/03/17 18:54:34 ru Exp $ + +.include <bsd.own.mk> # The boot loader -.if !defined(NO_BOOT) +.if ${MK_BOOT} != "no" .if ${MACHINE_ARCH} != "arm" SUBDIR= boot .endif ==== //depot/projects/uart/alpha/linux/linux_dummy.c#4 (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/uart/alpha/linux/linux_proto.h#7 (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/uart/alpha/linux/linux_syscall.h#7 (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/uart/alpha/linux/linux_sysent.c#7 (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/uart/alpha/linux/linux_sysvec.c#9 (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/uart/alpha/linux/syscalls.master#7 (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/uart/amd64/amd64/apic_vector.S#6 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.107 2005/12/14 21:47:01 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.108 2006/03/13 23:55:31 peter Exp $ */ /* @@ -188,11 +188,7 @@ jmp doreti /* - * Executed by a CPU when it receives an Xcpustop IPI from another CPU, - * - * - Signals its receipt. - * - Waits for permission to restart. - * - Signals its restart. + * Executed by a CPU when it receives an IPI_STOP from another CPU. */ .text SUPERALIGN_TEXT ==== //depot/projects/uart/amd64/amd64/db_trace.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.73 2005/12/27 23:23:47 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.74 2006/03/13 23:56:44 peter Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -192,6 +192,7 @@ #define TRAP 1 #define INTERRUPT 2 #define SYSCALL 3 +#define TRAP_INTERRUPT 5 static void db_nextframe(struct amd64_frame **, db_addr_t *, struct thread *); static int db_numargs(struct amd64_frame *); @@ -326,6 +327,12 @@ frame_type = INTERRUPT; else if (strcmp(name, "Xfast_syscall") == 0) frame_type = SYSCALL; + /* XXX: These are interrupts with trap frames. */ + else if (strcmp(name, "Xtimerint") == 0 || + strcmp(name, "Xcpustop") == 0 || + strcmp(name, "Xrendezvous") == 0 || + strcmp(name, "Xipi_intr_bitmap_handler") == 0) + frame_type = TRAP_INTERRUPT; } /* @@ -357,6 +364,7 @@ db_printf("--- syscall"); decode_syscall(tf->tf_rax, td); break; + case TRAP_INTERRUPT: case INTERRUPT: db_printf("--- interrupt"); break; ==== //depot/projects/uart/amd64/amd64/io_apic.c#7 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.21 2006/02/28 22:24:54 jhb 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" @@ -73,6 +73,10 @@ * IRQs behave as PCI IRQs by default. We also assume that the pin for * IRQ 0 is actually an ExtINT pin. The apic enumerators override the * configuration of individual pins as indicated by their tables. + * + * Documentation for the I/O APIC: "82093AA I/O Advanced Programmable + * Interrupt Controller (IOAPIC)", May 1996, Intel Corp. + * ftp://download.intel.com/design/chipsets/datashts/29056601.pdf */ struct ioapic_intsrc { @@ -443,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/uart/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/uart/amd64/amd64/machdep.c#18 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.646 2006/02/03 02:49:14 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.648 2006/03/14 16:13:54 jhb Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -247,8 +247,8 @@ struct sigacts *psp; char *sp; struct trapframe *regs; + int sig; int oonstack; - int sig; td = curthread; p = td->td_proc; @@ -1749,8 +1749,7 @@ * could halt the system by setting a breakpoint in the kernel * (if ddb was enabled). Thus, we need to check to make sure * that no breakpoints are being enabled for addresses outside - * process's address space, unless, perhaps, we were called by - * uid 0. + * process's address space. * * XXX - what about when the watched area of the user's * address space is written into from within the kernel @@ -1758,27 +1757,25 @@ * from within kernel mode? */ - if (suser(td) != 0) { - if (dbregs->dr[7] & 0x3) { - /* dr0 is enabled */ - if (dbregs->dr[0] >= VM_MAXUSER_ADDRESS) - return (EINVAL); - } - if (dbregs->dr[7] & 0x3<<2) { - /* dr1 is enabled */ - if (dbregs->dr[1] >= VM_MAXUSER_ADDRESS) - return (EINVAL); - } - if (dbregs->dr[7] & 0x3<<4) { - /* dr2 is enabled */ - if (dbregs->dr[2] >= VM_MAXUSER_ADDRESS) - return (EINVAL); - } - if (dbregs->dr[7] & 0x3<<6) { - /* dr3 is enabled */ - if (dbregs->dr[3] >= VM_MAXUSER_ADDRESS) - return (EINVAL); - } + if (dbregs->dr[7] & 0x3) { + /* dr0 is enabled */ + if (dbregs->dr[0] >= VM_MAXUSER_ADDRESS) + return (EINVAL); + } + if (dbregs->dr[7] & 0x3<<2) { + /* dr1 is enabled */ + if (dbregs->dr[1] >= VM_MAXUSER_ADDRESS) + return (EINVAL); + } + if (dbregs->dr[7] & 0x3<<4) { + /* dr2 is enabled */ + if (dbregs->dr[2] >= VM_MAXUSER_ADDRESS) + return (EINVAL); + } + if (dbregs->dr[7] & 0x3<<6) { + /* dr3 is enabled */ + if (dbregs->dr[3] >= VM_MAXUSER_ADDRESS) + return (EINVAL); } pcb->pcb_dr0 = dbregs->dr[0]; ==== //depot/projects/uart/amd64/amd64/mp_machdep.c#12 (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/uart/amd64/amd64/pmap.c#27 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.536 2006/02/03 00:16:36 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.539 2006/03/21 18:07:41 alc Exp $"); /* * Manages physical address maps. @@ -1360,7 +1360,7 @@ return sysctl_handle_long(oidp, &ksize, 0, req); } SYSCTL_PROC(_vm, OID_AUTO, kvm_size, CTLTYPE_LONG|CTLFLAG_RD, - 0, 0, kvm_size, "IU", "Size of KVM"); + 0, 0, kvm_size, "LU", "Size of KVM"); static int kvm_free(SYSCTL_HANDLER_ARGS) @@ -1370,7 +1370,7 @@ return sysctl_handle_long(oidp, &kfree, 0, req); } SYSCTL_PROC(_vm, OID_AUTO, kvm_free, CTLTYPE_LONG|CTLFLAG_RD, - 0, 0, kvm_free, "IU", "Amount of KVM free"); + 0, 0, kvm_free, "LU", "Amount of KVM free"); /* * grow the number of kernel page table entries, if needed @@ -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; >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200603262152.k2QLqqFT046013>