Date: Mon, 11 Aug 2003 21:30:41 -0700 (PDT) From: Marcel Moolenaar <marcel@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 35960 for review Message-ID: <200308120430.h7C4Uf2M005708@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=35960 Change 35960 by marcel@marcel_nfs on 2003/08/11 21:30:14 IFC @35959 Affected files ... .. //depot/projects/ia64/contrib/isc-dhcp/client/dhclient.c#11 integrate .. //depot/projects/ia64/contrib/isc-dhcp/common/dispatch.c#5 integrate .. //depot/projects/ia64/contrib/isc-dhcp/includes/dhcpd.h#9 integrate .. //depot/projects/ia64/etc/network.subr#8 integrate .. //depot/projects/ia64/etc/pccard_ether#9 integrate .. //depot/projects/ia64/etc/sendmail/Makefile#12 integrate .. //depot/projects/ia64/gnu/usr.bin/send-pr/send-pr.sh#5 integrate .. //depot/projects/ia64/lib/Makefile#34 integrate .. //depot/projects/ia64/lib/libc/alpha/sys/Makefile.inc#4 integrate .. //depot/projects/ia64/lib/libc/amd64/sys/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libc/i386/sys/Makefile.inc#5 integrate .. //depot/projects/ia64/lib/libc/ia64/gen/fpgetmask.c#3 integrate .. //depot/projects/ia64/lib/libc/ia64/gen/fpsetmask.c#3 integrate .. //depot/projects/ia64/lib/libc/ia64/sys/Makefile.inc#5 integrate .. //depot/projects/ia64/lib/libc/locale/Makefile.inc#15 integrate .. //depot/projects/ia64/lib/libc/locale/big5.5#1 branch .. //depot/projects/ia64/lib/libc/locale/gb18030.5#1 branch .. //depot/projects/ia64/lib/libc/locale/gbk.5#1 branch .. //depot/projects/ia64/lib/libc/locale/mskanji.5#1 branch .. //depot/projects/ia64/lib/libc/locale/multibyte.3#8 integrate .. //depot/projects/ia64/lib/libc/powerpc/sys/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libc/sparc64/sys/Makefile.inc#8 integrate .. //depot/projects/ia64/lib/libc/stdlib/random.c#4 integrate .. //depot/projects/ia64/lib/libc/sys/Makefile.inc#16 integrate .. //depot/projects/ia64/lib/libc/sys/mlockall.2#1 branch .. //depot/projects/ia64/lib/libc/sys/ptrace.2#7 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_cancel.c#13 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_fork.c#3 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_init.c#15 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#29 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_rtld.c#3 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_sig.c#21 integrate .. //depot/projects/ia64/release/Makefile#69 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/errata/article.sgml#24 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#59 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#116 integrate .. //depot/projects/ia64/release/sparc64/mkisoimages.sh#3 integrate .. //depot/projects/ia64/sbin/atm/atm/atm.c#4 integrate .. //depot/projects/ia64/sbin/dhclient/Makefile.inc#5 integrate .. //depot/projects/ia64/share/man/man4/Makefile#55 integrate .. //depot/projects/ia64/share/man/man4/ng_atmpif.4#1 branch .. //depot/projects/ia64/share/man/man5/Makefile#14 integrate .. //depot/projects/ia64/share/man/man5/nsmb.conf.5#1 branch .. //depot/projects/ia64/sys/alpha/alpha/vm_machdep.c#24 integrate .. //depot/projects/ia64/sys/amd64/amd64/pmap.c#18 integrate .. //depot/projects/ia64/sys/conf/NOTES#62 integrate .. //depot/projects/ia64/sys/conf/files#92 integrate .. //depot/projects/ia64/sys/conf/options#62 integrate .. //depot/projects/ia64/sys/contrib/dev/acpica/osunixxf.c#2 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_acad.c#6 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_battery.c#5 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_button.c#8 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_cmbat.c#11 integrate .. //depot/projects/ia64/sys/dev/amd/amd.c#8 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#37 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_core.c#9 integrate .. //depot/projects/ia64/sys/dev/iicbus/iic.c#6 integrate .. //depot/projects/ia64/sys/dev/iicbus/iicsmb.c#4 integrate .. //depot/projects/ia64/sys/dev/mlx/mlx.c#11 integrate .. //depot/projects/ia64/sys/dev/mly/mly.c#16 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb.c#32 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbbreg.h#6 integrate .. //depot/projects/ia64/sys/dev/smbus/smb.c#5 integrate .. //depot/projects/ia64/sys/dev/sound/pci/ich.c#16 integrate .. //depot/projects/ia64/sys/dev/sound/pci/ich.h#3 integrate .. //depot/projects/ia64/sys/dev/trm/trm.c#12 integrate .. //depot/projects/ia64/sys/i386/i386/pmap.c#55 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_stat.c#8 integrate .. //depot/projects/ia64/sys/i386/isa/spigot.c#9 integrate .. //depot/projects/ia64/sys/ia64/ia64/machdep.c#88 integrate .. //depot/projects/ia64/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/ia64/sys/ia64/ia64/trap.c#61 integrate .. //depot/projects/ia64/sys/ia64/ia64/vm_machdep.c#33 integrate .. //depot/projects/ia64/sys/ia64/include/cpu.h#20 integrate .. //depot/projects/ia64/sys/ia64/include/ieeefp.h#4 integrate .. //depot/projects/ia64/sys/ia64/include/pcb.h#9 integrate .. //depot/projects/ia64/sys/kern/kern_sig.c#65 integrate .. //depot/projects/ia64/sys/kern/link_elf.c#21 integrate .. //depot/projects/ia64/sys/kern/subr_param.c#11 integrate .. //depot/projects/ia64/sys/kern/sys_pipe.c#38 integrate .. //depot/projects/ia64/sys/kern/sys_process.c#23 integrate .. //depot/projects/ia64/sys/kern/uipc_syscalls.c#38 integrate .. //depot/projects/ia64/sys/libkern/random.c#4 integrate .. //depot/projects/ia64/sys/modules/Makefile#58 integrate .. //depot/projects/ia64/sys/modules/netgraph/atm/Makefile#2 integrate .. //depot/projects/ia64/sys/modules/netgraph/atm/atmpif/Makefile#1 branch .. //depot/projects/ia64/sys/netgraph/atm/atmpif/ng_atmpif.c#1 branch .. //depot/projects/ia64/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#1 branch .. //depot/projects/ia64/sys/netgraph/atm/atmpif/ng_atmpif_var.h#1 branch .. //depot/projects/ia64/sys/netgraph/atm/ng_atmpif.h#1 branch .. //depot/projects/ia64/sys/pci/if_rl.c#40 integrate .. //depot/projects/ia64/sys/pci/if_rlreg.h#12 integrate .. //depot/projects/ia64/sys/pci/meteor.c#9 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/machdep.c#44 integrate .. //depot/projects/ia64/sys/sys/mman.h#7 integrate .. //depot/projects/ia64/sys/sys/pipe.h#7 integrate .. //depot/projects/ia64/sys/vm/uma_core.c#49 integrate .. //depot/projects/ia64/sys/vm/uma_int.h#15 integrate .. //depot/projects/ia64/sys/vm/vm_contig.c#18 integrate .. //depot/projects/ia64/sys/vm/vm_glue.c#33 integrate .. //depot/projects/ia64/sys/vm/vm_init.c#10 integrate .. //depot/projects/ia64/sys/vm/vm_kern.c#27 integrate .. //depot/projects/ia64/sys/vm/vm_kern.h#4 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#61 integrate .. //depot/projects/ia64/sys/vm/vm_map.h#24 integrate .. //depot/projects/ia64/sys/vm/vm_mmap.c#22 integrate .. //depot/projects/ia64/sys/vm/vm_unix.c#7 integrate .. //depot/projects/ia64/usr.bin/mklocale/mklocale.1#7 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidb/Makefile#2 integrate .. //depot/projects/ia64/usr.sbin/acpi/iasl/Makefile#2 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/advcap.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/advcap.h#2 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/config.c#9 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/dump.c#4 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/if.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/if.h#2 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/rrenum.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtadvd/timer.c#4 integrate .. //depot/projects/ia64/usr.sbin/rtsold/dump.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtsold/if.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtsold/probe.c#3 integrate .. //depot/projects/ia64/usr.sbin/rtsold/rtsold.c#4 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/install.c#21 integrate Differences ... ==== //depot/projects/ia64/contrib/isc-dhcp/client/dhclient.c#11 (text+ko) ==== @@ -42,7 +42,7 @@ #ifndef lint static char ocopyright[] = "$Id: dhclient.c,v 1.129.2.12 2002/11/07 23:26:38 dhankins Exp $ Copyright (c) 1995-2002 Internet Software Consortium. All rights reserved.\n" -"$FreeBSD: src/contrib/isc-dhcp/client/dhclient.c,v 1.30 2003/08/07 14:58:46 mbr Exp $\n"; +"$FreeBSD: src/contrib/isc-dhcp/client/dhclient.c,v 1.32 2003/08/10 22:01:37 mbr Exp $\n"; #endif /* not lint */ #include "dhcpd.h" @@ -263,7 +263,7 @@ /* Init some interface vars, enable polling */ #ifdef ENABLE_POLLING_MODE tmp -> forcediscover = 0; - tmp -> linkstate = 0; + tmp -> linkstate = HAVELINK; tmp -> polling = 1; #endif /* ifdef ENABLE_POLLING_MODE */ @@ -423,12 +423,13 @@ #ifdef __FreeBSD__ set_ieee80211 (ip); #endif +#ifdef ENABLE_POLLING_MODE ip -> forcediscover = 0; if (ip -> client -> config -> media != NULL) ip -> havemedia = 1; else ip -> havemedia = 0; - +#endif script_init (ip -> client, "PREINIT", (struct string_list *)0); if (ip -> client -> alias) @@ -472,8 +473,8 @@ /* Set up a timeout to start the initialization process. */ #ifdef ENABLE_POLLING_MODE - add_timeout (cur_time + random () % 5, - state_link, client, 0, 0); + add_timeout (cur_time + random () % 5 + 2, + state_polling, client, 0, 0); #else add_timeout (cur_time + random () % 5, state_reboot, client, 0, 0); @@ -1460,9 +1461,6 @@ } } - if (interface_active (client -> interface) == NOLINK) - return; - /* If we're supposed to increase the interval, do so. If it's currently zero (i.e., we haven't sent any packets yet), set it to one; otherwise, add to it a random number between @@ -1529,7 +1527,7 @@ struct client_lease *loop; struct client_lease *lp; - if (interface_active (client -> interface) == NOLINK) + if (client -> interface -> linkstate == NOLINK) return; loop = lp = client -> active; @@ -1565,7 +1563,7 @@ (long)(client -> active -> renewal - cur_time), "seconds"); #ifdef ENABLE_POLLING_MODE - /* Enable polling for thsi interface */ + /* Enable polling for this interface */ client -> interface -> polling = 1; #endif add_timeout (client -> active -> renewal, @@ -2859,9 +2857,10 @@ case S_STOPPED: break; } +#ifndef ENABLE_POLLING_MODE client -> state = S_INIT; - if (interface_active (ip) == HAVELINK) - state_reboot (client); + state_reboot (client); +#endif } } } @@ -3022,10 +3021,8 @@ client -> state = S_INIT; /* Set up a timeout to start the initialization process. */ - if (interface_active (ip) == HAVELINK) { - add_timeout (cur_time + random () % 5, - state_reboot, client, 0, 0); - } + add_timeout (cur_time + random () % 5, + state_reboot, client, 0, 0); } } return ISC_R_SUCCESS; @@ -3089,8 +3086,9 @@ break; case server_awaken: - if (interface_active (ip) == HAVELINK) - state_reboot (client); +#ifndef ENABLE_POLLING_MODE + state_reboot (client); +#endif break; } } @@ -3271,44 +3269,29 @@ */ if ((IFM_TYPE(ifmr.ifm_active) == IFM_IEEE80211) && (ifmr.ifm_status & IFM_ACTIVE)) { - if (ip -> havemedia && - ip -> client -> state != S_BOUND) - ip -> forcediscover = 1; return (HAVELINK); } } else { - /* - * Media settings can also be possible for normal - * devices. - */ if (ifmr.ifm_status & IFM_ACTIVE) { - if (ip -> havemedia && - ip -> client -> state != S_BOUND) - ip -> forcediscover = 1; return (HAVELINK); } } + /* + * We really have no link. + */ + return (NOLINK); } - /* - * If dhclient.conf contains media settings, we cannot - * abort if the interface is not set to active mode. + * IFM_AVALID is not set. We cannot check + * the link state. Assume HAVELINK. */ - if (ip -> havemedia && ip -> client -> state != S_BOUND) - return (HAVELINK); - /* - * We really have no link. - */ - return (NOLINK); -#else /* ifdef __FreeBSD__ */ - +#endif /* Other OSs */ /* * Always return a successful link if the OS * is not supported. */ return (HAVELINK); -#endif /* Other OSs */ } #ifdef __FreeBSD__ @@ -3357,11 +3340,12 @@ } /* Check the state of the NICs if we have link */ -void state_link (cpp) +void state_polling (cpp) void *cpp; { struct interface_info *ip; struct client_state *client; + int result; for (ip = interfaces; ip; ip = ip -> next) { if (! ip -> polling) @@ -3375,7 +3359,18 @@ } #endif + result = interface_active (ip); /* + * If dhclient.conf contains media settings, we cannot + * abort if the interface is not set to active mode. + */ + if (ip -> havemedia && ip -> client -> state != S_BOUND) { + if (result == HAVELINK) + ip -> forcediscover = 1; + result = HAVELINK; + } + + /* * The last status of the interface tells us * the we've got no link ... */ @@ -3384,7 +3379,7 @@ * ... but we have now link. Let's send * requests. */ - if (interface_active (ip) == HAVELINK) { + if (result == HAVELINK) { #ifdef DEBUG if (ip -> havemedia) printf ("%s: Trying media settings on interface\n", @@ -3408,7 +3403,7 @@ ip -> linkstate = HAVELINK; } else { #ifdef DEBUG - printf ("%s: No Link on interface\n", ip -> name); + printf ("%s: No link on interface\n", ip -> name); #endif for (client = ip -> client; client; client = client -> next) { @@ -3423,7 +3418,7 @@ */ if (client -> state == S_INIT) { add_timeout (cur_time + (polling_interval + 1), - state_link, client, 0, 0); + state_polling, client, 0, 0); } } ip -> linkstate = NOLINK; @@ -3444,7 +3439,7 @@ * the we previously had link. */ if (ip -> linkstate == HAVELINK && doinitcheck) { - if (interface_active (ip) == NOLINK) { + if (result == NOLINK) { /* * We lost link on the interface, or it isn't * associated anymore. ==== //depot/projects/ia64/contrib/isc-dhcp/common/dispatch.c#5 (text+ko) ==== @@ -44,7 +44,7 @@ #ifndef lint static char copyright[] = "$Id: dispatch.c,v 1.63.2.3 2002/11/17 02:26:57 dhankins Exp $ Copyright (c) 1995-2002 The Internet Software Consortium. All rights reserved.\n" -"$FreeBSD: src/contrib/isc-dhcp/common/dispatch.c,v 1.3 2003/07/28 11:49:07 mbr Exp $\n"; +"$FreeBSD: src/contrib/isc-dhcp/common/dispatch.c,v 1.4 2003/08/10 22:01:37 mbr Exp $\n"; #endif /* not lint */ #include "dhcpd.h" @@ -115,7 +115,7 @@ tvp = process_outstanding_timeouts (&tv); #ifdef ENABLE_POLLING_MODE GET_TIME (&cur_time); - add_timeout(cur_time + polling_interval, state_link, 0, 0, 0); + add_timeout(cur_time + polling_interval, state_polling, 0, 0, 0); tvp_new = process_outstanding_timeouts(&tv); if (tvp != NULL && (tvp -> tv_sec > tvp_new -> tv_sec)) tvp = tvp_new; ==== //depot/projects/ia64/contrib/isc-dhcp/includes/dhcpd.h#9 (text+ko) ==== @@ -40,7 +40,7 @@ * see ``http://www.vix.com''. To learn more about Nominum, Inc., see * ``http://www.nominum.com''. * - * $FreeBSD: src/contrib/isc-dhcp/includes/dhcpd.h,v 1.6 2003/08/07 14:58:46 mbr Exp $ + * $FreeBSD: src/contrib/isc-dhcp/includes/dhcpd.h,v 1.7 2003/08/10 22:01:37 mbr Exp $ */ #ifndef __CYGWIN32__ @@ -1864,7 +1864,7 @@ void state_reboot PROTO ((void *)); #ifdef ENABLE_POLLING_MODE -void state_link PROTO (()); +void state_polling PROTO (()); void state_background PROTO ((void *)); #endif void state_init PROTO ((void *)); ==== //depot/projects/ia64/etc/network.subr#8 (text+ko) ==== @@ -22,7 +22,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/network.subr,v 1.152 2003/08/08 17:43:58 ume Exp $ +# $FreeBSD: src/etc/network.subr,v 1.153 2003/08/11 20:32:00 mbr Exp $ # # @@ -299,6 +299,24 @@ esac done + case ${pccard_ifconfig} in + [Dd][Hh][Cc][Pp]) + for _if in ${removable_interfaces} ; do + _test_if=`ifconfig ${_if} 2>&1` + case "$_test_if" in + "ifconfig: interface $_if does not exist") + ;; + *) + _dhcplist="${_dhcplist}${_aprefix}${_if}" + [ -z "$_aprefix" ] && _aprefix=' ' + ;; + esac + done + ;; + *) + ;; + esac + case "$type" in nodhcp) echo $_nodhcplist ==== //depot/projects/ia64/etc/pccard_ether#9 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh - # -# $FreeBSD: src/etc/pccard_ether,v 1.32 2003/06/16 09:11:29 maxim Exp $ +# $FreeBSD: src/etc/pccard_ether,v 1.33 2003/08/11 20:32:00 mbr Exp $ # # pccard_ether interfacename [start|stop] [ifconfig option] # @@ -12,11 +12,40 @@ pidfile="/var/run/dhclient.${interface}.pid" elif [ -s /var/run/dhcpc.${interface}.pid ]; then pidfile="/var/run/dhcpc.${interface}.pid" + elif [ -s /var/run/dhclient.pid ]; then + # If dhclient is already running, record + # it's interfaces. + if [ -x /usr/bin/grep ]; then + eval _active_list=\"`/bin/ps -axwww | \ + /usr/bin/grep dhclient | \ + /usr/bin/grep -v grep | \ + /usr/bin/sed -e 's|^.*dhclient||' | \ + /usr/bin/awk '{for (i=1;i<=NF;i++) \ + { if ($i~/[a-zA-Z].[0-9]$/) \ + { printf(" %s",$i) } }}'` \ + \" + fi + + _aprefix= + for _if in _active_list ; do + _test_if=`ifconfig ${_if} 2>&1` + case "$_test_if" in + "ifconfig: interface $_if does not exist") + ;; + *) + _dhcplist="${_dhcplist}${_aprefix}${_if}" + [ -z "$_aprefix" ] && _aprefix=' ' + ;; + esac + done + + pidfile="/var/run/dhclient.pid" else return fi kill `cat ${pidfile}` rm -f ${pidfile} + sh `/etc/rc.d/dhclient start` } start_dhcp() { @@ -35,7 +64,7 @@ pidfile="/var/run/dhclient.${interface}.pid" dhclient_flags="${dhclient_flags} -pf ${pidfile}" fi - ${dhclient_program} ${dhclient_flags} ${interface} + ${dhclient_program} ${dhclient_flags} $_dhcplist ${interface} else echo "${dhclient_program}: DHCP client software not available" fi ==== //depot/projects/ia64/etc/sendmail/Makefile#12 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.19 (Berkeley) 1/14/97 -# $FreeBSD: src/etc/sendmail/Makefile,v 1.26 2003/07/10 04:53:32 gshapiro Exp $ +# $FreeBSD: src/etc/sendmail/Makefile,v 1.27 2003/08/10 20:48:59 gshapiro Exp $ M4= m4 CHMOD= chmod @@ -60,7 +60,7 @@ all: ${ALL} -install distribution: ${ALL} +install distribution: .if defined(SENDMAIL_MC) && defined(SENDMAIL_CF) @echo ">>> ERROR: Both SENDMAIL_MC and SENDMAIL_CF cannot be set" @false ==== //depot/projects/ia64/gnu/usr.bin/send-pr/send-pr.sh#5 (text+ko) ==== @@ -20,7 +20,7 @@ # along with GNU GNATS; see the file COPYING. If not, write to # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. # -# $FreeBSD: src/gnu/usr.bin/send-pr/send-pr.sh,v 1.31 2003/03/18 11:12:14 des Exp $ +# $FreeBSD: src/gnu/usr.bin/send-pr/send-pr.sh,v 1.33 2003/08/11 19:41:14 ceri Exp $ # The version of this send-pr. VERSION=3.113 ==== //depot/projects/ia64/lib/Makefile#34 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.167 2003/08/08 21:16:06 deischen Exp $ +# $FreeBSD: src/lib/Makefile,v 1.168 2003/08/09 15:29:52 deischen Exp $ # To satisfy shared library or ELF linkage when only the libraries being # built are visible: @@ -63,15 +63,6 @@ _libncp= libncp _libsmb= libsmb _libvgl= libvgl -.if !defined(NOLIBPTHREAD) -_libpthread= libpthread -.endif -.endif - -.if ${MACHINE_ARCH} == "ia64" -.if !defined(NOLIBPTHREAD) -_libpthread= libpthread -.endif .endif .if ${MACHINE_ARCH} == "alpha" @@ -82,6 +73,9 @@ .if ${MACHINE_ARCH} == "amd64" _libncp= libncp _libsmb= libsmb +.endif + +.if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "sparc64" .if !defined(NOLIBPTHREAD) _libpthread= libpthread .endif ==== //depot/projects/ia64/lib/libc/alpha/sys/Makefile.inc#4 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/lib/libc/alpha/sys/Makefile.inc,v 1.11 2002/05/23 23:51:56 jake Exp $ +# $FreeBSD: src/lib/libc/alpha/sys/Makefile.inc,v 1.12 2003/08/11 07:14:06 bms Exp $ MDASM+= Ovfork.S brk.S cerror.S exect.S fork.S pipe.S ptrace.S \ sbrk.S setlogin.S sigreturn.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/amd64/sys/Makefile.inc#2 (text+ko) ==== @@ -1,12 +1,12 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp -# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.26 2003/04/30 18:17:07 peter Exp $ +# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.27 2003/08/11 07:14:06 bms Exp $ MDASM= vfork.S brk.S cerror.S exect.S pipe.S ptrace.S reboot.S sbrk.S \ setlogin.S sigreturn.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/i386/sys/Makefile.inc#5 (text+ko) ==== @@ -1,5 +1,5 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp -# $FreeBSD: src/lib/libc/i386/sys/Makefile.inc,v 1.25 2002/11/18 09:50:55 ru Exp $ +# $FreeBSD: src/lib/libc/i386/sys/Makefile.inc,v 1.26 2003/08/11 07:14:06 bms Exp $ SRCS+= i386_clr_watch.c i386_get_ioperm.c i386_get_ldt.c i386_set_ioperm.c \ i386_set_ldt.c i386_set_watch.c i386_vm86.c @@ -9,7 +9,7 @@ # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/ia64/gen/fpgetmask.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libc/ia64/gen/fpgetmask.c,v 1.2 2002/03/22 21:52:14 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/ia64/gen/fpgetmask.c,v 1.3 2003/08/09 17:07:24 marcel Exp $"); #include <sys/types.h> #include <ieeefp.h> @@ -36,5 +36,5 @@ u_int64_t fpsr; __asm __volatile("mov %0=ar.fpsr" : "=r" (fpsr)); - return (fpsr & 0x1f) ^ 0x1f; + return (~fpsr & 0x3f); } ==== //depot/projects/ia64/lib/libc/ia64/gen/fpsetmask.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libc/ia64/gen/fpsetmask.c,v 1.2 2002/03/22 21:52:14 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/ia64/gen/fpsetmask.c,v 1.3 2003/08/09 17:07:24 marcel Exp $"); #include <sys/types.h> #include <ieeefp.h> @@ -37,8 +37,8 @@ u_int64_t oldmask; __asm __volatile("mov %0=ar.fpsr" : "=r" (fpsr)); - oldmask = (fpsr & 0x1f) ^ 0x1f; - fpsr = (fpsr & ~0x1f) | (mask ^ 0x1f); + oldmask = ~fpsr & 0x3f; + fpsr = (fpsr & ~0x3f) | (~mask & 0x3f); __asm __volatile("mov ar.fpsr=%0" :: "r" (fpsr)); - return oldmask; + return (oldmask); } ==== //depot/projects/ia64/lib/libc/ia64/sys/Makefile.inc#5 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/lib/libc/ia64/sys/Makefile.inc,v 1.7 2003/08/02 00:49:36 marcel Exp $ +# $FreeBSD: src/lib/libc/ia64/sys/Makefile.inc,v 1.8 2003/08/11 07:14:06 bms Exp $ MDASM+= Ovfork.S brk.S cerror.S exect.S fork.S getcontext.S pipe.S ptrace.S \ sbrk.S setlogin.S sigreturn.S swapcontext.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/locale/Makefile.inc#15 (text+ko) ==== @@ -1,5 +1,5 @@ # from @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/libc/locale/Makefile.inc,v 1.45 2003/07/29 07:52:44 ache Exp $ +# $FreeBSD: src/lib/libc/locale/Makefile.inc,v 1.47 2003/08/10 11:34:35 tjr Exp $ # locale sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/locale ${.CURDIR}/locale @@ -31,7 +31,7 @@ wcsrtombs.3 wcstod.3 wcstol.3 \ wctrans.3 wctype.3 wcwidth.3 MAN+= euc.4 utf2.4 -MAN+= utf8.5 +MAN+= big5.5 gb18030.5 gbk.5 mskanji.5 utf8.5 MLINKS+=btowc.3 wctob.3 MLINKS+=isdigit.3 isnumber.3 ==== //depot/projects/ia64/lib/libc/locale/multibyte.3#8 (text+ko) ==== @@ -33,9 +33,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)multibyte.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/multibyte.3,v 1.19 2003/02/06 11:04:46 charnier Exp $ +.\" $FreeBSD: src/lib/libc/locale/multibyte.3,v 1.21 2003/08/10 11:38:28 tjr Exp $ .\" -.Dd October 6, 2002 +.Dd August 10, 2003 .Dt MULTIBYTE 3 .Os .Sh NAME @@ -226,6 +226,7 @@ .Xr mbrlen 3 , .Xr mbrtowc 3 , .Xr mbrune 3 , +.Xr mbsinit 3 , .Xr mbsrtowcs 3 , .Xr rune 3 , .Xr setlocale 3 , @@ -233,6 +234,10 @@ .Xr wcsrtombs 3 , .Xr euc 4 , .Xr utf2 4 , +.Xr big5 5 , +.Xr gb18030 5 , +.Xr gbk 5 , +.Xr mskanji 5 , .Xr utf8 5 .Sh STANDARDS The ==== //depot/projects/ia64/lib/libc/powerpc/sys/Makefile.inc#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/lib/libc/powerpc/sys/Makefile.inc,v 1.1 2002/12/04 07:25:14 grehan Exp $ +# $FreeBSD: src/lib/libc/powerpc/sys/Makefile.inc,v 1.2 2003/08/11 07:14:07 bms Exp $ MDASM+= brk.S cerror.S exect.S pipe.S ptrace.S sbrk.S setlogin.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/sparc64/sys/Makefile.inc#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/sparc64/sys/Makefile.inc,v 1.8 2002/09/03 14:55:29 jake Exp $ +# $FreeBSD: src/lib/libc/sparc64/sys/Makefile.inc,v 1.9 2003/08/11 07:14:07 bms Exp $ SRCS+= __sparc_sigtramp_setup.c \ __sparc_utrap.c \ @@ -16,7 +16,7 @@ # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/ia64/lib/libc/stdlib/random.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ static char sccsid[] = "@(#)random.c 8.2 (Berkeley) 5/19/95"; #endif /* LIBC_SCCS and not lint */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libc/stdlib/random.c,v 1.22 2003/02/04 11:24:08 ache Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/random.c,v 1.23 2003/08/10 17:49:55 ache Exp $"); #include "namespace.h" #include <sys/time.h> /* for srandomdev() */ @@ -142,7 +142,11 @@ */ #define MAX_TYPES 5 /* max number of types above */ -#define NSHUFF 100 /* to drop part of seed -> 1st value correlation */ +#ifdef USE_WEAK_SEEDING +#define NSHUFF 0 +#else /* !USE_WEAK_SEEDING */ +#define NSHUFF 50 /* to drop some "seed -> 1st value" linearity */ +#endif /* !USE_WEAK_SEEDING */ static long degrees[MAX_TYPES] = { DEG_0, DEG_1, DEG_2, DEG_3, DEG_4 }; static long seps [MAX_TYPES] = { SEP_0, SEP_1, SEP_2, SEP_3, SEP_4 }; ==== //depot/projects/ia64/lib/libc/sys/Makefile.inc#16 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.3 (Berkeley) 10/24/94 -# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.104 2003/08/09 03:23:24 bms Exp $ +# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.105 2003/08/11 07:14:07 bms Exp $ # sys sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/sys ${.CURDIR}/sys @@ -69,8 +69,8 @@ kldfind.2 kldfirstmod.2 kldload.2 kldnext.2 kldstat.2 kldsym.2 \ kldunload.2 kqueue.2 kse.2 ktrace.2 link.2 lio_listio.2 listen.2 \ lseek.2 \ - madvise.2 mincore.2 minherit.2 mkdir.2 mkfifo.2 mknod.2 mlock.2 mmap.2 \ - modfind.2 modnext.2 modstat.2 mount.2 \ + madvise.2 mincore.2 minherit.2 mkdir.2 mkfifo.2 mknod.2 mlock.2 \ + mlockall.2 mmap.2 modfind.2 modnext.2 modstat.2 mount.2 \ mprotect.2 msync.2 munmap.2 nanosleep.2 ntp_adjtime.2 ntp_gettime.2 \ nfssvc.2 open.2 pathconf.2 pipe.2 poll.2 profil.2 ptrace.2 quotactl.2 \ read.2 readlink.2 reboot.2 recv.2 rename.2 revoke.2 rfork.2 rmdir.2 \ @@ -121,6 +121,7 @@ kse.2 kse_wakeup.2 kse.2 kse_thr_interrupt.2 MLINKS+=madvise.2 posix_madvise.2 MLINKS+=mlock.2 munlock.2 +MLINKS+=mlockall.2 munlockall.2 MLINKS+=modnext.2 modfnext.2 MLINKS+=mount.2 unmount.2 MLINKS+=pathconf.2 fpathconf.2 ==== //depot/projects/ia64/lib/libc/sys/ptrace.2#7 (text+ko) ==== @@ -1,8 +1,8 @@ -.\" $FreeBSD: src/lib/libc/sys/ptrace.2,v 1.31 2002/12/19 09:40:25 ru Exp $ +.\" $FreeBSD: src/lib/libc/sys/ptrace.2,v 1.32 2003/08/11 13:13:46 iedowse Exp $ .\" $NetBSD: ptrace.2,v 1.2 1995/02/27 12:35:37 cgd Exp $ .\" .\" This file is in the public domain. -.Dd January 20, 1996 +.Dd August 11, 2003 .Dt PTRACE 2 .Os .Sh NAME @@ -162,7 +162,8 @@ The .Fa data argument -is not used. +provides a signal number to be delivered to the traced process as it +resumes execution, or 0 if no signal is to be sent. .It Dv PT_KILL The traced process terminates, as if .Dv PT_CONTINUE ==== //depot/projects/ia64/lib/libpthread/thread/thr_cancel.c#13 (text+ko) ==== @@ -1,6 +1,6 @@ /* * David Leonard <d@openbsd.org>, 1999. Public domain. - * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.27 2003/08/05 22:46:00 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.28 2003/08/10 22:07:28 davidxu Exp $ */ #include <sys/errno.h> #include <pthread.h> @@ -259,6 +259,8 @@ void _thr_enter_cancellation_point(struct pthread *thread) { + if (!_kse_isthreaded()) + return; /* Look for a cancellation before we block: */ THR_SCHED_LOCK(thread, thread); testcancel(thread); @@ -269,6 +271,8 @@ void _thr_leave_cancellation_point(struct pthread *thread) { + if (!_kse_isthreaded()) + return; THR_SCHED_LOCK(thread, thread); thread->cancelflags &= ~THR_AT_CANCEL_POINT; /* Look for a cancellation after we unblock: */ ==== //depot/projects/ia64/lib/libpthread/thread/thr_fork.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_fork.c,v 1.30 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_fork.c,v 1.31 2003/08/10 22:20:41 davidxu Exp $ */ #include <errno.h> #include <string.h> @@ -37,6 +37,7 @@ #include <unistd.h> #include <fcntl.h> #include <pthread.h> +#include <sys/signalvar.h> #include "thr_private.h" __weak_reference(_fork, fork); @@ -44,15 +45,35 @@ pid_t _fork(void) { + sigset_t sigset, oldset; struct pthread *curthread; pid_t ret; + if (!_kse_isthreaded()) + return (__sys_fork()); + curthread = _get_curthread(); + /* + * Masks all signals until we reach a safe point in + * _kse_single_thread, and the signal masks will be + * restored in that function, for M:N thread, all + * signals were already masked in kernel atomically, + * we only need to do this for bound thread. + */ + if (curthread->attr.flags & PTHREAD_SCOPE_SYSTEM) { + SIGFILLSET(sigset); + __sys_sigprocmask(SIG_SETMASK, &sigset, &oldset); + } /* Fork a new process: */ - if ((ret = __sys_fork()) == 0) + if ((ret = __sys_fork()) == 0) { /* Child process */ _kse_single_thread(curthread); + /* Kernel signal mask is restored in _kse_single_thread */ + } else { + if (curthread->attr.flags & PTHREAD_SCOPE_SYSTEM) + __sys_sigprocmask(SIG_SETMASK, &oldset, NULL); + } /* Return the process ID: */ return (ret); ==== //depot/projects/ia64/lib/libpthread/thread/thr_init.c#15 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_init.c,v 1.58 2003/08/05 22:46:00 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_init.c,v 1.59 2003/08/10 22:30:20 davidxu Exp $ */ /* Allocate space for global thread variables here: */ @@ -309,8 +309,6 @@ _kcb_set(_thr_initial->kse->k_kcb); _tcb_set(_thr_initial->kse->k_kcb, _thr_initial->tcb); _thr_initial->kse->k_flags |= KF_INITIALIZED; - - _thr_rtld_init(); } /* ==== //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#29 (text+ko) ==== @@ -33,7 +33,7 @@ * */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.83 2003/08/08 22:20:59 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.84 2003/08/10 22:30:20 davidxu Exp $"); #include <sys/types.h> #include <sys/kse.h> @@ -213,16 +213,17 @@ kse_critical_t crit; int i; - + if (__isthreaded) { + _thr_rtld_fini(); + _thr_signal_deinit(); + } + __isthreaded = 0; /* - * Disable upcalls and clear the threaded flag. - * XXX - I don't think we need to disable upcalls after a fork(). - * but it doesn't hurt. - */ - crit = _kse_critical_enter(); - __isthreaded = 0; + * Restore signal mask early, so any memory problems could + * dump core. + */ + sigprocmask(SIG_SETMASK, &curthread->sigmask, NULL); active_threads = 1; - _thr_signal_deinit(); /* * Enter a loop to remove and free all threads other than @@ -359,11 +360,18 @@ _kse_initial = NULL; _libpthread_init(curthread); #else >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308120430.h7C4Uf2M005708>