Date: Thu, 27 Oct 2005 19:52:50 GMT From: John Baldwin <jhb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 85949 for review Message-ID: <200510271952.j9RJqoC6023878@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=85949 Change 85949 by jhb@jhb_slimer on 2005/10/27 19:51:50 IFC @85944. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#8 integrate .. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#16 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#46 integrate .. //depot/projects/smpng/sys/amd64/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/amd64/conf/GENERIC#37 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#27 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#23 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#23 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#23 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#23 integrate .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#23 integrate .. //depot/projects/smpng/sys/compat/ndis/pe_var.h#10 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#34 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_pe.c#7 integrate .. //depot/projects/smpng/sys/conf/Makefile.alpha#25 integrate .. //depot/projects/smpng/sys/conf/Makefile.amd64#12 integrate .. //depot/projects/smpng/sys/conf/Makefile.arm#13 integrate .. //depot/projects/smpng/sys/conf/Makefile.i386#23 integrate .. //depot/projects/smpng/sys/conf/Makefile.ia64#30 integrate .. //depot/projects/smpng/sys/conf/Makefile.pc98#22 integrate .. //depot/projects/smpng/sys/conf/Makefile.powerpc#31 integrate .. //depot/projects/smpng/sys/conf/Makefile.sparc64#26 integrate .. //depot/projects/smpng/sys/conf/kern.post.mk#49 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#52 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#74 integrate .. //depot/projects/smpng/sys/dev/cx/if_cx.c#24 integrate .. //depot/projects/smpng/sys/dev/nve/if_nve.c#7 integrate .. //depot/projects/smpng/sys/dev/rc/rc.c#18 integrate .. //depot/projects/smpng/sys/dev/sab/sab.c#28 integrate .. //depot/projects/smpng/sys/dev/uart/uart_tty.c#16 integrate .. //depot/projects/smpng/sys/dev/zs/zs.c#22 integrate .. //depot/projects/smpng/sys/i386/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/i386/conf/GENERIC#66 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#44 integrate .. //depot/projects/smpng/sys/kern/kern_intr.c#73 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#15 integrate .. //depot/projects/smpng/sys/kern/tty.c#62 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#75 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#13 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#42 integrate .. //depot/projects/smpng/sys/sys/interrupt.h#18 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/io_apic.c#8 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.15 2005/04/15 18:44:53 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.16 2005/10/26 22:32:30 peter Exp $"); #include "opt_atpic.h" #include "opt_isa.h" @@ -40,6 +40,7 @@ #include <sys/malloc.h> #include <sys/lock.h> #include <sys/mutex.h> +#include <sys/sysctl.h> #include <vm/vm.h> #include <vm/pmap.h> @@ -130,6 +131,12 @@ static int bsp_id, current_cluster, logical_clusters, next_ioapic_base; static u_int next_id, program_logical_dest; +SYSCTL_NODE(_hw, OID_AUTO, apic, CTLFLAG_RD, 0, "APIC options"); +static int enable_extint; +SYSCTL_INT(_hw_apic, OID_AUTO, enable_extint, CTLFLAG_RDTUN, &enable_extint, 0, + "Enable the ExtINT pin in the first I/O APIC"); +TUNABLE_INT("hw.apic.enable_extint", &enable_extint); + static __inline void _ioapic_eoi_source(struct intsrc *isrc) { @@ -287,7 +294,7 @@ switch (intpin->io_vector) { case VECTOR_EXTINT: KASSERT(intpin->io_edgetrigger, - ("EXTINT not edge triggered")); + ("ExtINT not edge triggered")); low |= IOART_DELEXINT; break; case VECTOR_NMI: @@ -681,7 +688,10 @@ return (EINVAL); io->io_pins[pin].io_bus = APIC_BUS_UNKNOWN; io->io_pins[pin].io_vector = VECTOR_EXTINT; - io->io_pins[pin].io_masked = 1; + if (enable_extint) + io->io_pins[pin].io_masked = 0; + else + io->io_pins[pin].io_masked = 1; io->io_pins[pin].io_edgetrigger = 1; io->io_pins[pin].io_activehi = 1; if (bootverbose) ==== //depot/projects/smpng/sys/amd64/amd64/local_apic.c#16 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.17 2005/06/24 00:45:01 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.18 2005/10/26 22:32:30 peter Exp $"); #include "opt_hwpmc_hooks.h" @@ -312,7 +312,7 @@ /* Program timer LVT and setup handler. */ lapic->lvt_timer = lvt_mode(la, LVT_TIMER, lapic->lvt_timer); - snprintf(buf, sizeof(buf), "lapic%d: timer", lapic_id()); + snprintf(buf, sizeof(buf), "cpu%d: timer", PCPU_GET(cpuid)); intrcnt_add(buf, &la->la_timer_count); if (PCPU_GET(cpuid) != 0) { KASSERT(lapic_timer_period != 0, ("lapic%u: zero divisor", @@ -322,7 +322,7 @@ lapic_timer_enable_intr(); } - /* XXX: Performance counter, error, and thermal LVTs */ + /* XXX: Error and thermal LVTs */ intr_restore(eflags); } @@ -927,8 +927,12 @@ } /* Wait for an earlier IPI to finish. */ - if (!lapic_ipi_wait(BEFORE_SPIN)) - panic("APIC: Previous IPI is stuck"); + if (!lapic_ipi_wait(BEFORE_SPIN)) { + if (panicstr != NULL) + return; + else + panic("APIC: Previous IPI is stuck"); + } lapic_ipi_raw(icrlo, destfield); ==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#46 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.642 2005/10/17 23:10:31 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.643 2005/10/26 22:16:52 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -830,7 +830,7 @@ } #endif -#define PHYSMAP_SIZE (2 * 8) +#define PHYSMAP_SIZE (2 * 20) u_int basemem; ==== //depot/projects/smpng/sys/amd64/conf/GENERIC#37 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.442 2005/09/08 03:29:18 scottl Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.444 2005/10/27 18:54:43 peter Exp $ machine amd64 cpu HAMMER @@ -76,15 +76,11 @@ # Make an SMP-capable kernel by default options SMP # Symmetric MultiProcessor Kernel -# Workarounds for some known-to-be-broken chipsets (nVidia nForce3-Pro150) -device atpic # 8259A compatability - # Linux 32-bit ABI support options LINPROCFS # Cannot be a module yet. -# Bus support. Do not remove isa, even if you have no isa slots +# Bus support. device acpi -device isa device pci # Floppy drives @@ -234,8 +230,6 @@ # Pseudo devices. device loop # Network loopback -device mem # Memory and kernel memory devices -device io # I/O device device random # Entropy device device ether # Ethernet support device sl # Kernel SLIP ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#27 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.44 2005/10/23 10:43:14 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.45 2005/10/26 22:19:51 peter Exp $"); #include "opt_compat.h" @@ -1397,7 +1397,7 @@ #endif #ifdef COMPAT_43 -struct freebsd3_sigaction32 { +struct osigaction32 { u_int32_t sa_u; osigset_t sa_mask; int sa_flags; @@ -1406,10 +1406,10 @@ #define ONSIG 32 int -freebsd3_freebsd32_sigaction(struct thread *td, - struct freebsd3_freebsd32_sigaction_args *uap) +ofreebsd32_sigaction(struct thread *td, + struct ofreebsd32_sigaction_args *uap) { - struct freebsd3_sigaction32 s32; + struct osigaction32 s32; struct sigaction sa, osa, *sap; int error; @@ -1437,8 +1437,8 @@ } int -freebsd3_freebsd32_sigprocmask(struct thread *td, - struct freebsd3_freebsd32_sigprocmask_args *uap) +ofreebsd32_sigprocmask(struct thread *td, + struct ofreebsd32_sigprocmask_args *uap) { sigset_t set, oset; int error; @@ -1450,8 +1450,8 @@ } int -freebsd3_freebsd32_sigpending(struct thread *td, - struct freebsd3_freebsd32_sigpending_args *uap) +ofreebsd32_sigpending(struct thread *td, + struct ofreebsd32_sigpending_args *uap) { struct proc *p = td->td_proc; sigset_t siglist; @@ -1471,8 +1471,8 @@ }; int -freebsd3_freebsd32_sigvec(struct thread *td, - struct freebsd3_freebsd32_sigvec_args *uap) +ofreebsd32_sigvec(struct thread *td, + struct ofreebsd32_sigvec_args *uap) { struct sigvec32 vec; struct sigaction sa, osa, *sap; @@ -1505,8 +1505,8 @@ } int -freebsd3_freebsd32_sigblock(struct thread *td, - struct freebsd3_freebsd32_sigblock_args *uap) +ofreebsd32_sigblock(struct thread *td, + struct ofreebsd32_sigblock_args *uap) { struct proc *p = td->td_proc; sigset_t set; @@ -1521,8 +1521,8 @@ } int -freebsd3_freebsd32_sigsetmask(struct thread *td, - struct freebsd3_freebsd32_sigsetmask_args *uap) +ofreebsd32_sigsetmask(struct thread *td, + struct ofreebsd32_sigsetmask_args *uap) { struct proc *p = td->td_proc; sigset_t set; @@ -1538,8 +1538,8 @@ } int -freebsd3_freebsd32_sigsuspend(struct thread *td, - struct freebsd3_freebsd32_sigsuspend_args *uap) +ofreebsd32_sigsuspend(struct thread *td, + struct ofreebsd32_sigsuspend_args *uap) { struct proc *p = td->td_proc; sigset_t mask; @@ -1564,8 +1564,8 @@ }; int -freebsd3_freebsd32_sigstack(struct thread *td, - struct freebsd3_freebsd32_sigstack_args *uap) +ofreebsd32_sigstack(struct thread *td, + struct ofreebsd32_sigstack_args *uap) { struct sigstack32 s32; struct sigstack nss, oss; ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#23 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.44 2005/10/23 10:43:38 ps Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.56 2005/10/23 10:43:14 ps Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.45 2005/10/26 22:21:03 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.57 2005/10/26 22:19:51 peter Exp */ #ifndef _FREEBSD32_SYSPROTO_H_ @@ -56,16 +56,7 @@ char from_l_[PADL_(u_int32_t)]; u_int32_t from; char from_r_[PADR_(u_int32_t)]; char fromlenaddr_l_[PADL_(u_int32_t)]; u_int32_t fromlenaddr; char fromlenaddr_r_[PADR_(u_int32_t)]; }; -struct freebsd3_freebsd32_sigaction_args { - char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; - char nsa_l_[PADL_(struct freebsd3_sigaction32 *)]; struct freebsd3_sigaction32 * nsa; char nsa_r_[PADR_(struct freebsd3_sigaction32 *)]; - char osa_l_[PADL_(struct freebsd3_sigaction32 *)]; struct freebsd3_sigaction32 * osa; char osa_r_[PADR_(struct freebsd3_sigaction32 *)]; -}; -struct freebsd3_freebsd32_sigprocmask_args { - char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; - char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; -}; -struct freebsd3_freebsd32_sigpending_args { +struct ofreebsd32_sigpending_args { register_t dummy; }; struct freebsd32_sigaltstack_args { @@ -93,24 +84,6 @@ char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)]; char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)]; }; -struct freebsd3_freebsd32_sigvec_args { - char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; - char nsv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * nsv; char nsv_r_[PADR_(struct sigvec32 *)]; - char osv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * osv; char osv_r_[PADR_(struct sigvec32 *)]; -}; -struct freebsd3_freebsd32_sigblock_args { - char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; -}; -struct freebsd3_freebsd32_sigsetmask_args { - char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; -}; -struct freebsd3_freebsd32_sigsuspend_args { - char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; -}; -struct freebsd3_freebsd32_sigstack_args { - char nss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * nss; char nss_r_[PADR_(struct sigstack32 *)]; - char oss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * oss; char oss_r_[PADR_(struct sigstack32 *)]; -}; struct freebsd32_gettimeofday_args { char tp_l_[PADL_(struct timeval32 *)]; struct timeval32 * tp; char tp_r_[PADR_(struct timeval32 *)]; char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; @@ -299,19 +272,11 @@ int freebsd32_recvmsg(struct thread *, struct freebsd32_recvmsg_args *); int freebsd32_sendmsg(struct thread *, struct freebsd32_sendmsg_args *); int freebsd32_recvfrom(struct thread *, struct freebsd32_recvfrom_args *); -int freebsd3_freebsd32_sigaction(struct thread *, struct freebsd3_freebsd32_sigaction_args *); -int freebsd3_freebsd32_sigprocmask(struct thread *, struct freebsd3_freebsd32_sigprocmask_args *); -int freebsd3_freebsd32_sigpending(struct thread *, struct freebsd3_freebsd32_sigpending_args *); int freebsd32_sigaltstack(struct thread *, struct freebsd32_sigaltstack_args *); int freebsd32_execve(struct thread *, struct freebsd32_execve_args *); int freebsd32_setitimer(struct thread *, struct freebsd32_setitimer_args *); int freebsd32_getitimer(struct thread *, struct freebsd32_getitimer_args *); int freebsd32_select(struct thread *, struct freebsd32_select_args *); -int freebsd3_freebsd32_sigvec(struct thread *, struct freebsd3_freebsd32_sigvec_args *); -int freebsd3_freebsd32_sigblock(struct thread *, struct freebsd3_freebsd32_sigblock_args *); -int freebsd3_freebsd32_sigsetmask(struct thread *, struct freebsd3_freebsd32_sigsetmask_args *); -int freebsd3_freebsd32_sigsuspend(struct thread *, struct freebsd3_freebsd32_sigsuspend_args *); -int freebsd3_freebsd32_sigstack(struct thread *, struct freebsd3_freebsd32_sigstack_args *); int freebsd32_gettimeofday(struct thread *, struct freebsd32_gettimeofday_args *); int freebsd32_getrusage(struct thread *, struct freebsd32_getrusage_args *); int freebsd32_readv(struct thread *, struct freebsd32_readv_args *); @@ -349,6 +314,41 @@ #ifdef COMPAT_43 +struct ofreebsd32_sigaction_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * nsa; char nsa_r_[PADR_(struct osigaction32 *)]; + char osa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * osa; char osa_r_[PADR_(struct osigaction32 *)]; +}; +struct ofreebsd32_sigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct ofreebsd32_sigvec_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * nsv; char nsv_r_[PADR_(struct sigvec32 *)]; + char osv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * osv; char osv_r_[PADR_(struct sigvec32 *)]; +}; +struct ofreebsd32_sigblock_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct ofreebsd32_sigsetmask_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct ofreebsd32_sigsuspend_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct ofreebsd32_sigstack_args { + char nss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * nss; char nss_r_[PADR_(struct sigstack32 *)]; + char oss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * oss; char oss_r_[PADR_(struct sigstack32 *)]; +}; +int ofreebsd32_sigaction(struct thread *, struct ofreebsd32_sigaction_args *); +int ofreebsd32_sigprocmask(struct thread *, struct ofreebsd32_sigprocmask_args *); +int ofreebsd32_sigpending(struct thread *, struct ofreebsd32_sigpending_args *); +int ofreebsd32_sigvec(struct thread *, struct ofreebsd32_sigvec_args *); +int ofreebsd32_sigblock(struct thread *, struct ofreebsd32_sigblock_args *); +int ofreebsd32_sigsetmask(struct thread *, struct ofreebsd32_sigsetmask_args *); +int ofreebsd32_sigsuspend(struct thread *, struct ofreebsd32_sigsuspend_args *); +int ofreebsd32_sigstack(struct thread *, struct ofreebsd32_sigstack_args *); #endif /* COMPAT_43 */ ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#23 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.44 2005/10/23 10:43:39 ps Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.56 2005/10/23 10:43:14 ps Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.45 2005/10/26 22:21:03 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.57 2005/10/26 22:19:51 peter Exp */ #define FREEBSD32_SYS_syscall 0 @@ -50,13 +50,13 @@ #define FREEBSD32_SYS_getegid 43 #define FREEBSD32_SYS_profil 44 #define FREEBSD32_SYS_ktrace 45 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigaction 46 + /* 46 is old freebsd32_sigaction */ #define FREEBSD32_SYS_getgid 47 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigprocmask 48 + /* 48 is old freebsd32_sigprocmask */ #define FREEBSD32_SYS_getlogin 49 #define FREEBSD32_SYS_setlogin 50 #define FREEBSD32_SYS_acct 51 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigpending 52 + /* 52 is old freebsd32_sigpending */ #define FREEBSD32_SYS_freebsd32_sigaltstack 53 #define FREEBSD32_SYS_ioctl 54 #define FREEBSD32_SYS_reboot 55 @@ -110,11 +110,11 @@ #define FREEBSD32_SYS_setsockopt 105 #define FREEBSD32_SYS_listen 106 /* 107 is obsolete vtimes */ -#define FREEBSD32_SYS_freebsd3_freebsd32_sigvec 108 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigblock 109 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigsetmask 110 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigsuspend 111 -#define FREEBSD32_SYS_freebsd3_freebsd32_sigstack 112 + /* 108 is old freebsd32_sigvec */ + /* 109 is old freebsd32_sigblock */ + /* 110 is old freebsd32_sigsetmask */ + /* 111 is old freebsd32_sigsuspend */ + /* 112 is old freebsd32_sigstack */ /* 113 is obsolete orecvmsg */ /* 114 is obsolete osendmsg */ /* 115 is obsolete vtrace */ ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#23 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.35 2005/10/23 10:43:39 ps Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.56 2005/10/23 10:43:14 ps Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.36 2005/10/26 22:21:03 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.57 2005/10/26 22:19:51 peter Exp */ const char *freebsd32_syscallnames[] = { @@ -53,13 +53,13 @@ "getegid", /* 43 = getegid */ "profil", /* 44 = profil */ "ktrace", /* 45 = ktrace */ - "freebsd3_freebsd32_sigaction", /* 46 = freebsd3_freebsd32_sigaction */ + "old.freebsd32_sigaction", /* 46 = old freebsd32_sigaction */ "getgid", /* 47 = getgid */ - "freebsd3_freebsd32_sigprocmask", /* 48 = freebsd3_freebsd32_sigprocmask */ + "old.freebsd32_sigprocmask", /* 48 = old freebsd32_sigprocmask */ "getlogin", /* 49 = getlogin */ "setlogin", /* 50 = setlogin */ "acct", /* 51 = acct */ - "freebsd3_freebsd32_sigpending", /* 52 = freebsd3_freebsd32_sigpending */ + "old.freebsd32_sigpending", /* 52 = old freebsd32_sigpending */ "freebsd32_sigaltstack", /* 53 = freebsd32_sigaltstack */ "ioctl", /* 54 = ioctl */ "reboot", /* 55 = reboot */ @@ -115,11 +115,11 @@ "setsockopt", /* 105 = setsockopt */ "listen", /* 106 = listen */ "obs_vtimes", /* 107 = obsolete vtimes */ - "freebsd3_freebsd32_sigvec", /* 108 = freebsd3_freebsd32_sigvec */ - "freebsd3_freebsd32_sigblock", /* 109 = freebsd3_freebsd32_sigblock */ - "freebsd3_freebsd32_sigsetmask", /* 110 = freebsd3_freebsd32_sigsetmask */ - "freebsd3_freebsd32_sigsuspend", /* 111 = freebsd3_freebsd32_sigsuspend */ - "freebsd3_freebsd32_sigstack", /* 112 = freebsd3_freebsd32_sigstack */ + "old.freebsd32_sigvec", /* 108 = old freebsd32_sigvec */ + "old.freebsd32_sigblock", /* 109 = old freebsd32_sigblock */ + "old.freebsd32_sigsetmask", /* 110 = old freebsd32_sigsetmask */ + "old.freebsd32_sigsuspend", /* 111 = old freebsd32_sigsuspend */ + "old.freebsd32_sigstack", /* 112 = old freebsd32_sigstack */ "obs_orecvmsg", /* 113 = obsolete orecvmsg */ "obs_osendmsg", /* 114 = obsolete osendmsg */ "obs_vtrace", /* 115 = obsolete vtrace */ ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#23 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.45 2005/10/23 10:43:39 ps Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.56 2005/10/23 10:43:14 ps Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.46 2005/10/26 22:21:03 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.57 2005/10/26 22:19:51 peter Exp */ #include "opt_compat.h" @@ -18,6 +18,12 @@ #define AS(name) (sizeof(struct name) / sizeof(register_t)) +#ifdef COMPAT_43 +#define compat(n, name) n, (sy_call_t *)__CONCAT(o,name) +#else +#define compat(n, name) 0, (sy_call_t *)nosys +#endif + #ifdef COMPAT_FREEBSD4 #define compat4(n, name) n, (sy_call_t *)__CONCAT(freebsd4_,name) #else @@ -72,13 +78,13 @@ { SYF_MPSAFE | 0, (sy_call_t *)getegid, AUE_NULL }, /* 43 = getegid */ { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil, AUE_NULL }, /* 44 = profil */ { SYF_MPSAFE | AS(ktrace_args), (sy_call_t *)ktrace, AUE_NULL }, /* 45 = ktrace */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigaction_args), (sy_call_t *)freebsd3_freebsd32_sigaction, AUE_NULL }, /* 46 = freebsd3_freebsd32_sigaction */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigaction_args),freebsd32_sigaction), AUE_NULL }, /* 46 = old freebsd32_sigaction */ { SYF_MPSAFE | 0, (sy_call_t *)getgid, AUE_NULL }, /* 47 = getgid */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigprocmask_args), (sy_call_t *)freebsd3_freebsd32_sigprocmask, AUE_NULL }, /* 48 = freebsd3_freebsd32_sigprocmask */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigprocmask_args),freebsd32_sigprocmask), AUE_NULL }, /* 48 = old freebsd32_sigprocmask */ { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin, AUE_NULL }, /* 49 = getlogin */ { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin, AUE_NULL }, /* 50 = setlogin */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_NULL }, /* 51 = acct */ - { SYF_MPSAFE | 0, (sy_call_t *)freebsd3_freebsd32_sigpending, AUE_NULL }, /* 52 = freebsd3_freebsd32_sigpending */ + { compat(SYF_MPSAFE | 0,freebsd32_sigpending), AUE_NULL }, /* 52 = old freebsd32_sigpending */ { SYF_MPSAFE | AS(freebsd32_sigaltstack_args), (sy_call_t *)freebsd32_sigaltstack, AUE_NULL }, /* 53 = freebsd32_sigaltstack */ { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl, AUE_NULL }, /* 54 = ioctl */ { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot, AUE_NULL }, /* 55 = reboot */ @@ -134,11 +140,11 @@ { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt, AUE_NULL }, /* 105 = setsockopt */ { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen, AUE_NULL }, /* 106 = listen */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 107 = obsolete vtimes */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigvec_args), (sy_call_t *)freebsd3_freebsd32_sigvec, AUE_NULL }, /* 108 = freebsd3_freebsd32_sigvec */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigblock_args), (sy_call_t *)freebsd3_freebsd32_sigblock, AUE_NULL }, /* 109 = freebsd3_freebsd32_sigblock */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigsetmask_args), (sy_call_t *)freebsd3_freebsd32_sigsetmask, AUE_NULL }, /* 110 = freebsd3_freebsd32_sigsetmask */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigsuspend_args), (sy_call_t *)freebsd3_freebsd32_sigsuspend, AUE_NULL }, /* 111 = freebsd3_freebsd32_sigsuspend */ - { SYF_MPSAFE | AS(freebsd3_freebsd32_sigstack_args), (sy_call_t *)freebsd3_freebsd32_sigstack, AUE_NULL }, /* 112 = freebsd3_freebsd32_sigstack */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigvec_args),freebsd32_sigvec), AUE_NULL }, /* 108 = old freebsd32_sigvec */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigblock_args),freebsd32_sigblock), AUE_NULL }, /* 109 = old freebsd32_sigblock */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigsetmask_args),freebsd32_sigsetmask), AUE_NULL }, /* 110 = old freebsd32_sigsetmask */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigsuspend_args),freebsd32_sigsuspend), AUE_NULL }, /* 111 = old freebsd32_sigsuspend */ + { compat(SYF_MPSAFE | AS(ofreebsd32_sigstack_args),freebsd32_sigstack), AUE_NULL }, /* 112 = old freebsd32_sigstack */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 113 = obsolete orecvmsg */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 114 = obsolete osendmsg */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 115 = obsolete vtrace */ ==== //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#23 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.56 2005/10/23 10:43:14 ps Exp $ + $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.57 2005/10/26 22:19:51 peter Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; from: src/sys/kern/syscalls.master 1.107 ; @@ -116,18 +116,17 @@ size_t offset, u_int scale); } 45 AUE_NULL MNOPROTO { int ktrace(const char *fname, int ops, \ int facs, int pid); } -46 AUE_NULL MSTD { int freebsd3_freebsd32_sigaction( \ - int signum, \ - struct freebsd3_sigaction32 *nsa, \ - struct freebsd3_sigaction32 *osa); } +46 AUE_NULL MCOMPAT { int freebsd32_sigaction( int signum, \ + struct osigaction32 *nsa, \ + struct osigaction32 *osa); } 47 AUE_NULL MNOPROTO { gid_t getgid(void); } -48 AUE_NULL MSTD { int freebsd3_freebsd32_sigprocmask(int how, \ +48 AUE_NULL MCOMPAT { int freebsd32_sigprocmask(int how, \ osigset_t mask); } 49 AUE_NULL MNOPROTO { int getlogin(char *namebuf, \ u_int namelen); } 50 AUE_NULL MNOPROTO { int setlogin(char *namebuf); } 51 AUE_NULL MNOPROTO { int acct(char *path); } -52 AUE_NULL MSTD { int freebsd3_freebsd32_sigpending(void); } +52 AUE_NULL MCOMPAT { int freebsd32_sigpending(void); } 53 AUE_NULL MSTD { int freebsd32_sigaltstack( \ struct sigaltstack32 *ss, \ struct sigaltstack32 *oss); } @@ -209,15 +208,13 @@ int name, caddr_t val, int valsize); } 106 AUE_NULL MNOPROTO { int listen(int s, int backlog); } 107 AUE_NULL OBSOL vtimes -108 AUE_NULL MSTD { int freebsd3_freebsd32_sigvec(int signum, \ +108 AUE_NULL MCOMPAT { int freebsd32_sigvec(int signum, \ struct sigvec32 *nsv, \ struct sigvec32 *osv); } -109 AUE_NULL MSTD { int freebsd3_freebsd32_sigblock(int mask); } -110 AUE_NULL MSTD { int freebsd3_freebsd32_sigsetmask( \ - int mask); } -111 AUE_NULL MSTD { int freebsd3_freebsd32_sigsuspend( \ - int mask); } -112 AUE_NULL MSTD { int freebsd3_freebsd32_sigstack( \ +109 AUE_NULL MCOMPAT { int freebsd32_sigblock(int mask); } +110 AUE_NULL MCOMPAT { int freebsd32_sigsetmask( int mask); } +111 AUE_NULL MCOMPAT { int freebsd32_sigsuspend( int mask); } +112 AUE_NULL MCOMPAT { int freebsd32_sigstack( \ struct sigstack32 *nss, \ struct sigstack32 *oss); } 113 AUE_NULL OBSOL orecvmsg ==== //depot/projects/smpng/sys/compat/ndis/pe_var.h#10 (text+ko) ==== @@ -29,7 +29,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/compat/ndis/pe_var.h,v 1.13 2005/04/11 02:02:34 wpaul Exp $ + * $FreeBSD: src/sys/compat/ndis/pe_var.h,v 1.14 2005/10/26 18:46:27 wpaul Exp $ */ #ifndef _PE_VAR_H_ @@ -214,6 +214,10 @@ typedef struct image_nt_header image_nt_header; +#define IMAGE_SIZEOF_NT_HEADER(nthdr) \ + (offsetof(image_nt_header, inh_optionalhdr) + \ + ((image_nt_header *)(nthdr))->inh_filehdr.ifh_optionalhdrlen) + /* Directory Entries */ #define IMAGE_DIRECTORY_ENTRY_EXPORT 0 /* Export Directory */ @@ -281,6 +285,11 @@ #define IMAGE_SIZEOF_SECTION_HEADER 40 +#define IMAGE_FIRST_SECTION(nthdr) \ + ((image_section_header *)((vm_offset_t)(nthdr) + \ + offsetof(image_nt_header, inh_optionalhdr) + \ + ((image_nt_header *)(nthdr))->inh_filehdr.ifh_optionalhdrlen)) + /* * Import format */ ==== //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#34 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.78 2005/10/26 06:52:57 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.79 2005/10/26 20:21:45 wpaul Exp $"); #include <sys/ctype.h> #include <sys/unistd.h> @@ -2556,6 +2556,8 @@ int i; vm_offset_t v; + /* There will always be at least one nexus. */ + nexus_class = devclass_find("nexus"); devclass_get_devices(nexus_class, &nexus_devs, &nexus_count); @@ -2593,7 +2595,7 @@ uint64_t paddr; struct resource **res; { - device_t *children; + device_t *children = NULL; device_t matching_dev; int childcnt; struct resource *r; @@ -2648,7 +2650,12 @@ } } - free(children, M_TEMP); + + /* Won't somebody please think of the children! */ + + if (children != NULL) + free(children, M_TEMP); + return(NULL); } ==== //depot/projects/smpng/sys/compat/ndis/subr_pe.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_pe.c,v 1.11 2005/02/24 17:58:27 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_pe.c,v 1.12 2005/10/26 18:46:27 wpaul Exp $"); /* * This file contains routines for relocating and dynamically linking @@ -57,6 +57,7 @@ #define strncasecmp(a, b, c) ndis_strncasecmp(a, b, c) #else #include <stdio.h> +#include <stddef.h> #include <stdlib.h> #include <unistd.h> #include <string.h> @@ -142,7 +143,7 @@ nt_hdr = (image_nt_header *)(imgbase + dos_hdr->idh_lfanew); bcopy ((char *)&nt_hdr->inh_optionalhdr, (char *)hdr, - sizeof(image_optional_header)); + nt_hdr->inh_filehdr.ifh_optionalhdrlen); return(0); } @@ -169,6 +170,14 @@ dos_hdr = (image_dos_header *)imgbase; nt_hdr = (image_nt_header *)(imgbase + dos_hdr->idh_lfanew); + /* + * Note: the size of the nt_header is variable since it + * can contain optional fields, as indicated by ifh_optionalhdrlen. + * However it happens we're only interested in fields in the + * non-variant portion of the nt_header structure, so we don't + * bother copying the optional parts here. + */ + bcopy ((char *)&nt_hdr->inh_filehdr, (char *)hdr, sizeof(image_file_header)); @@ -197,8 +206,7 @@ dos_hdr = (image_dos_header *)imgbase; nt_hdr = (image_nt_header *)(imgbase + dos_hdr->idh_lfanew); - sect_hdr = (image_section_header *)((vm_offset_t)nt_hdr + - sizeof(image_nt_header)); + sect_hdr = IMAGE_FIRST_SECTION(nt_hdr); bcopy ((char *)sect_hdr, (char *)hdr, sizeof(image_section_header)); @@ -280,8 +288,7 @@ dos_hdr = (image_dos_header *)imgbase; nt_hdr = (image_nt_header *)(imgbase + dos_hdr->idh_lfanew); - sect_hdr = (image_section_header *)((vm_offset_t)nt_hdr + - sizeof(image_nt_header)); + sect_hdr = IMAGE_FIRST_SECTION(nt_hdr); /* * The test here is to see if the RVA falls somewhere @@ -339,8 +346,7 @@ dos_hdr = (image_dos_header *)imgbase; nt_hdr = (image_nt_header *)(imgbase + dos_hdr->idh_lfanew); - sect_hdr = (image_section_header *)((vm_offset_t)nt_hdr + - sizeof(image_nt_header)); + sect_hdr = IMAGE_FIRST_SECTION(nt_hdr); for (i = 0; i < sections; i++) { if (!strcmp ((char *)§_hdr->ish_name, name)) { ==== //depot/projects/smpng/sys/conf/Makefile.alpha#25 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.alpha -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.alpha 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.alpha,v 1.135 2005/04/13 14:49:57 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.alpha,v 1.136 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 .if !defined(S) .if exists(./@/.) ==== //depot/projects/smpng/sys/conf/Makefile.amd64#12 (text+ko) ==== @@ -2,7 +2,7 @@ # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 # from FreeBSD: src/sys/conf/Makefile.i386,v 1.255 2002/02/20 23:35:49 -# $FreeBSD: src/sys/conf/Makefile.amd64,v 1.17 2005/09/07 17:38:46 obrien Exp $ +# $FreeBSD: src/sys/conf/Makefile.amd64,v 1.18 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -18,7 +18,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 STD8X16FONT?= iso ==== //depot/projects/smpng/sys/conf/Makefile.arm#13 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.arm -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.arm,v 1.13 2005/10/17 18:31:37 cognet Exp $ +# $FreeBSD: src/sys/conf/Makefile.arm,v 1.14 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 # Temporary stuff while we're still embryonic NO_MODULES= ==== //depot/projects/smpng/sys/conf/Makefile.i386#23 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.i386,v 1.265 2005/04/13 14:49:57 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.i386,v 1.266 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 STD8X16FONT?= iso ==== //depot/projects/smpng/sys/conf/Makefile.ia64#30 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.ia64 -- with config changes. # Copyright 1990 W. Jolitz # from: src/sys/conf/Makefile.alpha,v 1.76 -# $FreeBSD: src/sys/conf/Makefile.ia64,v 1.62 2005/04/13 14:49:57 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.ia64,v 1.63 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -19,7 +19,7 @@ GCC3= you bet # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 STD8X16FONT?= iso ==== //depot/projects/smpng/sys/conf/Makefile.pc98#22 (text+ko) ==== @@ -3,7 +3,7 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.pc98,v 1.167 2005/04/13 14:49:57 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.pc98,v 1.168 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -19,7 +19,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 .if !defined(S) .if exists(./@/.) ==== //depot/projects/smpng/sys/conf/Makefile.powerpc#31 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.powerpc -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.powerpc,v 1.278 2005/09/07 17:38:46 obrien Exp $ +# $FreeBSD: src/sys/conf/Makefile.powerpc,v 1.279 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 STD8X16FONT?= iso ==== //depot/projects/smpng/sys/conf/Makefile.sparc64#26 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.sparc64 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.sparc64,v 1.33 2005/04/13 14:49:57 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.sparc64,v 1.34 2005/10/27 19:27:54 jhb Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600002 +%VERSREQ= 600003 STD8X16FONT?= iso ==== //depot/projects/smpng/sys/conf/kern.post.mk#49 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/kern.post.mk,v 1.86 2005/10/25 09:05:07 ru Exp $ +# $FreeBSD: src/sys/conf/kern.post.mk,v 1.89 2005/10/27 17:39:03 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 @@ -29,11 +29,7 @@ # Handle out of tree ports .if !defined(NO_MODULES) && defined(PORTS_MODULES) -.for _dir in ${.CURDIR}/../../.. -.if !defined(SYSDIR) && exists(${_dir}/kern/) -SYSDIR= ${_dir} -.endif -.endfor +SYSDIR?= ${S:C;^[^/];${.CURDIR}/&;} PORTSMODULESENV=SYSDIR=${SYSDIR} .for __target in all install reinstall clean ${__target}: ports-${__target} @@ -67,8 +63,11 @@ FULLKERNEL= ${KERNEL_KO} .else FULLKERNEL= ${KERNEL_KO}.debug -${KERNEL_KO}: ${FULLKERNEL} - ${OBJCOPY} --strip-debug ${FULLKERNEL} ${KERNEL_KO} +${KERNEL_KO}: ${FULLKERNEL} ${KERNEL_KO}.symbols + ${OBJCOPY} --strip-debug --add-gnu-debuglink=${KERNEL_KO}.symbols\ >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510271952.j9RJqoC6023878>