Date: Wed, 10 Dec 2003 11:08:00 -0800 (PST) From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 43744 for review Message-ID: <200312101908.hBAJ80bG025479@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=43744 Change 43744 by peter@peter_daintree on 2003/12/10 11:07:57 IFC @43736 Affected files ... .. //depot/projects/hammer/Makefile#15 integrate .. //depot/projects/hammer/UPDATING#29 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_ttyconv.c#9 integrate .. //depot/projects/hammer/etc/rc.d/jail#5 integrate .. //depot/projects/hammer/etc/rc.d/mountcritlocal#5 integrate .. //depot/projects/hammer/etc/rc.d/root#5 integrate .. //depot/projects/hammer/etc/rc.d/syscons#3 integrate .. //depot/projects/hammer/etc/rc.subr#10 integrate .. //depot/projects/hammer/gnu/usr.bin/cc/include/Makefile#5 integrate .. //depot/projects/hammer/lib/libc/Makefile#10 integrate .. //depot/projects/hammer/lib/libc/powerpc/_fpmath.h#3 integrate .. //depot/projects/hammer/lib/libc/sys/Makefile.inc#10 integrate .. //depot/projects/hammer/lib/libc/sys/kse.2#5 integrate .. //depot/projects/hammer/lib/libc/sys/stat.2#7 integrate .. //depot/projects/hammer/lib/libpthread/pthread.map#6 integrate .. //depot/projects/hammer/lib/libpthread/thread/Makefile.inc#9 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_accept.c#1 branch .. //depot/projects/hammer/lib/libpthread/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_cancel.c#14 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_close.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_cond.c#16 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_connect.c#1 branch .. //depot/projects/hammer/lib/libpthread/thread/thr_creat.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fcntl.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fsync.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_join.c#7 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#27 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_msync.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_nanosleep.c#8 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_open.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_pause.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_poll.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#20 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_pselect.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_read.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_readv.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_select.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sem.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigsuspend.c#10 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigwait.c#10 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sleep.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#10 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_system.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_tcdrain.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_wait.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_wait4.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_waitpid.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_write.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_writev.c#3 integrate .. //depot/projects/hammer/lib/libstand/Makefile#7 integrate .. //depot/projects/hammer/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/hammer/lib/libthr/thread/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_cond.c#8 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#13 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_private.h#9 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_sig.c#5 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_spinlock.c#6 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_subr.c#1 branch .. //depot/projects/hammer/lib/libthr/thread/thr_syscalls.c#3 integrate .. //depot/projects/hammer/share/man/man4/ng_iface.4#2 integrate .. //depot/projects/hammer/share/man/man9/BUS_SETUP_INTR.9#6 integrate .. //depot/projects/hammer/share/man/man9/bus_alloc_resource.9#4 integrate .. //depot/projects/hammer/share/man/man9/kobj.9#3 integrate .. //depot/projects/hammer/sys/amd64/acpica/madt.c#26 integrate .. //depot/projects/hammer/sys/amd64/include/pcvt_ioctl.h#1 branch .. //depot/projects/hammer/sys/boot/Makefile#9 integrate .. //depot/projects/hammer/sys/boot/ficl/Makefile#7 integrate .. //depot/projects/hammer/sys/boot/ficl/loader.c#4 integrate .. //depot/projects/hammer/sys/boot/ficl/powerpc/sysdep.c#1 branch .. //depot/projects/hammer/sys/boot/ficl/powerpc/sysdep.h#1 branch .. //depot/projects/hammer/sys/boot/i386/boot0/boot0.s#4 integrate .. //depot/projects/hammer/sys/boot/i386/boot0/boot0sio.s#2 integrate .. //depot/projects/hammer/sys/boot/ia64/libski/acpi_stub.c#3 integrate .. //depot/projects/hammer/sys/boot/powerpc/loader/Makefile#3 integrate .. //depot/projects/hammer/sys/boot/powerpc/loader/conf.c#3 integrate .. //depot/projects/hammer/sys/conf/Makefile.powerpc#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acconfig.h#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acdisasm.h#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acenv.h#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acevents.h#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acexcep.h#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acglobal.h#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acmacros.h#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acobject.h#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acpica_prep.sh#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acstruct.h#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/actbl.h#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/actbl1.h#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/actbl2.h#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/actypes.h#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/acutils.h#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/common/adisasm.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/aslanalyze.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/aslcompile.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/aslcompiler.y#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/aslfold.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/asltree.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/asltypes.h#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/compiler/aslutils.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbcmds.c#9 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbdisply.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbexec.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbfileio.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbstats.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dbutils.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dmobject.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dmresrc.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dmresrcl.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsfield.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsinit.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsmethod.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsmthdat.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsopcode.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dsutils.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dswexec.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dswload.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dswscope.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dswstate.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evgpe.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evgpeblk.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evmisc.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evregion.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evrgnini.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/evxfregn.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exconfig.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/excreate.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exdump.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exfield.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exfldio.c#8 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exmisc.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exmutex.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exoparg1.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exoparg3.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exprep.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exregion.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exresnte.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exresolv.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exresop.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exstore.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exstoren.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exsystem.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/exutils.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/hwacpi.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/hwregs.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/hwsleep.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsaccess.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsalloc.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsdump.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsdumpdv.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsinit.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsobject.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nssearch.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsutils.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/nsxfname.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/osunixxf.c#2 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/psargs.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/psparse.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/psxface.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rsaddr.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rscalc.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rscreate.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rsdump.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rsirq.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/rslist.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbconvrt.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbget.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbgetall.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbinstal.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbrsdt.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbxface.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/tbxfroot.c#4 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/utalloc.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/utdebug.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/utdelete.c#6 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/uteval.c#5 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/utglobal.c#7 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/utobject.c#5 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi.c#17 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_cpu.c#9 integrate .. //depot/projects/hammer/sys/dev/acpica/madt.h#2 delete .. //depot/projects/hammer/sys/dev/ata/ata-pci.c#14 integrate .. //depot/projects/hammer/sys/dev/owi/if_owi.c#4 integrate .. //depot/projects/hammer/sys/dev/puc/pucdata.c#11 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi.c#23 integrate .. //depot/projects/hammer/sys/dev/wi/if_wivar.h#9 integrate .. //depot/projects/hammer/sys/i386/acpica/madt.c#7 integrate .. //depot/projects/hammer/sys/i386/include/pcvt_ioctl.h#2 integrate .. //depot/projects/hammer/sys/ia64/acpica/madt.c#4 integrate .. //depot/projects/hammer/sys/ia64/ia64/trap.c#21 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#38 integrate .. //depot/projects/hammer/sys/kern/subr_turnstile.c#4 integrate .. //depot/projects/hammer/sys/net/if_gre.c#9 integrate .. //depot/projects/hammer/sys/netinet6/ip6_mroute.c#8 integrate .. //depot/projects/hammer/sys/netkey/key.c#13 integrate .. //depot/projects/hammer/sys/powerpc/include/cpufunc.h#4 integrate .. //depot/projects/hammer/sys/powerpc/include/powerpc.h#2 integrate .. //depot/projects/hammer/sys/powerpc/powermac/ata_macio.c#5 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/db_interface.c#3 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/machdep.c#21 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/ofw_machdep.c#5 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/pmap.c#15 integrate .. //depot/projects/hammer/sys/security/mac_test/mac_test.c#19 integrate .. //depot/projects/hammer/usr.bin/m4/m4.1#5 integrate .. //depot/projects/hammer/usr.sbin/Makefile#35 integrate Differences ... ==== //depot/projects/hammer/Makefile#15 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.291 2003/11/07 08:36:55 kris Exp $ +# $FreeBSD: src/Makefile,v 1.292 2003/12/09 02:08:19 peter Exp $ # # The user-driven targets are: # @@ -58,13 +58,17 @@ # Define the user-driven targets. These are listed here in alphabetical # order, but that's not important. # +# Targets that begin with underscore are internal targets intended for +# developer convenience only. They are intentionally not documented and +# completely subject to change without notice. +# TGTS= all all-man buildkernel buildworld checkdpadd clean \ cleandepend cleandir depend distribute distributeworld everything \ hierarchy install installcheck installkernel installkernel.debug\ reinstallkernel reinstallkernel.debug installworld \ libraries lint maninstall \ obj objlink regress rerelease tags update \ - _legacy _bootstrap-tools _cleanobj _obj \ + _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend BITGTS= files includes ==== //depot/projects/hammer/UPDATING#29 (text+ko) ==== @@ -50,6 +50,14 @@ netgraph to boot need to make sure to have world and kernel in sync before rebooting. +20031111: + Hyperthreading logical CPU's are no longer probed by default + when using the MP Table. If ACPI is being used, then logical + CPUs will be probed if hyperthreading is enabled in the BIOS. + If ACPI is not being used and hyperthreading is enabled in the + BIOS, logical CPUs can be enabled by building a custom kernel + with the option MPTABLE_FORCE_HTT enabled. + 20031103: The i386 APIC_IO kernel option has been replaced by 'device apic'. The ACPI module has also been temporarily @@ -1431,4 +1439,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.282 2003/11/17 23:25:16 rwatson Exp $ +$FreeBSD: src/UPDATING,v 1.283 2003/12/10 15:59:20 jhb Exp $ ==== //depot/projects/hammer/contrib/openpam/lib/openpam_ttyconv.c#9 (text) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/openpam/lib/openpam_ttyconv.c#23 $ + * $P4: //depot/projects/openpam/lib/openpam_ttyconv.c#24 $ */ #include <sys/types.h> @@ -119,7 +119,7 @@ } /* trim trailing whitespace */ for (len = strlen(buf); len > 0; --len) - if (!isspace(buf[len - 1])) + if (buf[len - 1] != '\r' && buf[len - 1] != '\n') break; buf[len] = '\0'; retval = strdup(buf); @@ -166,26 +166,27 @@ struct pam_response **resp, void *data) { + struct pam_response *aresp; int i; ENTER(); (void)data; if (n <= 0 || n > PAM_MAX_NUM_MSG) RETURNC(PAM_CONV_ERR); - if ((*resp = calloc(n, sizeof **resp)) == NULL) + if ((aresp = calloc(n, sizeof *aresp)) == NULL) RETURNC(PAM_BUF_ERR); for (i = 0; i < n; ++i) { - resp[i]->resp_retcode = 0; - resp[i]->resp = NULL; + aresp[i].resp_retcode = 0; + aresp[i].resp = NULL; switch (msg[i]->msg_style) { case PAM_PROMPT_ECHO_OFF: - (*resp[i]).resp = prompt_echo_off(msg[i]->msg); - if ((*resp[i]).resp == NULL) + aresp[i].resp = prompt_echo_off(msg[i]->msg); + if (aresp[i].resp == NULL) goto fail; break; case PAM_PROMPT_ECHO_ON: - (*resp[i]).resp = prompt(msg[i]->msg); - if ((*resp[i]).resp == NULL) + aresp[i].resp = prompt(msg[i]->msg); + if (aresp[i].resp == NULL) goto fail; break; case PAM_ERROR_MSG: @@ -204,16 +205,18 @@ goto fail; } } + *resp = aresp; RETURNC(PAM_SUCCESS); fail: for (i = 0; i < n; ++i) { - if ((*resp[i]).resp != NULL) { - memset((*resp[i]).resp, 0, strlen((*resp[i]).resp)); - FREE((*resp[i]).resp); + if (aresp[i].resp != NULL) { + memset(aresp[i].resp, 0, strlen(aresp[i].resp)); + FREE(aresp[i].resp); } } - memset(*resp, 0, n * sizeof **resp); - FREE(*resp); + memset(aresp, 0, n * sizeof *aresp); + FREE(aresp); + *resp = NULL; RETURNC(PAM_CONV_ERR); } ==== //depot/projects/hammer/etc/rc.d/jail#5 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/jail,v 1.7 2003/10/13 08:20:55 dougb Exp $ +# $FreeBSD: src/etc/rc.d/jail,v 1.10 2003/12/09 08:51:11 mtm Exp $ # # PROVIDE: jail @@ -100,11 +100,19 @@ # Transitional symlink for old binaries if [ ! -L ${jail_devdir}/log ]; then - devfs_link ${jail_devdir} ../var/run/log log + __pwd="`pwd`" + cd "${jail_devdir}" + ln -sf ../var/run/log log + cd "$__pwd" fi + # XXX - It seems symlinks don't work when there + # is a devfs(5) device of the same name. # Jail console output - devfs_link ${jail_devdir} ../var/log/console console + # __pwd="`pwd`" + # cd "${jail_devdir}" + # ln -sf ../var/log/console console + # cd "$__pwd" fi if checkyesno jail_fdescfs; then info "Mounting fdescfs on ${jail_fdescdir}" @@ -116,7 +124,7 @@ mount -t procfs proc "${jail_procdir}" fi fi - jail 1>/dev/null 2>&1 \ + jail 1>${jail_rootdir}/var/log/console.log 2>&1 \ ${jail_rootdir} ${jail_hostname} ${jail_ip} ${jail_exec} [ "$?" -eq 0 ] && echo -n " $jail_hostname" done @@ -138,14 +146,16 @@ for _jail in ${jail_list} do init_variables $_jail + if checkyesno jail_fdescfs; then + if [ -d ${jail_fdescdir} ] ; then + umount -f ${jail_fdescdir} >/dev/null 2>&1 + fi + fi if checkyesno jail_devfs; then if [ -d ${jail_devdir} ] ; then umount -f ${jail_devdir} >/dev/null 2>&1 fi fi - if checkyesno jail_fdescfs; then - umount -f ${jail_fdescdir} >/dev/null 2>&1 - fi if checkyesno jail_procfs; then if [ -d ${jail_procdir} ] ; then umount -f ${jail_procdir} >/dev/null 2>&1 ==== //depot/projects/hammer/etc/rc.d/mountcritlocal#5 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: mountcritlocal,v 1.7 2002/04/29 12:29:53 lukem Exp $ -# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.5 2003/06/01 01:43:37 gordon Exp $ +# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.6 2003/12/09 08:17:32 mtm Exp $ # # PROVIDE: mountcritlocal @@ -43,7 +43,7 @@ *) echo 'Mounting /etc/fstab filesystems failed,' \ ' startup aborted' - exit 1 + kill -QUIT $$ ;; esac ;; ==== //depot/projects/hammer/etc/rc.d/root#5 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: root,v 1.2 2000/05/13 08:45:09 lukem Exp $ -# $FreeBSD: src/etc/rc.d/root,v 1.5 2002/10/31 02:06:05 gordon Exp $ +# $FreeBSD: src/etc/rc.d/root,v 1.6 2003/12/09 08:17:33 mtm Exp $ # # PROVIDE: root @@ -27,13 +27,12 @@ *) if ! mount -u -o rw /; then echo 'Mounting root filesystem rw failed, startup aborted' - exit 1 + /bin/kill -QUIT $$ fi ;; esac umount -a >/dev/null 2>&1 - mount / # If we booted a special kernel remove the record # so we will boot the default kernel next time. ==== //depot/projects/hammer/etc/rc.d/syscons#3 (text+ko) ==== @@ -24,7 +24,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.d/syscons,v 1.9 2002/09/09 22:40:34 gordon Exp $ +# $FreeBSD: src/etc/rc.d/syscons,v 1.10 2003/12/10 15:48:49 peter Exp $ # # PROVIDE: syscons @@ -44,13 +44,15 @@ syscons_precmd() { - if [ -c $kbddev ] && \ - [ -x /usr/sbin/ispcvt ] && \ - ! /usr/sbin/ispcvt + if [ ! -c $kbddev ] + then + return 1 + fi + if [ -x /usr/sbin/ispcvt ] && /usr/sbin/ispcvt then - return 0 + return 1 fi - return 1 + return 0 } syscons_start() ==== //depot/projects/hammer/etc/rc.subr#10 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: rc.subr,v 1.49 2002/05/21 12:31:01 lukem Exp $ -# $FreeBSD: src/etc/rc.subr,v 1.16 2003/08/20 06:50:34 mtm Exp $ +# $FreeBSD: src/etc/rc.subr,v 1.17 2003/12/09 08:51:11 mtm Exp $ # # Copyright (c) 1997-2002 The NetBSD Foundation, Inc. # All rights reserved. @@ -1038,29 +1038,30 @@ fi } -# devfs_link dir src link -# Make a symbolic link 'link' to src in chroot/dev. -# Returns 0 on sucess. +# make_symlink src link +# Make a symbolic link 'link' to src from basedir. If the +# directory in which link is to be created does not exist +# a warning will be displayed and an error will be returned. +# Returns 0 on sucess, 1 otherwise. # -devfs_link() +make_symlink() { - local dir src link _me - dir="$1" - src="$2" - link="$3" - _me="devfs_link" + local src link linkdir _me + src="$1" + link="$2" + linkdir="`dirname $link`" + _me="make_symlink()" - if [ -z "$dir" -o -z "$src" -o -z "$link" ]; then - warn "devfs_link(): requires three arguments." + if [ -z "$src" -o -z "$link" ]; then + warn "$_me: requires two arguments." return 1 fi - if [ -z "$dir" ]; then - warn "$_me: the directory ($dir) does not exist" + if [ ! -d "$linkdir" ]; then + warn "$_me: the directory $linkdir does not exist" return 1 fi - cd ${chroot}/dev if ! ln -sf $src $link ; then - warn "$_me: unable to link $link --> $src in $dir" + warn "$_me: unable to make a symbolic link from $link to $src" return 1 fi return 0 ==== //depot/projects/hammer/gnu/usr.bin/cc/include/Makefile#5 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.5 2003/04/26 20:04:38 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.6 2003/12/09 16:31:30 kan Exp $ .include "../Makefile.inc" .PATH: ${GCCDIR}/config/${GCC_CPU} .if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" -INCS= mmintrin.h xmmintrin.h +INCS= emmintrin.h mmintrin.h pmmintrin.h xmmintrin.h .elif ${TARGET_ARCH} == "ia64" INCS= ia64intrin.h .endif ==== //depot/projects/hammer/lib/libc/Makefile#10 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 2/3/94 -# $FreeBSD: src/lib/libc/Makefile,v 1.45 2003/11/17 04:20:02 nectar Exp $ +# $FreeBSD: src/lib/libc/Makefile,v 1.46 2003/12/10 16:33:17 mikeh Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -10,6 +10,7 @@ # system call stubs. LIB=c # If you bump SHLIB_MAJOR, remove kluge from gen/gethostname.c. +# If you bump SHLIB_MAJOR, see standards/55112 SHLIB_MAJOR= 5 SHLIBDIR?= /lib WARNS?= 1 ==== //depot/projects/hammer/lib/libc/powerpc/_fpmath.h#3 (text+ko) ==== @@ -23,20 +23,19 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/powerpc/_fpmath.h,v 1.2 2003/04/05 22:10:13 das Exp $ + * $FreeBSD: src/lib/libc/powerpc/_fpmath.h,v 1.3 2003/12/10 13:04:42 grehan Exp $ */ union IEEEl2bits { long double e; struct { - unsigned int sign :1; - unsigned int exp :15; - unsigned long manh :48; - unsigned long manl :64; + unsigned int sign :1; + unsigned int exp :15; + unsigned long long manh :48; + unsigned long long manl :64; } bits; }; -/* XXX does powerpc have a normalization bit? */ #define mask_nbit_l(u) ((void)0) #define LDBL_IMPLICIT_NBIT ==== //depot/projects/hammer/lib/libc/sys/Makefile.inc#10 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.3 (Berkeley) 10/24/94 -# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.106 2003/11/01 05:36:14 tjr Exp $ +# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.107 2003/12/10 02:38:51 marcel Exp $ # sys sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/sys ${.CURDIR}/sys @@ -118,7 +118,7 @@ MLINKS+=jail.2 jail_attach.2 MLINKS+=kqueue.2 kevent.2 MLINKS+=kse.2 kse_create.2 kse.2 kse_exit.2 kse.2 kse_release.2 \ - kse.2 kse_wakeup.2 kse.2 kse_thr_interrupt.2 + kse.2 kse_switchin.2 kse.2 kse_thr_interrupt.2 kse.2 kse_wakeup.2 MLINKS+=madvise.2 posix_madvise.2 MLINKS+=mlock.2 munlock.2 MLINKS+=mlockall.2 munlockall.2 ==== //depot/projects/hammer/lib/libc/sys/kse.2#5 (text+ko) ==== @@ -33,7 +33,7 @@ .\" THE USE OF THIS SOFTWARE, EVEN IF PACKET DESIGN IS ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/sys/kse.2,v 1.12 2003/06/17 09:36:47 sobomax Exp $ +.\" $FreeBSD: src/lib/libc/sys/kse.2,v 1.13 2003/12/10 02:38:51 marcel Exp $ .\" .Dd September 10, 2002 .Dt KSE 2 @@ -53,9 +53,11 @@ .Ft int .Fn kse_release "struct timespec *timeout" .Ft int -.Fn kse_wakeup "struct kse_mailbox *mbx" +.Fn kse_switchin "mcontext_t *mcp" "long val" "long *loc" .Ft int .Fn kse_thr_interrupt "struct kse_thr_mailbox *tmbx" +.Ft int +.Fn kse_wakeup "struct kse_mailbox *mbx" .Sh DESCRIPTION These system calls implement kernel support for multi-threaded processes. .\" @@ -286,6 +288,16 @@ does not return to the caller. .Pp The +.Fn kse_switchin +system call can be used by the UTS, when it has selected a new thread, +to switch to the context of that thread. +The use of +.Fn kse_switchin +is machine dependent. +Some platforms do not need a system call to switch to a new context, +while others require its use in particular cases. +.Pp +The .Fn kse_wakeup system call is the opposite of ==== //depot/projects/hammer/lib/libc/sys/stat.2#7 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)stat.2 8.4 (Berkeley) 5/1/95 -.\" $FreeBSD: src/lib/libc/sys/stat.2,v 1.35 2003/10/20 13:52:22 dds Exp $ +.\" $FreeBSD: src/lib/libc/sys/stat.2,v 1.36 2003/12/10 15:08:41 dds Exp $ .\" .Dd February 15, 2002 .Dt STAT 2 @@ -257,7 +257,8 @@ .Xr chmod 2 , .Xr chown 2 , .Xr utimes 2 , -.Xr symlink 7 +.Xr symlink 7 , +.Xr sticky 8 .Sh BUGS Applying .Fn fstat ==== //depot/projects/hammer/lib/libpthread/pthread.map#6 (text+ko) ==== @@ -1,8 +1,10 @@ -# $FreeBSD: src/lib/libpthread/pthread.map,v 1.7 2003/11/04 20:04:44 deischen Exp $ +# $FreeBSD: src/lib/libpthread/pthread.map,v 1.8 2003/12/09 15:16:27 deischen Exp $ LIBTHREAD_1_0 { global: ___creat; + __accept; __close; + __connect; __error; __fcntl; __fsync; @@ -167,8 +169,10 @@ _vfork; _wait; _waitpid; + accept; aio_suspend; close; + connect; creat; fcntl; fork; ==== //depot/projects/hammer/lib/libpthread/thread/Makefile.inc#9 (text+ko) ==== @@ -1,9 +1,10 @@ -# $FreeBSD: src/lib/libpthread/thread/Makefile.inc,v 1.45 2003/11/04 20:04:44 deischen Exp $ +# $FreeBSD: src/lib/libpthread/thread/Makefile.inc,v 1.46 2003/12/09 15:16:27 deischen Exp $ # thr sources .PATH: ${.CURDIR}/thread SRCS+= \ + thr_accept.c \ thr_aio_suspend.c \ thr_atfork.c \ thr_attr_destroy.c \ @@ -38,6 +39,7 @@ thr_cond.c \ thr_condattr_destroy.c \ thr_condattr_init.c \ + thr_connect.c \ thr_creat.c \ thr_create.c \ thr_detach.c \ ==== //depot/projects/hammer/lib/libpthread/thread/thr_aio_suspend.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_aio_suspend.c,v 1.7 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_aio_suspend.c,v 1.8 2003/12/09 02:20:56 davidxu Exp $ */ #include <aio.h> @@ -42,9 +42,9 @@ struct pthread *curthread = _get_curthread(); int ret; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); ret = __sys_aio_suspend(iocbs, niocb, timeout); - _thr_leave_cancellation_point(curthread); + _thr_cancel_leave(curthread, 1); return (ret); } ==== //depot/projects/hammer/lib/libpthread/thread/thr_cancel.c#14 (text+ko) ==== @@ -1,6 +1,6 @@ /* * David Leonard <d@openbsd.org>, 1999. Public domain. - * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.30 2003/10/08 00:30:38 davidxu Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cancel.c,v 1.31 2003/12/09 02:20:56 davidxu Exp $ */ #include <sys/errno.h> #include <pthread.h> @@ -11,8 +11,35 @@ __weak_reference(_pthread_setcanceltype, pthread_setcanceltype); __weak_reference(_pthread_testcancel, pthread_testcancel); -static int checkcancel(struct pthread *curthread); -static void testcancel(struct pthread *curthread); +static inline int +checkcancel(struct pthread *curthread) +{ + if (((curthread->cancelflags & PTHREAD_CANCEL_DISABLE) == 0) && + ((curthread->cancelflags & THR_CANCELLING) != 0)) { + /* + * It is possible for this thread to be swapped out + * while performing cancellation; do not allow it + * to be cancelled again. + */ + curthread->cancelflags &= ~THR_CANCELLING; + return (1); + } + else + return (0); +} + +static inline void +testcancel(struct pthread *curthread) +{ + if (checkcancel(curthread) != 0) { + /* Unlock before exiting: */ + THR_THREAD_UNLOCK(curthread, curthread); + + _thr_exit_cleanup(); + pthread_exit(PTHREAD_CANCELED); + PANIC("cancel"); + } +} int _pthread_cancel(pthread_t pthread) @@ -217,37 +244,6 @@ return (ret); } -static int -checkcancel(struct pthread *curthread) -{ - if (((curthread->cancelflags & PTHREAD_CANCEL_DISABLE) == 0) && - ((curthread->cancelflags & THR_CANCELLING) != 0)) { - /* - * It is possible for this thread to be swapped out - * while performing cancellation; do not allow it - * to be cancelled again. - */ - curthread->cancelflags &= ~THR_CANCELLING; - return (1); - } - else - return (0); -} - -static void -testcancel(struct pthread *curthread) -{ - - if (checkcancel(curthread) != 0) { - /* Unlock before exiting: */ - THR_THREAD_UNLOCK(curthread, curthread); - - _thr_exit_cleanup(); - pthread_exit(PTHREAD_CANCELED); - PANIC("cancel"); - } -} - void _pthread_testcancel(void) { @@ -259,10 +255,8 @@ } void -_thr_enter_cancellation_point(struct pthread *thread) +_thr_cancel_enter(struct pthread *thread) { - if (!_kse_isthreaded()) - return; /* Look for a cancellation before we block: */ THR_THREAD_LOCK(thread, thread); testcancel(thread); @@ -271,14 +265,13 @@ } void -_thr_leave_cancellation_point(struct pthread *thread) +_thr_cancel_leave(struct pthread *thread, int check) { - if (!_kse_isthreaded()) - return; THR_THREAD_LOCK(thread, thread); thread->cancelflags &= ~THR_AT_CANCEL_POINT; /* Look for a cancellation after we unblock: */ - testcancel(thread); + if (check) + testcancel(thread); THR_THREAD_UNLOCK(thread, thread); } ==== //depot/projects/hammer/lib/libpthread/thread/thr_close.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_close.c,v 1.16 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_close.c,v 1.17 2003/12/09 02:20:56 davidxu Exp $ */ #include <errno.h> #include <stdlib.h> @@ -47,9 +47,9 @@ struct pthread *curthread = _get_curthread(); int ret; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); ret = __sys_close(fd); - _thr_leave_cancellation_point(curthread); + _thr_cancel_leave(curthread, 1); return (ret); } ==== //depot/projects/hammer/lib/libpthread/thread/thr_cond.c#16 (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.50 2003/09/14 22:33:32 davidxu Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cond.c,v 1.51 2003/12/09 02:20:56 davidxu Exp $ */ #include <stdlib.h> #include <errno.h> @@ -365,9 +365,9 @@ struct pthread *curthread = _get_curthread(); int ret; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); ret = _pthread_cond_wait(cond, mutex); - _thr_leave_cancellation_point(curthread); + _thr_cancel_leave(curthread, 1); return (ret); } @@ -571,9 +571,9 @@ struct pthread *curthread = _get_curthread(); int ret; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); ret = _pthread_cond_timedwait(cond, mutex, abstime); - _thr_leave_cancellation_point(curthread); + _thr_cancel_leave(curthread, 1); return (ret); } ==== //depot/projects/hammer/lib/libpthread/thread/thr_creat.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_creat.c,v 1.7 2003/09/03 17:56:26 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_creat.c,v 1.8 2003/12/09 02:20:56 davidxu Exp $ */ #include <fcntl.h> @@ -43,9 +43,13 @@ struct pthread *curthread = _get_curthread(); int ret; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); ret = __creat(path, mode); - _thr_leave_cancellation_point(curthread); + /* + * To avoid possible file handle leak, + * only check cancellation point if it is failure + */ + _thr_cancel_leave(curthread, (ret == -1)); return ret; } ==== //depot/projects/hammer/lib/libpthread/thread/thr_fcntl.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_fcntl.c,v 1.18 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_fcntl.c,v 1.19 2003/12/09 02:20:56 davidxu Exp $ */ #include <stdarg.h> #include "namespace.h" @@ -44,14 +44,21 @@ __fcntl(int fd, int cmd,...) { struct pthread *curthread = _get_curthread(); - int ret; + int ret, check = 1; va_list ap; - _thr_enter_cancellation_point(curthread); + _thr_cancel_enter(curthread); va_start(ap, cmd); switch (cmd) { case F_DUPFD: + ret = __sys_fcntl(fd, cmd, va_arg(ap, int)); + /* + * To avoid possible file handle leak, + * only check cancellation point if it is failure + */ >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312101908.hBAJ80bG025479>