Date: Wed, 23 Jul 2003 18:30:58 -0700 (PDT) From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 34907 for review Message-ID: <200307240130.h6O1UwrN054874@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=34907 Change 34907 by peter@peter_daintree on 2003/07/23 18:30:32 IFC @34906 Affected files ... .. //depot/projects/hammer/UPDATING#14 integrate .. //depot/projects/hammer/contrib/tar/src/tar.c#2 integrate .. //depot/projects/hammer/etc/defaults/pccard.conf#9 integrate .. //depot/projects/hammer/lib/libc/amd64/Makefile.inc#2 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/Makefile.inc#12 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpgetmask.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpgetprec.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpgetround.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpgetsticky.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpsetmask.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpsetprec.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpsetround.c#3 integrate .. //depot/projects/hammer/lib/libc/amd64/gen/fpsetsticky.c#3 integrate .. //depot/projects/hammer/lib/libc/sys/connect.2#4 integrate .. //depot/projects/hammer/lib/libfetch/Makefile#8 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_cancel.c#11 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_cond.c#13 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_detach.c#5 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#18 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mutex.c#8 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#14 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_resume_np.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sig.c#16 integrate .. //depot/projects/hammer/lib/msun/Makefile#4 integrate .. //depot/projects/hammer/lib/msun/src/e_acos.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_asin.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_atan2.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_exp.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_fmod.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_log.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_log10.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_remainder.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_scalb.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_sqrt.c#2 integrate .. //depot/projects/hammer/lib/msun/src/get_hw_float.c#2 delete .. //depot/projects/hammer/lib/msun/src/math_private.h#4 integrate .. //depot/projects/hammer/lib/msun/src/s_atan.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_ceil.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_copysign.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_copysignf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_cos.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_finite.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_floor.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_ilogb.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_rint.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_scalbn.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_significand.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_sin.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_tan.c#2 integrate .. //depot/projects/hammer/release/Makefile#33 integrate .. //depot/projects/hammer/release/amd64/dokern.sh#3 delete .. //depot/projects/hammer/release/amd64/fixit_crunch.conf#3 delete .. //depot/projects/hammer/release/i386/mkisoimages.sh#2 integrate .. //depot/projects/hammer/sbin/devd/devd.cc#6 integrate .. //depot/projects/hammer/sbin/devd/token.l#3 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw.8#11 integrate .. //depot/projects/hammer/share/man/man4/ath_hal.4#3 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/npx.4#2 integrate .. //depot/projects/hammer/share/man/man7/Makefile#4 integrate .. //depot/projects/hammer/share/man/man7/release.7#10 integrate .. //depot/projects/hammer/share/man/man7/rescue.7#1 branch .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#46 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#28 integrate .. //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#8 integrate .. //depot/projects/hammer/sys/amd64/include/ieeefp.h#7 integrate .. //depot/projects/hammer/sys/amd64/include/npx.h#9 integrate .. //depot/projects/hammer/sys/conf/files#25 integrate .. //depot/projects/hammer/sys/conf/files.alpha#9 integrate .. //depot/projects/hammer/sys/conf/files.i386#15 integrate .. //depot/projects/hammer/sys/conf/files.pc98#16 integrate .. //depot/projects/hammer/sys/conf/kern.post.mk#11 integrate .. //depot/projects/hammer/sys/conf/kern.pre.mk#11 integrate .. //depot/projects/hammer/sys/conf/kmod.mk#7 integrate .. //depot/projects/hammer/sys/conf/newvers.sh#6 integrate .. //depot/projects/hammer/sys/conf/options#21 integrate .. //depot/projects/hammer/sys/conf/options.i386#12 integrate .. //depot/projects/hammer/sys/conf/options.pc98#12 integrate .. //depot/projects/hammer/sys/dev/fxp/if_fxp.c#22 integrate .. //depot/projects/hammer/sys/dev/ie/if_ie.c#6 integrate .. //depot/projects/hammer/sys/dev/lnc/if_lnc.c#5 integrate .. //depot/projects/hammer/sys/dev/patm/if_patm_tx.c#2 integrate .. //depot/projects/hammer/sys/dev/rp/rp.c#5 integrate .. //depot/projects/hammer/sys/dev/usb/usb_mem.c#4 integrate .. //depot/projects/hammer/sys/gnu/i386/fpemul/Changelog#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/README#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/control_w.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/div_small.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/errors.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/exception.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_arith.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_asm.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_aux.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_emu.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_entry.c#3 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_etc.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_proto.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_system.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_trig.c#3 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/get_address.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/load_store.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/math_emu.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_2xm1.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_atan.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_div.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_l2.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_mul64.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_sin.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/poly_tan.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/polynomial.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_add_sub.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_compare.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_constant.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_constant.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_div.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_ld_str.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_mul.c#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_norm.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_round.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_u_add.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_u_div.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_u_mul.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/reg_u_sub.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/status_w.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/version.h#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/wm_shrx.s#2 delete .. //depot/projects/hammer/sys/gnu/i386/fpemul/wm_sqrt.s#2 delete .. //depot/projects/hammer/sys/i386/conf/NOTES#18 integrate .. //depot/projects/hammer/sys/i386/i386/math_emu.h#2 delete .. //depot/projects/hammer/sys/i386/i386/math_emulate.c#4 delete .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#11 integrate .. //depot/projects/hammer/sys/i386/i386/mpapic.c#5 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#15 integrate .. //depot/projects/hammer/sys/i386/i386/trap.c#16 integrate .. //depot/projects/hammer/sys/i386/include/apic.h#5 integrate .. //depot/projects/hammer/sys/i386/include/asm.h#5 integrate .. //depot/projects/hammer/sys/i386/include/cpufunc.h#5 integrate .. //depot/projects/hammer/sys/i386/include/frame.h#2 integrate .. //depot/projects/hammer/sys/i386/isa/npx.c#11 integrate .. //depot/projects/hammer/sys/i4b/capi/iavc/iavc.h#2 integrate .. //depot/projects/hammer/sys/i4b/capi/iavc/iavc_lli.c#4 integrate .. //depot/projects/hammer/sys/ia64/include/_regset.h#3 integrate .. //depot/projects/hammer/sys/kern/init_main.c#15 integrate .. //depot/projects/hammer/sys/kern/kern_malloc.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_umtx.c#8 integrate .. //depot/projects/hammer/sys/kern/md5c.c#4 integrate .. //depot/projects/hammer/sys/kern/subr_autoconf.c#3 integrate .. //depot/projects/hammer/sys/kern/subr_mbuf.c#15 integrate .. //depot/projects/hammer/sys/kern/subr_prf.c#12 integrate .. //depot/projects/hammer/sys/kern/tty_subr.c#4 integrate .. //depot/projects/hammer/sys/kern/vfs_cluster.c#11 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#21 integrate .. //depot/projects/hammer/sys/modules/Makefile#24 integrate .. //depot/projects/hammer/sys/modules/fpu/Makefile#2 delete .. //depot/projects/hammer/sys/modules/gnufpu/Makefile#2 delete .. //depot/projects/hammer/sys/netatm/atm_cm.c#6 integrate .. //depot/projects/hammer/sys/netatm/atm_device.c#5 integrate .. //depot/projects/hammer/sys/netatm/atm_if.c#6 integrate .. //depot/projects/hammer/sys/netatm/atm_if.h#4 integrate .. //depot/projects/hammer/sys/netatm/atm_socket.c#4 integrate .. //depot/projects/hammer/sys/netatm/atm_subr.c#6 integrate .. //depot/projects/hammer/sys/netatm/ipatm/ipatm_if.c#5 integrate .. //depot/projects/hammer/sys/netatm/ipatm/ipatm_load.c#4 integrate .. //depot/projects/hammer/sys/netatm/ipatm/ipatm_vcm.c#4 integrate .. //depot/projects/hammer/sys/netatm/sigpvc/sigpvc_if.c#3 integrate .. //depot/projects/hammer/sys/netatm/spans/spans_arp.c#4 integrate .. //depot/projects/hammer/sys/netatm/spans/spans_cls.c#4 integrate .. //depot/projects/hammer/sys/netatm/spans/spans_if.c#3 integrate .. //depot/projects/hammer/sys/netatm/uni/sscf_uni.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/sscop.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/uniarp.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/uniarp_cache.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/uniarp_vcm.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/uniip.c#5 integrate .. //depot/projects/hammer/sys/netatm/uni/unisig_decode.c#5 integrate .. //depot/projects/hammer/sys/netatm/uni/unisig_if.c#3 integrate .. //depot/projects/hammer/sys/netatm/uni/unisig_subr.c#4 integrate .. //depot/projects/hammer/sys/netatm/uni/unisig_vc_state.c#4 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#13 integrate .. //depot/projects/hammer/sys/pc98/conf/GENERIC#10 integrate .. //depot/projects/hammer/sys/pc98/conf/NOTES#8 integrate .. //depot/projects/hammer/sys/sys/cdefs.h#9 integrate .. //depot/projects/hammer/sys/sys/systm.h#9 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#14 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#25 integrate .. //depot/projects/hammer/tools/tools/tinderbox/Makefile#3 integrate .. //depot/projects/hammer/tools/tools/tinderbox/ada.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/current.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/default.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/dsa.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/dwp.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/releng_4.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/stanley.rc#1 branch .. //depot/projects/hammer/tools/tools/tinderbox/tbmaster.1#3 integrate .. //depot/projects/hammer/tools/tools/tinderbox/tbmaster.pl#10 integrate .. //depot/projects/hammer/tools/tools/tinderbox/tinderbox.1#3 integrate .. //depot/projects/hammer/usr.bin/fetch/Makefile#5 integrate .. //depot/projects/hammer/usr.bin/sed/TEST/sed.test#2 integrate .. //depot/projects/hammer/usr.bin/sed/sed.1#3 integrate Differences ... ==== //depot/projects/hammer/UPDATING#14 (text+ko) ==== @@ -17,6 +17,18 @@ developers choose to disable these features on build machines to maximize performance. +20030722: + FPU-less support has been removed from FreeBSD. Chances are you won't + notice. 386+387 support should still work after this change, but + it is now a minimum requirement for the i386 port that you have real + FPU hardware. + +20030714: + Some people are having problems with changes related to /rescue. + If you are building -j N, you will need to define NO_RESCUE. Others + will need to define it if /rescue has issues with their environment. + People should report those issues to current@. + 20030711: gcc was upgraded to 3.3. You are advised to not build -DNOCLEAN across this point. Further, it might be a good idea to remove @@ -1314,4 +1326,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.258 2003/07/12 01:16:54 ceri Exp $ +$FreeBSD: src/UPDATING,v 1.259 2003/07/22 11:08:41 imp Exp $ ==== //depot/projects/hammer/contrib/tar/src/tar.c#2 (text+ko) ==== @@ -19,7 +19,7 @@ with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/tar/src/tar.c,v 1.2 2002/06/04 17:31:16 sobomax Exp $ */ +/* $FreeBSD: src/contrib/tar/src/tar.c,v 1.3 2003/07/24 00:04:01 peter Exp $ */ #include "system.h" @@ -549,7 +549,7 @@ /* Allocate a new argument array, and copy program name in it. */ new_argc = argc - 1 + strlen (argv[1]); - new_argv = xmalloc (new_argc * sizeof (char *)); + new_argv = xmalloc ((new_argc + 1) * sizeof (char *)); in = argv; out = new_argv; *out++ = *in++; @@ -577,6 +577,9 @@ while (in < argv + argc) *out++ = *in++; + /* And NULL terminate the argv[] array */ + *out++ = NULL; + /* Replace the old option list by the new one. */ argc = new_argc; ==== //depot/projects/hammer/etc/defaults/pccard.conf#9 (text+ko) ==== @@ -1,7 +1,7 @@ # # Default PCCARD configuration file # -# $FreeBSD: src/etc/defaults/pccard.conf,v 1.261 2003/07/19 05:40:06 imp Exp $ +# $FreeBSD: src/etc/defaults/pccard.conf,v 1.262 2003/07/22 21:23:01 dds Exp $ # # Please send new entries for this file to imp@freebsd.org. He likes to # review them before they are committed to make sure they are correct for @@ -609,7 +609,7 @@ # card version string. They should be distinguished by # other info. (such as additional information or OEM-ID/product-ID). -# Note: There are several revisions of the cardon the market. +# Note: There are several revisions of the card on the market. # Type A needs no "ether" line. # Type B needs "ether 0x110" line. # Type C needs "ether 0xff0" line. @@ -952,6 +952,13 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# Billionton LM5LT-10N +# Works as an Ethernet card +card "PCMCIA 10+56Combo" "LM5LT-10N" + config auto "ed" ? + insert /etc/pccard_ether $device start + remove /etc/pccard_ether $device stop + # EXPsys PCMCIA Ethernet Combo, Relia PCMCIA Ethernet card "PCMCIA LAN" "Ethernet" config auto "ed" ? ==== //depot/projects/hammer/lib/libc/amd64/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD$ +# $FreeBSD: src/lib/libc/amd64/Makefile.inc,v 1.1 2003/07/22 06:34:57 peter Exp $ # # Machine dependent definitions for the amd64 architecture. # ==== //depot/projects/hammer/lib/libc/amd64/gen/Makefile.inc#12 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/libc/amd64/gen/Makefile.inc,v 1.22 2003/07/19 04:41:08 deischen Exp $ +# $FreeBSD: src/lib/libc/amd64/gen/Makefile.inc,v 1.23 2003/07/22 06:46:17 peter Exp $ SRCS+= _setjmp.S setjmp.S sigsetjmp.S \ fabs.S modf.S \ @@ -7,4 +7,3 @@ makecontext.c signalcontext.c \ fpgetmask.c fpsetmask.c fpgetprec.c fpsetprec.c \ fpgetround.c fpsetround.c fpgetsticky.c fpsetsticky.c - ==== //depot/projects/hammer/lib/libc/amd64/gen/fpgetmask.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpgetmask.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpgetprec.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpgetprec.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpgetround.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpgetround.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpgetsticky.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpgetsticky.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpsetmask.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpsetmask.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpsetprec.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpsetprec.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpsetround.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpsetround.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/amd64/gen/fpsetsticky.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD$ */ +/* $FreeBSD: src/lib/libc/amd64/gen/fpsetsticky.c,v 1.1 2003/07/22 06:46:17 peter Exp $ */ #define __IEEEFP_NOINLINES__ 1 #include <ieeefp.h> ==== //depot/projects/hammer/lib/libc/sys/connect.2#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)connect.2 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/sys/connect.2,v 1.23 2003/04/01 20:25:46 ceri Exp $ +.\" $FreeBSD: src/lib/libc/sys/connect.2,v 1.24 2003/07/23 22:00:08 dds Exp $ .\" .Dd June 4, 1993 .Dt CONNECT 2 @@ -121,6 +121,12 @@ The socket is non-blocking and a previous connection attempt has not yet been completed. +.It Bq Er EACCES +An attempt is made to connect to a broadcast address (obtained through the +.Dv INADDR_BROADCAST +constant or the +.Dv INADDR_NONE +return value) through a socket that does not provide broadcast functionality. .El .Pp The following errors are specific to connecting names in the UNIX domain. ==== //depot/projects/hammer/lib/libfetch/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.41 2003/05/19 15:51:59 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.42 2003/07/22 13:54:31 ru Exp $ LIB= fetch CFLAGS+= -I. @@ -10,6 +10,7 @@ CLEANFILES= ftperr.h httperr.h .if !defined(NOCRYPT) && !defined(NO_OPENSSL) +DISTRIBUTION= crypto CFLAGS+= -DWITH_SSL DPADD= ${LIBSSL} ${LIBCRYPTO} LDADD= -lssl -lcrypto ==== //depot/projects/hammer/lib/libpthread/thread/thr_cancel.c#11 (text+ko) ==== @@ -1,6 +1,6 @@ /* * David Leonard <d@openbsd.org>, 1999. Public domain. - * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.25 2003/07/17 23:02:29 davidxu Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.26 2003/07/23 02:11:07 deischen Exp $ */ #include <sys/errno.h> #include <pthread.h> @@ -20,6 +20,7 @@ { struct pthread *curthread = _get_curthread(); struct pthread *joinee = NULL; + struct kse_mailbox *kmbx = NULL; int ret; if ((ret = _thr_ref_add(curthread, pthread, /*include dead*/0)) == 0) { @@ -65,7 +66,7 @@ /* Interrupt and resume: */ pthread->interrupted = 1; pthread->cancelflags |= THR_CANCELLING; - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); break; case PS_JOIN: @@ -73,7 +74,7 @@ joinee = pthread->join_status.thread; pthread->join_status.thread = NULL; pthread->cancelflags |= THR_CANCELLING; - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); if ((joinee != NULL) && (pthread->kseg == joinee->kseg)) { /* Remove the joiner from the joinee. */ @@ -97,7 +98,7 @@ */ pthread->interrupted = 1; pthread->cancelflags |= THR_CANCEL_NEEDED; - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); pthread->continuation = finish_cancellation; break; @@ -120,6 +121,8 @@ */ THR_SCHED_UNLOCK(curthread, pthread); _thr_ref_delete(curthread, pthread); + if (kmbx != NULL) + kse_wakeup(kmbx); if ((joinee != NULL) && (_thr_ref_add(curthread, joinee, /* include dead */1) == 0)) { ==== //depot/projects/hammer/lib/libpthread/thread/thr_cond.c#13 (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_cond.c,v 1.47 2003/07/18 02:46:30 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cond.c,v 1.48 2003/07/23 02:11:07 deischen Exp $ */ #include <stdlib.h> #include <errno.h> @@ -584,6 +584,7 @@ { struct pthread *curthread = _get_curthread(); struct pthread *pthread; + struct kse_mailbox *kmbx; int rval = 0; THR_ASSERT(curthread->locklevel == 0, @@ -619,8 +620,10 @@ (pthread->active_priority > curthread->active_priority)) curthread->critical_yield = 1; - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); THR_SCHED_UNLOCK(curthread, pthread); + if (kmbx != NULL) + kse_wakeup(kmbx); } /* Check for no more waiters: */ if (TAILQ_FIRST(&(*cond)->c_queue) == NULL) @@ -649,6 +652,7 @@ { struct pthread *curthread = _get_curthread(); struct pthread *pthread; + struct kse_mailbox *kmbx; int rval = 0; THR_ASSERT(curthread->locklevel == 0, @@ -682,8 +686,10 @@ (pthread->active_priority > curthread->active_priority)) curthread->critical_yield = 1; - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); THR_SCHED_UNLOCK(curthread, pthread); + if (kmbx != NULL) + kse_wakeup(kmbx); } /* There are no more waiting threads: */ ==== //depot/projects/hammer/lib/libpthread/thread/thr_detach.c#5 (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_detach.c,v 1.22 2003/05/24 02:29:25 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_detach.c,v 1.23 2003/07/23 02:11:07 deischen Exp $ */ #include <sys/types.h> #include <machine/atomic.h> @@ -43,6 +43,7 @@ _pthread_detach(pthread_t pthread) { struct pthread *curthread = _get_curthread(); + struct kse_mailbox *kmbx = NULL; struct pthread *joiner; int rval = 0; @@ -83,12 +84,11 @@ joiner->join_status.ret = NULL; joiner->join_status.thread = NULL; - _thr_setrunnable_unlocked(joiner); + kmbx = _thr_setrunnable_unlocked(joiner); } joiner = NULL; } THR_SCHED_UNLOCK(curthread, pthread); - /* See if there is a thread waiting in pthread_join(): */ if ((joiner != NULL) && (_thr_ref_add(curthread, joiner, 0) == 0)) { @@ -102,12 +102,14 @@ joiner->join_status.ret = NULL; joiner->join_status.thread = NULL; - _thr_setrunnable_unlocked(joiner); + kmbx = _thr_setrunnable_unlocked(joiner); } THR_SCHED_UNLOCK(curthread, joiner); _thr_ref_delete(curthread, joiner); } _thr_ref_delete(curthread, pthread); + if (kmbx != NULL) + kse_wakeup(kmbx); } /* Return the completion status: */ ==== //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#18 (text+ko) ==== @@ -33,7 +33,7 @@ * */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.79 2003/07/18 02:46:55 deischen Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.80 2003/07/23 02:11:07 deischen Exp $"); #include <sys/types.h> #include <sys/kse.h> @@ -142,7 +142,7 @@ static void kseg_reinit(struct kse_group *kseg); static void kse_waitq_insert(struct pthread *thread); static void kse_wakeup_multi(struct kse *curkse); -static void kse_wakeup_one(struct pthread *thread); +static struct kse_mailbox *kse_wakeup_one(struct pthread *thread); static void thr_cleanup(struct kse *kse, struct pthread *curthread); static void thr_link(struct pthread *thread); static void thr_resume_wrapper(int sig, siginfo_t *, ucontext_t *); @@ -341,7 +341,7 @@ #else if (__isthreaded) _thr_signal_deinit(); - _ksd_readandclear_tmbx(); + _ksd_set_tmbx(NULL); __isthreaded = 0; active_threads = 0; #endif @@ -505,10 +505,9 @@ struct pthread *curthread = (struct pthread *)lu->lu_private; do { - THR_SCHED_LOCK(curthread, curthread); + THR_LOCK_SWITCH(curthread); THR_SET_STATE(curthread, PS_LOCKWAIT); - THR_SCHED_UNLOCK(curthread, curthread); - _thr_sched_switch(curthread); + _thr_sched_switch_unlocked(curthread); } while (!_LCK_GRANTED(lu)); } @@ -517,14 +516,17 @@ { struct pthread *thread; struct pthread *curthread; + struct kse_mailbox *kmbx; curthread = _get_curthread(); thread = (struct pthread *)_LCK_GET_PRIVATE(lu); THR_SCHED_LOCK(curthread, thread); _lock_grant(lock, lu); - _thr_setrunnable_unlocked(thread); + kmbx = _thr_setrunnable_unlocked(thread); THR_SCHED_UNLOCK(curthread, thread); + if (kmbx != NULL) + kse_wakeup(kmbx); } kse_critical_t @@ -532,7 +534,8 @@ { kse_critical_t crit; - crit = _ksd_readandclear_tmbx(); + crit = _ksd_get_tmbx(); + _ksd_set_tmbx(NULL); return (crit); } @@ -841,8 +844,8 @@ if (SIGISMEMBER(curthread->sigmask, i)) continue; if (SIGISMEMBER(curthread->sigpend, i)) - _thr_sig_add(curthread, i, - &curthread->siginfo[i-1]); + (void)_thr_sig_add(curthread, i, + &curthread->siginfo[i-1]); } __sys_sigprocmask(SIG_SETMASK, &curthread->sigmask, NULL); @@ -1142,6 +1145,7 @@ thr_cleanup(struct kse *curkse, struct pthread *thread) { struct pthread *joiner; + struct kse_mailbox *kmbx = NULL; int sys_scope; if ((joiner = thread->joiner) != NULL) { @@ -1150,7 +1154,7 @@ if (joiner->join_status.thread == thread) { joiner->join_status.thread = NULL; joiner->join_status.ret = thread->ret; - _thr_setrunnable_unlocked(joiner); + (void)_thr_setrunnable_unlocked(joiner); } } else { KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); @@ -1160,10 +1164,12 @@ if (joiner->join_status.thread == thread) { joiner->join_status.thread = NULL; joiner->join_status.ret = thread->ret; - _thr_setrunnable_unlocked(joiner); + kmbx = _thr_setrunnable_unlocked(joiner); } KSE_SCHED_UNLOCK(curkse, joiner->kseg); _thr_ref_delete(thread, joiner); + if (kmbx != NULL) + kse_wakeup(kmbx); } KSE_SCHED_LOCK(curkse, curkse->k_kseg); } @@ -1436,7 +1442,8 @@ if (SIGISMEMBER(thread->sigmask, sig)) SIGADDSET(thread->sigpend, sig); else - _thr_sig_add(thread, sig, &thread->tmbx.tm_syncsig); + (void)_thr_sig_add(thread, sig, + &thread->tmbx.tm_syncsig); thread->tmbx.tm_syncsig.si_signo = 0; } completed = completed->tm_next; @@ -1653,10 +1660,11 @@ if (SIGISMEMBER(thread->sigmask, i)) continue; if (SIGISMEMBER(thread->sigpend, i)) - _thr_sig_add(thread, i, &thread->siginfo[i-1]); + (void)_thr_sig_add(thread, i, + &thread->siginfo[i-1]); else if (SIGISMEMBER(_thr_proc_sigpending, i) && _thr_getprocsig_unlocked(i, &siginfo)) { - _thr_sig_add(thread, i, &siginfo); + (void)_thr_sig_add(thread, i, &siginfo); } } KSE_LOCK_RELEASE(kse, &_thread_signal_lock); @@ -1823,23 +1831,31 @@ _thr_setrunnable(struct pthread *curthread, struct pthread *thread) { kse_critical_t crit; + struct kse_mailbox *kmbx; crit = _kse_critical_enter(); KSE_SCHED_LOCK(curthread->kse, thread->kseg); - _thr_setrunnable_unlocked(thread); + kmbx = _thr_setrunnable_unlocked(thread); KSE_SCHED_UNLOCK(curthread->kse, thread->kseg); _kse_critical_leave(crit); + if (kmbx != NULL) + kse_wakeup(kmbx); } -void +struct kse_mailbox * _thr_setrunnable_unlocked(struct pthread *thread) { + struct kse_mailbox *kmbx = NULL; + if ((thread->kseg->kg_flags & KGF_SINGLE_THREAD) != 0) { /* No silly queues for these threads. */ if ((thread->flags & THR_FLAGS_SUSPENDED) != 0) THR_SET_STATE(thread, PS_SUSPENDED); - else + else { THR_SET_STATE(thread, PS_RUNNING); + kmbx = kse_wakeup_one(thread); + } + } else if (thread->state != PS_RUNNING) { if ((thread->flags & THR_FLAGS_IN_WAITQ) != 0) KSE_WAITQ_REMOVE(thread->kse, thread); @@ -1850,25 +1866,31 @@ if ((thread->blocked == 0) && (thread->active == 0) && (thread->flags & THR_FLAGS_IN_RUNQ) == 0) THR_RUNQ_INSERT_TAIL(thread); + /* + * XXX - Threads are not yet assigned to specific + * KSEs; they are assigned to the KSEG. So + * the fact that a thread's KSE is waiting + * doesn't necessarily mean that it will be + * the KSE that runs the thread after the + * lock is granted. But we don't know if the + * other KSEs within the same KSEG are also + * in a waiting state or not so we err on the + * side of caution and wakeup the thread's + * last known KSE. We ensure that the + * threads KSE doesn't change while it's + * scheduling lock is held so it is safe to + * reference it (the KSE). If the KSE wakes + * up and doesn't find any more work it will + * again go back to waiting so no harm is + * done. + */ + kmbx = kse_wakeup_one(thread); } } - /* - * XXX - Threads are not yet assigned to specific KSEs; they are - * assigned to the KSEG. So the fact that a thread's KSE is - * waiting doesn't necessarily mean that it will be the KSE - * that runs the thread after the lock is granted. But we - * don't know if the other KSEs within the same KSEG are - * also in a waiting state or not so we err on the side of - * caution and wakeup the thread's last known KSE. We - * ensure that the threads KSE doesn't change while it's - * scheduling lock is held so it is safe to reference it - * (the KSE). If the KSE wakes up and doesn't find any more - * work it will again go back to waiting so no harm is done. - */ - kse_wakeup_one(thread); + return (kmbx); } -static void +static struct kse_mailbox * kse_wakeup_one(struct pthread *thread) { struct kse *ke; @@ -1876,17 +1898,17 @@ if (KSE_IS_IDLE(thread->kse)) { KSE_CLEAR_IDLE(thread->kse); thread->kseg->kg_idle_kses--; - KSE_WAKEUP(thread->kse); + return (&thread->kse->k_mbx); } else { TAILQ_FOREACH(ke, &thread->kseg->kg_kseq, k_kgqe) { if (KSE_IS_IDLE(ke)) { KSE_CLEAR_IDLE(ke); ke->k_kseg->kg_idle_kses--; - KSE_WAKEUP(ke); - return; + return (&ke->k_mbx); } } } + return (NULL); } static void ==== //depot/projects/hammer/lib/libpthread/thread/thr_mutex.c#8 (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_mutex.c,v 1.38 2003/07/18 02:46:29 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_mutex.c,v 1.39 2003/07/23 02:11:07 deischen Exp $ */ #include <stdlib.h> #include <errno.h> @@ -67,7 +67,8 @@ /* * Prototypes */ -static void mutex_handoff(struct pthread *, struct pthread_mutex *); +static struct kse_mailbox *mutex_handoff(struct pthread *, + struct pthread_mutex *); static inline int mutex_self_trylock(struct pthread *, pthread_mutex_t); static inline int mutex_self_lock(struct pthread *, pthread_mutex_t); static int mutex_unlock_common(pthread_mutex_t *, int); @@ -860,6 +861,7 @@ mutex_unlock_common(pthread_mutex_t *m, int add_reference) { struct pthread *curthread = _get_curthread(); + struct kse_mailbox *kmbx = NULL; int ret = 0; if (m == NULL || *m == NULL) @@ -904,7 +906,7 @@ * Hand off the mutex to the next waiting * thread: */ - mutex_handoff(curthread, *m); + kmbx = mutex_handoff(curthread, *m); } break; @@ -961,7 +963,7 @@ * Hand off the mutex to the next waiting * thread: */ - mutex_handoff(curthread, *m); + kmbx = mutex_handoff(curthread, *m); } break; @@ -1017,7 +1019,7 @@ * Hand off the mutex to the next waiting * thread: */ - mutex_handoff(curthread, *m); + kmbx = mutex_handoff(curthread, *m); } break; @@ -1034,6 +1036,8 @@ /* Unlock the mutex structure: */ THR_LOCK_RELEASE(curthread, &(*m)->m_lock); + if (kmbx != NULL) + kse_wakeup(kmbx); } /* Return the completion status: */ @@ -1460,9 +1464,10 @@ * is necessary to lock the thread's scheduling queue while also * holding the mutex lock. */ -static void +static struct kse_mailbox * mutex_handoff(struct pthread *curthread, struct pthread_mutex *mutex) { + struct kse_mailbox *kmbx = NULL; struct pthread *pthread; /* Keep dequeueing until we find a valid thread: */ @@ -1564,7 +1569,7 @@ } /* Make the thread runnable and unlock the scheduling queue: */ - _thr_setrunnable_unlocked(pthread); + kmbx = _thr_setrunnable_unlocked(pthread); /* Add a preemption point. */ if ((curthread->kseg == pthread->kseg) && @@ -1583,6 +1588,7 @@ if ((pthread == NULL) && (mutex->m_protocol == PTHREAD_PRIO_INHERIT)) /* This mutex has no priority: */ mutex->m_prio = 0; + return (kmbx); } /* ==== //depot/projects/hammer/lib/libpthread/thread/thr_private.h#14 (text+ko) ==== @@ -31,7 +31,7 @@ * * Private thread definitions for the uthread kernel. * - * $FreeBSD: src/lib/libpthread/thread/thr_private.h,v 1.93 2003/07/18 02:46:55 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_private.h,v 1.94 2003/07/23 02:11:07 deischen Exp $ */ #ifndef _THR_PRIVATE_H @@ -1106,8 +1106,8 @@ int _thr_schedule_add(struct pthread *, struct pthread *); void _thr_schedule_remove(struct pthread *, struct pthread *); void _thr_setrunnable(struct pthread *curthread, struct pthread *thread); -void _thr_setrunnable_unlocked(struct pthread *thread); -void _thr_sig_add(struct pthread *, int, siginfo_t *); +struct kse_mailbox *_thr_setrunnable_unlocked(struct pthread *thread); +struct kse_mailbox *_thr_sig_add(struct pthread *, int, siginfo_t *); void _thr_sig_dispatch(struct kse *, int, siginfo_t *); int _thr_stack_alloc(struct pthread_attr *); void _thr_stack_free(struct pthread_attr *); ==== //depot/projects/hammer/lib/libpthread/thread/thr_resume_np.c#4 (text+ko) ==== @@ -29,13 +29,13 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_resume_np.c,v 1.17 2003/05/04 16:17:01 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_resume_np.c,v 1.18 2003/07/23 02:11:07 deischen Exp $ */ #include <errno.h> #include <pthread.h> #include "thr_private.h" -static void resume_common(struct pthread *); +static struct kse_mailbox *resume_common(struct pthread *); __weak_reference(_pthread_resume_np, pthread_resume_np); __weak_reference(_pthread_resume_all_np, pthread_resume_all_np); @@ -46,15 +46,18 @@ _pthread_resume_np(pthread_t thread) { struct pthread *curthread = _get_curthread(); + struct kse_mailbox *kmbx; int ret; /* Add a reference to the thread: */ if ((ret = _thr_ref_add(curthread, thread, /*include dead*/0)) == 0) { /* Lock the threads scheduling queue: */ THR_SCHED_LOCK(curthread, thread); - resume_common(thread); + kmbx = resume_common(thread); THR_SCHED_UNLOCK(curthread, thread); _thr_ref_delete(curthread, thread); + if (kmbx != NULL) + kse_wakeup(kmbx); } return (ret); } @@ -64,6 +67,7 @@ { struct pthread *curthread = _get_curthread(); struct pthread *thread; + struct kse_mailbox *kmbx; kse_critical_t crit; >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200307240130.h6O1UwrN054874>