From owner-p4-projects@FreeBSD.ORG Sun Dec 16 00:35:22 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E572F16A41A; Sun, 16 Dec 2007 00:35:21 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F3B416A468 for ; Sun, 16 Dec 2007 00:35:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 42C3313C4DB for ; Sun, 16 Dec 2007 00:35:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBG0ZLxG073620 for ; Sun, 16 Dec 2007 00:35:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBG0ZLtm073617 for perforce@freebsd.org; Sun, 16 Dec 2007 00:35:21 GMT (envelope-from jb@freebsd.org) Date: Sun, 16 Dec 2007 00:35:21 GMT Message-Id: <200712160035.lBG0ZLtm073617@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 130984 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 00:35:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=130984 Change 130984 by jb@jb_freebsd1 on 2007/12/16 00:34:23 I'm not sure why these got deleted. :-/ Affected files ... .. //depot/projects/dtrace/src/contrib/pf/pflogd/pidfile.c#7 add .. //depot/projects/dtrace/src/contrib/pf/pflogd/pidfile.h#7 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 16 01:10:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 346F916A468; Sun, 16 Dec 2007 01:10:02 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D755416A474 for ; Sun, 16 Dec 2007 01:10:01 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D148E13C457 for ; Sun, 16 Dec 2007 01:10:01 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBG1A1M6088254 for ; Sun, 16 Dec 2007 01:10:01 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBG19x2k088229 for perforce@freebsd.org; Sun, 16 Dec 2007 01:09:59 GMT (envelope-from marcel@freebsd.org) Date: Sun, 16 Dec 2007 01:09:59 GMT Message-Id: <200712160109.lBG19x2k088229@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 130988 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 01:10:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=130988 Change 130988 by marcel@marcel_cluster on 2007/12/16 01:09:28 IFC @130987 Affected files ... .. //depot/projects/e500/include/complex.h#3 integrate .. //depot/projects/e500/lib/msun/Makefile#4 integrate .. //depot/projects/e500/lib/msun/Symbol.map#3 integrate .. //depot/projects/e500/lib/msun/man/csqrt.3#1 branch .. //depot/projects/e500/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/e500/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/e500/share/man/man3/tgmath.3#2 integrate .. //depot/projects/e500/share/man/man4/Makefile#8 integrate .. //depot/projects/e500/share/man/man4/hptrr.4#1 branch .. //depot/projects/e500/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/e500/sys/amd64/conf/NOTES#5 integrate .. //depot/projects/e500/sys/conf/files.amd64#6 integrate .. //depot/projects/e500/sys/conf/files.i386#6 integrate .. //depot/projects/e500/sys/conf/files.powerpc#11 integrate .. //depot/projects/e500/sys/conf/options#8 integrate .. //depot/projects/e500/sys/conf/options.powerpc#3 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_adapter.h#5 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_main.c#6 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_offload.c#3 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_offload.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_osdep.h#5 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_sge.c#5 integrate .. //depot/projects/e500/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/e500/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/e500/sys/dev/hptrr/array.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/him.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/e500/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/e500/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/e500/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/e500/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/list.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/e500/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/e500/sys/i386/conf/GENERIC#8 integrate .. //depot/projects/e500/sys/i386/conf/NOTES#5 integrate .. //depot/projects/e500/sys/i386/conf/PAE#4 integrate .. //depot/projects/e500/sys/kern/kern_mbuf.c#5 integrate .. //depot/projects/e500/sys/kern/kern_mutex.c#6 integrate .. //depot/projects/e500/sys/kern/kern_rwlock.c#6 integrate .. //depot/projects/e500/sys/kern/kern_sx.c#7 integrate .. //depot/projects/e500/sys/kern/kern_thread.c#8 integrate .. //depot/projects/e500/sys/kern/sched_4bsd.c#6 integrate .. //depot/projects/e500/sys/kern/sched_ule.c#6 integrate .. //depot/projects/e500/sys/kern/subr_lock.c#6 integrate .. //depot/projects/e500/sys/modules/Makefile#6 integrate .. //depot/projects/e500/sys/modules/cxgb/Makefile#5 integrate .. //depot/projects/e500/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/e500/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/e500/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/e500/sys/net/if.h#5 integrate .. //depot/projects/e500/sys/netinet/toedev.h#2 integrate .. //depot/projects/e500/sys/powerpc/conf/GENERIC#7 integrate .. //depot/projects/e500/sys/powerpc/conf/NOTES#4 integrate .. //depot/projects/e500/sys/powerpc/include/fpu.h#3 integrate .. //depot/projects/e500/sys/sys/_lock.h#2 integrate .. //depot/projects/e500/sys/sys/lock_profile.h#5 integrate .. //depot/projects/e500/sys/sys/proc.h#7 integrate .. //depot/projects/e500/sys/sys/sx.h#5 integrate .. //depot/projects/e500/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/e500/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/e500/tools/regression/lib/msun/test-csqrt.t#1 branch Differences ... ==== //depot/projects/e500/include/complex.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2001 The FreeBSD Project. + * Copyright (c) 2001-2007 The FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/complex.h,v 1.7 2007/12/12 23:43:51 das Exp $ + * $FreeBSD: src/include/complex.h,v 1.8 2007/12/15 08:38:44 das Exp $ */ #ifndef _COMPLEX_H @@ -57,6 +57,8 @@ double creal(double complex); float crealf(float complex); long double creall(long double complex); +double complex csqrt(double complex); +float complex csqrtf(float complex); __END_DECLS ==== //depot/projects/e500/lib/msun/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 5.1beta 93/09/24 -# $FreeBSD: src/lib/msun/Makefile,v 1.79 2007/12/12 23:43:50 das Exp $ +# $FreeBSD: src/lib/msun/Makefile,v 1.80 2007/12/15 08:38:44 das Exp $ # # ==================================================== # Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. @@ -40,7 +40,8 @@ k_tan.c k_tanf.c \ s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_carg.c s_cargf.c \ s_cbrt.c s_cbrtf.c s_ceil.c s_ceilf.c s_ceill.c \ - s_copysign.c s_copysignf.c s_cos.c s_cosf.c s_erf.c s_erff.c \ + s_copysign.c s_copysignf.c s_cos.c s_cosf.c \ + s_csqrt.c s_csqrtf.c s_erf.c s_erff.c \ s_exp2.c s_exp2f.c s_expm1.c s_expm1f.c s_fabsf.c s_fdim.c \ s_finite.c s_finitef.c \ s_floor.c s_floorf.c s_floorl.c s_fma.c s_fmaf.c \ @@ -93,7 +94,7 @@ INCS= fenv.h math.h MAN= acos.3 acosh.3 asin.3 asinh.3 atan.3 atan2.3 atanh.3 ceil.3 \ - cimag.3 copysign.3 cos.3 cosh.3 erf.3 exp.3 fabs.3 fdim.3 \ + cimag.3 copysign.3 cos.3 cosh.3 csqrt.3 erf.3 exp.3 fabs.3 fdim.3 \ feclearexcept.3 feenableexcept.3 fegetenv.3 \ fegetround.3 fenv.3 floor.3 \ fma.3 fmax.3 fmod.3 hypot.3 ieee.3 ieee_test.3 ilogb.3 j0.3 \ @@ -114,6 +115,7 @@ MLINKS+=copysign.3 copysignf.3 copysign.3 copysignl.3 MLINKS+=cos.3 cosf.3 MLINKS+=cosh.3 coshf.3 +MLINKS+=csqrt.3 csqrtf.3 MLINKS+=erf.3 erfc.3 erf.3 erff.3 erf.3 erfcf.3 MLINKS+=exp.3 expm1.3 exp.3 log.3 exp.3 log10.3 exp.3 log1p.3 exp.3 pow.3 \ exp.3 exp2.3 exp.3 exp2f.3 exp.3 expf.3 \ ==== //depot/projects/e500/lib/msun/Symbol.map#3 (text) ==== @@ -1,6 +1,8 @@ /* - * $FreeBSD: src/lib/msun/Symbol.map,v 1.6 2007/12/14 03:08:10 das Exp $ + * $FreeBSD: src/lib/msun/Symbol.map,v 1.7 2007/12/15 08:39:03 das Exp $ */ + +/* 7.0-CURRENT */ FBSD_1.0 { __fe_dfl_env; tgamma; @@ -60,8 +62,6 @@ asinhf; atan; atanf; - carg; - cargf; cbrt; cbrtf; ceil; @@ -183,3 +183,11 @@ drem; dremf; }; + +/* First added in 8.0-CURRENT */ +FBSD_1.1 { + carg; + cargf; + csqrt; + csqrtf; +}; ==== //depot/projects/e500/share/man/man3/tgmath.3#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man3/tgmath.3,v 1.2 2005/01/13 11:22:29 ru Exp $ +.\" $FreeBSD: src/share/man/man3/tgmath.3,v 1.3 2007/12/15 02:40:10 das Exp $ .\" .Dd August 14, 2004 .Os @@ -101,6 +101,7 @@ .It Fn exp Ta Fn exp Ta Fn cexp .It Fn log Ta Fn log Ta Fn clog .It Fn pow Ta Fn pow Ta Fn cpow +.It Fn sqrt Ta Fn sqrt Ta Fn csqrt .It Fn fabs Ta Fn fabs Ta Fn cabs .El .Pp ==== //depot/projects/e500/share/man/man4/Makefile#8 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/18/93 -# $FreeBSD: src/share/man/man4/Makefile,v 1.399 2007/11/13 11:23:52 ru Exp $ +# $FreeBSD: src/share/man/man4/Makefile,v 1.400 2007/12/15 00:56:15 scottl Exp $ MAN= aac.4 \ acpi.4 \ @@ -103,6 +103,7 @@ hme.4 \ ${_hptiop.4} \ ${_hptmv.4} \ + ${_hptrr.4} \ hwpmc.4 \ ichsmb.4 \ ${_ichwd.4} \ @@ -547,6 +548,7 @@ _coretemp.4= coretemp.4 _hptiop.4= hptiop.4 _hptmv.4= hptmv.4 +_hptrr.4= hptrr.4 _ichwd.4= ichwd.4 _if_nfe.4= if_nfe.4 _if_nve.4= if_nve.4 ==== //depot/projects/e500/sys/amd64/conf/GENERIC#8 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.489 2007/12/02 20:40:30 rwatson Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.490 2007/12/15 00:56:16 scottl Exp $ cpu HAMMER ident GENERIC @@ -131,6 +131,7 @@ device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - See NOTES for options device hptmv # Highpoint RocketRAID 182x +device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx device rr232x # Highpoint RocketRAID 232x device iir # Intel Integrated RAID device ips # IBM (Adaptec) ServeRAID ==== //depot/projects/e500/sys/amd64/conf/NOTES#5 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.72 2007/12/01 20:07:44 phk Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.73 2007/12/15 00:56:16 scottl Exp $ # # @@ -372,11 +372,15 @@ device aacp # SCSI Passthrough interface (optional, CAM required) # -# Highpoint RocketRAID 182x. This is really just software RAID on a -# Marvell SATA chip. +# Highpoint RocketRAID 182x. device hptmv # +# Highpoint RocketRAID. Supports RR172x, RR222x, RR2240, RR232x, RR2340, +# RR2210, RR174x, RR2522, RR231x, RR230x. +device hptrr + +# # Highpoint RocketRAID 232x. This is software RAID but with hardware # acceleration assistance for RAID_5. device rr232x ==== //depot/projects/e500/sys/conf/files.amd64#6 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.amd64,v 1.116 2007/12/09 21:00:36 alc Exp $ +# $FreeBSD: src/sys/conf/files.amd64,v 1.117 2007/12/15 00:56:15 scottl Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -72,6 +72,11 @@ dependency "$S/dev/hptmv/amd64-elf.raid.o.uu" \ compile-with "uudecode < $S/dev/hptmv/amd64-elf.raid.o.uu" \ no-implicit-rule +hptrr_lib.o optional hptrr \ + dependency "$S/dev/hptrr/amd64-elf.hptrr_lib.o.uu" \ + compile-with "uudecode < $S/dev/hptrr/amd64-elf.hptrr_lib.o.uu" \ + no-implicit-rule +# rr232x_lib.o optional rr232x \ dependency "$S/dev/rr232x/amd64-elf.rr232x_lib.o.uu" \ compile-with "uudecode < $S/dev/rr232x/amd64-elf.rr232x_lib.o.uu" \ @@ -183,6 +188,9 @@ dev/hptmv/gui_lib.c optional hptmv dev/hptmv/hptproc.c optional hptmv dev/hptmv/ioctl.c optional hptmv +dev/hptrr/hptrr_os_bsd.c optional hptrr +dev/hptrr/hptrr_osm_bsd.c optional hptrr +dev/hptrr/hptrr_config.c optional hptrr dev/hwpmc/hwpmc_amd.c optional hwpmc dev/hwpmc/hwpmc_piv.c optional hwpmc dev/hwpmc/hwpmc_x86.c optional hwpmc ==== //depot/projects/e500/sys/conf/files.i386#6 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.i386,v 1.589 2007/12/09 21:00:36 alc Exp $ +# $FreeBSD: src/sys/conf/files.i386,v 1.590 2007/12/15 00:56:15 scottl Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -77,12 +77,16 @@ compile-with "uudecode < $S/dev/hptmv/i386-elf.raid.o.uu" \ no-implicit-rule # +hptrr_lib.o optional hptrr \ + dependency "$S/dev/hptrr/i386-elf.hptrr_lib.o.uu" \ + compile-with "uudecode < $S/dev/hptrr/i386-elf.hptrr_lib.o.uu" \ + no-implicit-rule +# rr232x_lib.o optional rr232x \ dependency "$S/dev/rr232x/i386-elf.rr232x_lib.o.uu" \ compile-with "uudecode < $S/dev/rr232x/i386-elf.rr232x_lib.o.uu" \ no-implicit-rule # -# compat/linprocfs/linprocfs.c optional linprocfs compat/linsysfs/linsysfs.c optional linsysfs compat/linux/linux_emul.c optional compat_linux @@ -194,6 +198,9 @@ dev/hptmv/gui_lib.c optional hptmv dev/hptmv/hptproc.c optional hptmv dev/hptmv/ioctl.c optional hptmv +dev/hptrr/hptrr_os_bsd.c optional hptrr +dev/hptrr/hptrr_osm_bsd.c optional hptrr +dev/hptrr/hptrr_config.c optional hptrr dev/hwpmc/hwpmc_amd.c optional hwpmc dev/hwpmc/hwpmc_pentium.c optional hwpmc dev/hwpmc/hwpmc_piv.c optional hwpmc ==== //depot/projects/e500/sys/conf/files.powerpc#11 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.powerpc,v 1.69 2007/12/14 23:47:39 marcel Exp $ +# $FreeBSD: src/sys/conf/files.powerpc,v 1.70 2007/12/16 01:02:47 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and ==== //depot/projects/e500/sys/conf/options#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.611 2007/12/06 02:32:42 marcel Exp $ +# $FreeBSD: src/sys/conf/options,v 1.613 2007/12/15 23:13:31 jeff Exp $ # # On the handling of kernel options # @@ -540,7 +540,6 @@ MUTEX_NOINLINE opt_global.h LOCK_PROFILING opt_global.h LOCK_PROFILING_FAST opt_global.h -LOCK_PROFILING_SHARED opt_global.h MSIZE opt_global.h REGRESSION opt_global.h RESTARTABLE_PANICS opt_global.h @@ -752,3 +751,6 @@ # Interrupt filtering INTR_FILTER opt_global.h + +#Disable code to dispatch tcp offloading +TCP_OFFLOAD_DISABLE opt_inet.h ==== //depot/projects/e500/sys/conf/options.powerpc#3 (text+ko) ==== @@ -1,9 +1,8 @@ -# $FreeBSD: src/sys/conf/options.powerpc,v 1.9 2004/06/25 13:44:34 grehan Exp $ +# $FreeBSD: src/sys/conf/options.powerpc,v 1.10 2007/12/16 00:45:56 marcel Exp $ # Options specific to the powerpc platform kernels AIM opt_global.h E500 opt_global.h -IPKDB GFB_DEBUG opt_gfb.h GFB_NO_FONT_LOADING opt_gfb.h ==== //depot/projects/e500/sys/dev/cxgb/cxgb_adapter.h#5 (text+ko) ==== @@ -26,7 +26,7 @@ POSSIBILITY OF SUCH DAMAGE. -$FreeBSD: src/sys/dev/cxgb/cxgb_adapter.h,v 1.20 2007/09/10 00:59:51 kmacy Exp $ +$FreeBSD: src/sys/dev/cxgb/cxgb_adapter.h,v 1.21 2007/12/15 21:54:58 kmacy Exp $ ***************************************************************************/ @@ -55,12 +55,14 @@ #ifdef CONFIG_DEFINED #include -#include +#include #include +#include #else #include +#include #include -#include +#include #endif #define USE_SX @@ -371,7 +373,7 @@ struct port_info port[MAX_NPORTS]; device_t portdev[MAX_NPORTS]; - struct toedev tdev; + struct t3cdev tdev; char fw_version[64]; uint32_t open_device_map; uint32_t registered_device_map; @@ -497,7 +499,7 @@ void t3_os_link_changed(adapter_t *adapter, int port_id, int link_status, int speed, int duplex, int fc); void t3_sge_err_intr_handler(adapter_t *adapter); -int t3_offload_tx(struct toedev *, struct mbuf *); +int t3_offload_tx(struct t3cdev *, struct mbuf *); void t3_os_ext_intr_handler(adapter_t *adapter); void t3_os_set_hw_addr(adapter_t *adapter, int port_idx, u8 hw_addr[]); int t3_mgmt_tx(adapter_t *adap, struct mbuf *m); @@ -554,7 +556,7 @@ } static __inline struct adapter * -tdev2adap(struct toedev *d) +tdev2adap(struct t3cdev *d) { return container_of(d, struct adapter, tdev); } ==== //depot/projects/e500/sys/dev/cxgb/cxgb_include.h#3 (text+ko) ==== @@ -1,8 +1,9 @@ /* - * $FreeBSD: src/sys/dev/cxgb/cxgb_include.h,v 1.2 2007/09/10 00:59:51 kmacy Exp $ + * $FreeBSD: src/sys/dev/cxgb/cxgb_include.h,v 1.3 2007/12/15 21:54:58 kmacy Exp $ */ + #ifdef CONFIG_DEFINED #include #include @@ -14,11 +15,9 @@ #include #include #include -#include #include #include - - +#include #else #include #include @@ -31,7 +30,9 @@ #include #include -#include #include #include +#include #endif + + ==== //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ ***************************************************************************/ #include -__FBSDID("$FreeBSD: src/sys/dev/cxgb/cxgb_l2t.c,v 1.3 2007/08/17 05:57:03 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/cxgb/cxgb_l2t.c,v 1.4 2007/12/15 21:54:58 kmacy Exp $"); #include #include @@ -59,7 +59,7 @@ #define VLAN_NONE 0xfff #define SDL(s) ((struct sockaddr_dl *)s) -#define RT_ENADDR(rt) ((u_char *)LLADDR(SDL((rt)))) +#define RT_ENADDR(sa) ((u_char *)LLADDR(SDL((sa)))) #define rt_expire rt_rmx.rmx_expire struct llinfo_arp { @@ -103,11 +103,8 @@ RT_ADDREF(rt); RT_UNLOCK(rt); - if (e->neigh) { - RT_LOCK(e->neigh); - RT_REMREF(e->neigh); - RT_UNLOCK(e->neigh); - } + if (e->neigh) + RTFREE(e->neigh); e->neigh = rt; } @@ -117,7 +114,7 @@ * entry locked. */ static int -setup_l2e_send_pending(struct toedev *dev, struct mbuf *m, +setup_l2e_send_pending(struct t3cdev *dev, struct mbuf *m, struct l2t_entry *e) { struct cpl_l2t_write_req *req; @@ -130,13 +127,14 @@ * XXX MH_ALIGN */ req = mtod(m, struct cpl_l2t_write_req *); + m->m_pkthdr.len = m->m_len = sizeof(*req); + req->wr.wr_hi = htonl(V_WR_OP(FW_WROPCODE_FORWARD)); OPCODE_TID(req) = htonl(MK_OPCODE_TID(CPL_L2T_WRITE_REQ, e->idx)); req->params = htonl(V_L2T_W_IDX(e->idx) | V_L2T_W_IFF(e->smt_idx) | V_L2T_W_VLAN(e->vlan & EVL_VLID_MASK) | V_L2T_W_PRIO(vlan_prio(e))); - memcpy(e->dmac, RT_ENADDR(e->neigh), sizeof(e->dmac)); memcpy(req->dst_mac, e->dmac, sizeof(req->dst_mac)); m_set_priority(m, CPL_PRIORITY_CONTROL); cxgb_ofld_send(dev, m); @@ -168,21 +166,24 @@ } int -t3_l2t_send_slow(struct toedev *dev, struct mbuf *m, - struct l2t_entry *e) +t3_l2t_send_slow(struct t3cdev *dev, struct mbuf *m, struct l2t_entry *e) { - struct rtentry *rt; - struct mbuf *m0; + struct rtentry *rt = e->neigh; + struct sockaddr_in sin; + + bzero(&sin, sizeof(struct sockaddr_in)); + sin.sin_family = AF_INET; + sin.sin_len = sizeof(struct sockaddr_in); + sin.sin_addr.s_addr = e->addr; + + - if ((m0 = m_gethdr(M_NOWAIT, MT_DATA)) == NULL) - return (ENOMEM); - - rt = e->neigh; + printf("send slow on rt=%p eaddr=0x%08x\n", rt, e->addr); again: switch (e->state) { case L2T_STATE_STALE: /* entry is stale, kick off revalidation */ - arpresolve(rt->rt_ifp, rt, m0, rt->rt_gateway, RT_ENADDR(rt)); + arpresolve(rt->rt_ifp, rt, NULL, (struct sockaddr *)&sin, e->dmac); mtx_lock(&e->lock); if (e->state == L2T_STATE_STALE) e->state = L2T_STATE_VALID; @@ -197,9 +198,8 @@ } arpq_enqueue(e, m); mtx_unlock(&e->lock); - - if ((m0 = m_gethdr(M_NOWAIT, MT_DATA)) == NULL) - return (ENOMEM); + printf("enqueueing arp request\n"); + /* * Only the first packet added to the arpq should kick off * resolution. However, because the m_gethdr below can fail, @@ -208,7 +208,13 @@ * A better way would be to use a work request to retry L2T * entries when there's no memory. */ - if (arpresolve(rt->rt_ifp, rt, m0, rt->rt_gateway, RT_ENADDR(rt)) == 0) { + printf("doing arpresolve on 0x%x \n", e->addr); + if (arpresolve(rt->rt_ifp, rt, NULL, (struct sockaddr *)&sin, e->dmac) == 0) { + printf("mac=%x:%x:%x:%x:%x:%x\n", + e->dmac[0], e->dmac[1], e->dmac[2], e->dmac[3], e->dmac[4], e->dmac[5]); + + if ((m = m_gethdr(M_NOWAIT, MT_DATA)) == NULL) + return (ENOMEM); mtx_lock(&e->lock); if (e->arpq_head) @@ -216,16 +222,21 @@ else m_freem(m); mtx_unlock(&e->lock); - } + } else + printf("arpresolve returned non-zero\n"); } return 0; } void -t3_l2t_send_event(struct toedev *dev, struct l2t_entry *e) +t3_l2t_send_event(struct t3cdev *dev, struct l2t_entry *e) { struct rtentry *rt; struct mbuf *m0; + struct sockaddr_in sin; + sin.sin_family = AF_INET; + sin.sin_len = sizeof(struct sockaddr_in); + sin.sin_addr.s_addr = e->addr; if ((m0 = m_gethdr(M_NOWAIT, MT_DATA)) == NULL) return; @@ -234,7 +245,7 @@ again: switch (e->state) { case L2T_STATE_STALE: /* entry is stale, kick off revalidation */ - arpresolve(rt->rt_ifp, rt, m0, rt->rt_gateway, RT_ENADDR(rt)); + arpresolve(rt->rt_ifp, rt, m0, (struct sockaddr *)&sin, e->dmac); mtx_lock(&e->lock); if (e->state == L2T_STATE_STALE) { e->state = L2T_STATE_VALID; @@ -261,7 +272,7 @@ * A better way would be to use a work request to retry L2T * entries when there's no memory. */ - arpresolve(rt->rt_ifp, rt, m0, rt->rt_gateway, RT_ENADDR(rt)); + arpresolve(rt->rt_ifp, rt, m0, (struct sockaddr *)&sin, e->dmac); } return; @@ -301,6 +312,7 @@ } e->state = L2T_STATE_UNUSED; } + return e; } @@ -318,19 +330,21 @@ void t3_l2e_free(struct l2t_data *d, struct l2t_entry *e) { + struct rtentry *rt = NULL; + mtx_lock(&e->lock); if (atomic_load_acq_int(&e->refcnt) == 0) { /* hasn't been recycled */ - if (e->neigh) { - RT_LOCK(e->neigh); - RT_REMREF(e->neigh); - RT_UNLOCK(e->neigh); - e->neigh = NULL; - } + rt = e->neigh; + e->neigh = NULL; } + mtx_unlock(&e->lock); atomic_add_int(&d->nfree, 1); + if (rt) + RTFREE(rt); } + /* * Update an L2T entry that was previously used for the same next hop as neigh. * Must be called with softirqs disabled. @@ -346,7 +360,7 @@ if (neigh != e->neigh) neigh_replace(e, neigh); - if (memcmp(e->dmac, RT_ENADDR(neigh), sizeof(e->dmac)) || + if (memcmp(e->dmac, RT_ENADDR(neigh->rt_gateway), sizeof(e->dmac)) || (neigh->rt_expire > time_uptime)) e->state = L2T_STATE_RESOLVING; else if (la->la_hold == NULL) @@ -357,14 +371,15 @@ } struct l2t_entry * -t3_l2t_get(struct toedev *dev, struct rtentry *neigh, - unsigned int smt_idx) +t3_l2t_get(struct t3cdev *dev, struct rtentry *neigh, struct ifnet *ifp, + struct sockaddr *sa) { struct l2t_entry *e; struct l2t_data *d = L2DATA(dev); - u32 addr = *(u32 *) rt_key(neigh); + u32 addr = ((struct sockaddr_in *)sa)->sin_addr.s_addr; int ifidx = neigh->rt_ifp->if_index; int hash = arp_hash(addr, ifidx, d); + unsigned int smt_idx = ((struct port_info *)ifp->if_softc)->port_id; rw_wlock(&d->lock); for (e = d->l2tab[hash].first; e; e = e->next) @@ -379,14 +394,21 @@ /* Need to allocate a new entry */ e = alloc_l2e(d); if (e) { + printf("initializing new entry\n"); + mtx_lock(&e->lock); /* avoid race with t3_l2t_free */ e->next = d->l2tab[hash].first; d->l2tab[hash].first = e; + rw_wunlock(&d->lock); + e->state = L2T_STATE_RESOLVING; e->addr = addr; e->ifindex = ifidx; e->smt_idx = smt_idx; atomic_store_rel_int(&e->refcnt, 1); + e->neigh = NULL; + + neigh_replace(e, neigh); #ifdef notyet /* @@ -398,7 +420,10 @@ #endif e->vlan = VLAN_NONE; mtx_unlock(&e->lock); + + return (e); } + done: rw_wunlock(&d->lock); return e; @@ -413,7 +438,7 @@ * handler. */ static void -handle_failed_resolution(struct toedev *dev, struct mbuf *arpq) +handle_failed_resolution(struct t3cdev *dev, struct mbuf *arpq) { while (arpq) { @@ -433,21 +458,20 @@ } -#if defined(NETEVENT) || !defined(CONFIG_CHELSIO_T3_MODULE) -/* - * Called when the host's ARP layer makes a change to some entry that is - * loaded into the HW L2 table. - */ void -t3_l2t_update(struct toedev *dev, struct rtentry *neigh) +t3_l2t_update(struct t3cdev *dev, struct rtentry *neigh, struct sockaddr *sa) { struct l2t_entry *e; struct mbuf *arpq = NULL; struct l2t_data *d = L2DATA(dev); - u32 addr = *(u32 *) rt_key(neigh); + u32 addr = *(u32 *) &((struct sockaddr_in *)sa)->sin_addr; int ifidx = neigh->rt_ifp->if_index; int hash = arp_hash(addr, ifidx, d); struct llinfo_arp *la; + u_char edst[ETHER_ADDR_LEN]; + + + printf("t3_l2t_update called with arp info\n"); rw_rlock(&d->lock); for (e = d->l2tab[hash].first; e; e = e->next) @@ -456,10 +480,16 @@ goto found; } rw_runlock(&d->lock); + printf("addr=0x%08x not found\n", addr); return; found: + printf("found 0x%08x\n", addr); + arpresolve(neigh->rt_ifp, neigh, NULL, sa, edst); + rw_runlock(&d->lock); + memcpy(e->dmac, edst, ETHER_ADDR_LEN); + if (atomic_load_acq_int(&e->refcnt)) { if (neigh != e->neigh) neigh_replace(e, neigh); @@ -470,85 +500,19 @@ if (la->la_asked >= 5 /* arp_maxtries */) { arpq = e->arpq_head; e->arpq_head = e->arpq_tail = NULL; - } else if (la->la_hold == NULL) + } else setup_l2e_send_pending(dev, NULL, e); } else { - e->state = (la->la_hold == NULL) ? - L2T_STATE_VALID : L2T_STATE_STALE; - if (memcmp(e->dmac, RT_ENADDR(neigh), 6)) - setup_l2e_send_pending(dev, NULL, e); - } - } - mtx_unlock(&e->lock); - - if (arpq) - handle_failed_resolution(dev, arpq); -} -#else -/* - * Called from a kprobe, interrupts are off. - */ -void -t3_l2t_update(struct toedev *dev, struct rtentry *neigh) -{ - struct l2t_entry *e; - struct l2t_data *d = L2DATA(dev); - u32 addr = *(u32 *) rt_key(neigh); - int ifidx = neigh->dev->ifindex; - int hash = arp_hash(addr, ifidx, d); - - rw_rlock(&d->lock); - for (e = d->l2tab[hash].first; e; e = e->next) - if (e->addr == addr && e->ifindex == ifidx) { - mtx_lock(&e->lock); - if (atomic_load_acq_int(&e->refcnt)) { - if (neigh != e->neigh) - neigh_replace(e, neigh); - e->tdev = dev; - mod_timer(&e->update_timer, jiffies + 1); - } - mtx_unlock(&e->lock); - break; - } - rw_runlock(&d->lock); -} - -static void -update_timer_cb(unsigned long data) -{ - struct mbuf *arpq = NULL; - struct l2t_entry *e = (struct l2t_entry *)data; - struct rtentry *neigh = e->neigh; - struct toedev *dev = e->tdev; - - barrier(); - if (!atomic_load_acq_int(&e->refcnt)) - return; - - rw_rlock(&neigh->lock); - mtx_lock(&e->lock); - - if (atomic_load_acq_int(&e->refcnt)) { - if (e->state == L2T_STATE_RESOLVING) { - if (neigh->nud_state & NUD_FAILED) { - arpq = e->arpq_head; - e->arpq_head = e->arpq_tail = NULL; - } else if (neigh_is_connected(neigh) && e->arpq_head) - setup_l2e_send_pending(dev, NULL, e); - } else { - e->state = neigh_is_connected(neigh) ? - L2T_STATE_VALID : L2T_STATE_STALE; - if (memcmp(e->dmac, RT_ENADDR(neigh), sizeof(e->dmac))) + e->state = L2T_STATE_VALID; + if (memcmp(e->dmac, RT_ENADDR(neigh->rt_gateway), 6)) setup_l2e_send_pending(dev, NULL, e); } } mtx_unlock(&e->lock); - rw_runlock(&neigh->lock); if (arpq) handle_failed_resolution(dev, arpq); } -#endif struct l2t_data * t3_init_l2t(unsigned int l2t_capacity) @@ -570,12 +534,6 @@ d->l2tab[i].state = L2T_STATE_UNUSED; mtx_init(&d->l2tab[i].lock, "L2TAB", NULL, MTX_DEF); atomic_store_rel_int(&d->l2tab[i].refcnt, 0); -#ifndef NETEVENT -#ifdef CONFIG_CHELSIO_T3_MODULE - setup_timer(&d->l2tab[i].update_timer, update_timer_cb, - (unsigned long)&d->l2tab[i]); -#endif -#endif } return d; } @@ -583,86 +541,6 @@ void t3_free_l2t(struct l2t_data *d) { -#ifndef NETEVENT -#ifdef CONFIG_CHELSIO_T3_MODULE - int i; - - /* Stop all L2T timers */ - for (i = 0; i < d->nentries; ++i) - del_timer_sync(&d->l2tab[i].update_timer); -#endif -#endif cxgb_free_mem(d); } -#ifdef CONFIG_PROC_FS -#include -#include -#include - -static inline void * -l2t_get_idx(struct seq_file *seq, loff_t pos) -{ - struct l2t_data *d = seq->private; - - return pos >= d->nentries ? NULL : &d->l2tab[pos]; -} - -static void * -l2t_seq_start(struct seq_file *seq, loff_t *pos) -{ - return *pos ? l2t_get_idx(seq, *pos) : SEQ_START_TOKEN; -} - -static void * -l2t_seq_next(struct seq_file *seq, void *v, loff_t *pos) -{ - v = l2t_get_idx(seq, *pos + 1); - if (v) - ++*pos; - return v; -} - -static void -l2t_seq_stop(struct seq_file *seq, void *v) -{ -} - -static char -l2e_state(const struct l2t_entry *e) -{ - switch (e->state) { - case L2T_STATE_VALID: return 'V'; /* valid, fast-path entry */ - case L2T_STATE_STALE: return 'S'; /* needs revalidation, but usable */ - case L2T_STATE_RESOLVING: - return e->arpq_head ? 'A' : 'R'; - default: - return 'U'; - } -} - -static int -l2t_seq_show(struct seq_file *seq, void *v) -{ - if (v == SEQ_START_TOKEN) - seq_puts(seq, "Index IP address Ethernet address VLAN " - "Prio State Users SMTIDX Port\n"); - else { - char ip[20]; - struct l2t_entry *e = v; - - mtx_lock(&e->lock); - sprintf(ip, "%u.%u.%u.%u", NIPQUAD(e->addr)); - seq_printf(seq, "%-5u %-15s %02x:%02x:%02x:%02x:%02x:%02x %4d" - " %3u %c %7u %4u %s\n", - e->idx, ip, e->dmac[0], e->dmac[1], e->dmac[2], - e->dmac[3], e->dmac[4], e->dmac[5], - e->vlan & EVL_VLID_MASK, vlan_prio(e), - l2e_state(e), atomic_load_acq_int(&e->refcnt), e->smt_idx, - e->neigh ? e->neigh->dev->name : ""); - mtx_unlock(&e->lock); - } - return 0; -} - -#endif ==== //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.h#3 (text+ko) ==== @@ -25,13 +25,13 @@ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Dec 16 01:14:07 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 17C4F16A41B; Sun, 16 Dec 2007 01:14:07 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B0E7A16A417 for ; Sun, 16 Dec 2007 01:14:06 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 948B913C46B for ; Sun, 16 Dec 2007 01:14:06 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBG1E6ne089532 for ; Sun, 16 Dec 2007 01:14:06 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBG1E6wC089523 for perforce@freebsd.org; Sun, 16 Dec 2007 01:14:06 GMT (envelope-from marcel@freebsd.org) Date: Sun, 16 Dec 2007 01:14:06 GMT Message-Id: <200712160114.lBG1E6wC089523@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 130989 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 01:14:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=130989 Change 130989 by marcel@marcel_cluster on 2007/12/16 01:13:14 Diff reduction. Affected files ... .. //depot/projects/e500/sys/powerpc/aim/interrupt.c#5 edit Differences ... ==== //depot/projects/e500/sys/powerpc/aim/interrupt.c#5 (text+ko) ==== @@ -63,8 +63,6 @@ #include "pic_if.h" -extern void trap(struct trapframe *); - /* * A very short dispatch, to try and maximise assembler code use * between all exception types. Maybe 'true' interrupts should go From owner-p4-projects@FreeBSD.ORG Sun Dec 16 01:15:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 22CC916A418; Sun, 16 Dec 2007 01:15:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C456216A419 for ; Sun, 16 Dec 2007 01:15:07 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A7CB413C44B for ; Sun, 16 Dec 2007 01:15:07 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBG1F7PC089698 for ; Sun, 16 Dec 2007 01:15:07 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBG1F7dh089695 for perforce@freebsd.org; Sun, 16 Dec 2007 01:15:07 GMT (envelope-from marcel@freebsd.org) Date: Sun, 16 Dec 2007 01:15:07 GMT Message-Id: <200712160115.lBG1F7dh089695@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 130990 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 01:15:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=130990 Change 130990 by marcel@marcel_cluster on 2007/12/16 01:14:20 Diff reduction. Affected files ... .. //depot/projects/e500/sys/powerpc/aim/mmu_oea.c#3 edit Differences ... ==== //depot/projects/e500/sys/powerpc/aim/mmu_oea.c#3 (text+ko) ==== @@ -203,8 +203,6 @@ extern struct pmap ofw_pmap; -extern vm_offset_t kstack0; -extern vm_offset_t kstack0_phys; /* From owner-p4-projects@FreeBSD.ORG Sun Dec 16 01:17:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5EF1C16A41B; Sun, 16 Dec 2007 01:17:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0B74116A417 for ; Sun, 16 Dec 2007 01:17:11 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E30E713C461 for ; Sun, 16 Dec 2007 01:17:10 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBG1HAgb089785 for ; Sun, 16 Dec 2007 01:17:10 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBG1HAwM089782 for perforce@freebsd.org; Sun, 16 Dec 2007 01:17:10 GMT (envelope-from marcel@freebsd.org) Date: Sun, 16 Dec 2007 01:17:10 GMT Message-Id: <200712160117.lBG1HAwM089782@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 130991 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 01:17:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=130991 Change 130991 by marcel@marcel_cluster on 2007/12/16 01:16:48 Diff reduction. Affected files ... .. //depot/projects/e500/sys/powerpc/include/md_var.h#6 edit Differences ... ==== //depot/projects/e500/sys/powerpc/include/md_var.h#6 (text+ko) ==== @@ -39,6 +39,9 @@ extern long Maxmem; extern int busdma_swi_pending; +extern vm_offset_t kstack0; +extern vm_offset_t kstack0_phys; + extern u_long ns_per_tick; #if defined(_KERNEL) || defined(_STANDALONE) From owner-p4-projects@FreeBSD.ORG Sun Dec 16 16:08:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8F5BD16A46B; Sun, 16 Dec 2007 16:08:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3C2C716A418 for ; Sun, 16 Dec 2007 16:08:19 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2225913C468 for ; Sun, 16 Dec 2007 16:08:19 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBGG8Jte068844 for ; Sun, 16 Dec 2007 16:08:19 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBGG8I0P068841 for perforce@freebsd.org; Sun, 16 Dec 2007 16:08:18 GMT (envelope-from pgj@FreeBSD.org) Date: Sun, 16 Dec 2007 16:08:18 GMT Message-Id: <200712161608.lBGG8I0P068841@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 131024 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 16:08:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131024 Change 131024 by pgj@disznohal on 2007/12/16 16:07:39 Add initial Hungarian translation of Chapter 9: Printing. Affected files ... .. //depot/projects/docproj_hu/books/handbook/printing/chapter.sgml#2 edit Differences ... ==== //depot/projects/docproj_hu/books/handbook/printing/chapter.sgml#2 (text+ko) ==== @@ -4,1036 +4,1469 @@ $FreeBSD: doc/en_US.ISO8859-1/books/handbook/printing/chapter.sgml,v 1.96 2006/05/30 23:08:24 trhodes Exp $ --> - + + + Sean Kelly - Contributed by + Írta: - Jim Mock - Restructured and updated by - + Újraszervezte és frissítette: + - Printing + Nyomtatás - Synopsis - LPD spooling system - printing + Áttekintés + LPD nyomtatási + rendszer + nyomtatás - FreeBSD can be used to print with a wide variety of printers, from the - oldest impact printer to the latest laser printers, and everything in - between, allowing you to produce high-quality printed output from the - applications you run. + A &os; képes rengeteg féle és fajta + nyomtatóval együttmûködni, a legrégebbi + vegyszeres nyomtatótól kezdve egészen + napjaink lézernyomtatójáig, aminek + köszönhetõen az alkalmazásaikkal nagyon + jó minõségû nyomtatásokat tudunk + készíteni. - FreeBSD can also be configured to act as a print server on a - network; in this capacity FreeBSD can receive print jobs from a variety - of other computers, including other FreeBSD computers, &windows; and &macos; - hosts. FreeBSD will ensure that one job at a time is printed, and can - keep statistics on which users and machines are doing the most printing, - produce banner pages showing who's printout is who's, and - more. + A &os; a helyi hálózaton + nyomtatószervernek is beállítható. + Ekkor a vele közös hálózatra + csatlakozó többi, &os;, &windows; vagy &macos; + rendszerû számítógéptõl + képes nyomtatási kéréseket elfogadni. + A &os; gondoskodik róla, hogy egyszerre csak egy + nyomtatás készüljön el, számon + tartja, hogy mely felhasználók és + számítógépek nyomtatnak a + legtöbbet, és minden feladathoz + munkalapot (banner page) készít, + amiben többek közt megtalálhatjuk, hogy kihez + tartozik. - After reading this chapter, you will know: + A fejezet elolvasása során + megismerjük: - How to configure the FreeBSD print spooler. + hogyan állítsuk be a &os; nyomtatási + sorát - How to install print filters, to handle special print jobs - differently, including converting incoming documents to print - formats that your printers understand. + hogyan telepítsünk nyomtatási + szûrõket, hogyan kezeljünk + különbözõ speciális + nyomtatási feladatokat, tehát mondjuk a + miként alakítsuk át a + beérkezõ dokumentumokot olyan nyomtatási + formátumra, amelyet a nyomtatónk is + megért - How to enable header, or banner pages on your printout. + hogyan engedélyezzük a fejléc- vagy + munkainformációk + kinyomtatását - How to print with printers connected to other computers. + hogyan nyomtassunk más + számítógépekhez kapcsolt + nyomtatókkal - How to print with printers connected directly to the - network. + hogyan nyomtassunk a hálózatra + közvetlenül kapcsolt nyomtatókkal - How to control printer restrictions, including limiting the size - of print jobs, and preventing certain users from printing. + hogyan állítsuk a nyomtató + korlátait, például a nyomtatási + munkák méretét, amivel egyes + felhasználók nyomtatását + visszafoghatjuk - How to keep printer statistics, and account for printer - usage. + hogyan készítsünk nyomtatási + kimutatásokat és nyilvántartást a + nyomtató használatáról - How to troubleshoot printing problems. + hogyan keressük meg a nyomtatás során + felmerül problémák okait - Before reading this chapter, you should: + A fejezet elolvasásához ajánlott: - Know how to configure and install a new kernel - (). + egy új rendszermag + beállításának és + telepítésének ismerete (). - Introduction + Bevezetés - In order to use printers with FreeBSD, you may set - them up to work with the Berkeley line printer spooling system, - also known as the LPD spooling system, - or just LPD. - It is the standard printer control system in FreeBSD. This - chapter introduces LPD and - will guide you through its configuration. + A &os;-ben a nyomtatók + mûködéséhez be kell állítani + hozzájuk az LPD nyomtatási + rendszert, vagyis a Berkeley sornyomtatási + rendszerét, amelyet röviden csak + LPD-nek fogunk ezentúl + hívni. Ez a &os; alapértelmezett szabványos + nyomtatásvezérlõ rendszere. Ebben a fejezetben + az LPD és annak + konfigurációja kerül bemutatásra. - If you are already familiar with - LPD or another printer spooling - system, you may wish to skip to section Basic Setup. + Ha már találkoztunk az + LPD-vel vagy hozzá hasonló + rendszerekkel, akkor innen nyugodtan ugorhatunk az Kezdeti + beállítások címû + szakaszra. - LPD controls everything about a - host's printers. It is responsible for a number of things: + Az LPD vezérli a + számítógéphez csatlakoztatott + nyomtató összes funkcióját. + Számos feladata van: - It controls access to attached printers and printers - attached to other hosts on the network. + felügyeli a helyben és hálózaton + keresztül csatlakoztatott nyomtatók + hozzáféréseit - print jobs + nyomtatási + munkák - It enables users to submit files to be printed; these - submissions are known as jobs. + lehetõvé teszi az átküldött + állományok kinyomtatását, az ilyen + megbízásokat + nevezzükmunkáknak - It prevents multiple users from accessing a printer at the - same time by maintaining a queue for each - printer. + minden nyomtatóhoz fenntart egy nyomtatási + sort, amivel meg tudja + akadályozni, hogy egyszerre több + felhasználó is hozzá tudjon férni + az egyes nyomtatókhoz - It can print header pages (also known - as banner or burst - pages) so users can easily find jobs they have printed in a - stack of printouts. + fejléceket (vagy más + néven munka- vagy + elválasztó lapokat) + nyomtat, így a felhasználók könnyen + megtalálják a saját nyomtatásaikat + a többi közt - It takes care of communications parameters for printers - connected on serial ports. + felügyeli a soros portokon csatlakozó + nyomtatók kommunikációs + beállításait - It can send jobs over the network to a - LPD spooler on another host. + hálózaton keresztül átküli + a munkákat egy másik + számítógép + LPD sorába - It can run special filters to format jobs to be printed for - various printer languages or printer capabilities. + a nyomtatandó munkák + formázásához lefuttatja az adott + nyomtató nyelvéhez és + képességeihez illeszkedõ speciális + szûrõket - It can account for printer usage. + nyilvántartja a nyomtató + kihasználtságát - Through a configuration file - (/etc/printcap), and by providing the special - filter programs, you can enable the LPD - system to do all or some - subset of the above for a great variety of printer hardware. + A beállításait tartalmazó + állomány (/etc/printcap) + és speciális szûrõprogramok + segítségével az + LPD sokféle nyomtatón + képes az összes említett feladatot vagy annak + egy részét megvalósítani. - Why You Should Use the Spooler + Amiért nyomtatási sort érdemes + használni - If you are the sole user of your system, you may be wondering - why you should bother with the spooler when you do not need access - control, header pages, or printer accounting. While it is - possible to enable direct access to a printer, you should use the - spooler anyway since: + Amikor csak egyedül vagyunk a rendszerben, + felmerülhet bennünk a kérdés, hogy minek + is kellene nekünk veszõdni a nyomtatási sor + beállításával, hiszen nincs + szükségünk sem a + hozzáférések + vezérlésére, sem fejlécekre, sem + pedig nyilvántartásra. Habár akár + közvetlenül is el tudjuk érni a + nyomtatót, néhány okból azért + mégis érdemes nyomtatási sort + használni: - LPD prints jobs in the background; - you do not have to wait - for data to be copied to the printer. + az LPD a + háttérben nyomtat, ezért ilyenkor nem + kell megvárni, amikor az adat + átmásolódik a nyomtatóra &tex; - LPD can conveniently run a job - to be printed through - filters to add date/time headers or convert a special file - format (such as a &tex; DVI file) into a format the printer will - understand. You will not have to do these steps - manually. + az LPD tetszõlegesen + tudja alakítani a nyomtatási munkákat: + hozzájuk tud tenni különbözõ + adatokat (dátum és idõ), vagy a + speciális állományokat (mint mondjuk a + &tex; DVI formátuma) képes megértetni a + nyomtatóval, és nem nekünk kell + mindezeket a lépéseket + elvégeznünk - Many free and commercial programs that provide a print - feature usually expect to talk to the spooler on your system. - By setting up the spooling system, you will more easily - support other software you may later add or already - have. + számos nyomtatási lehetõséggel + rendelkezõ szabad és kereskedelmi program arra + számít, hogy a rendszerünkben + nyomtatási sor található, ezért + egy ilyen beállításával sokkal + könnyebb használni ezeket a szoftvereket - Basic Setup + Kezdeti beállítások - To use printers with the LPD spooling - system, you will need to - set up both your printer hardware and the - LPD software. This - document describes two levels of setup: + Úgy tudjuk használni a nyomtatókat az + LPD nyomtatási + rendszerével, ha egyaránt beállítjuk a + nyomtatót és magát az + LPD-t is. Itt a + beállítás két szintjét + tárgyaljuk: - See section Simple Printer - Setup to learn how to connect a printer, tell - LPD how to - communicate with it, and print plain text files to the - printer. + Az Egyszerû + nyomtatóbeállítás + címû szakaszból megtudhatjuk, hogyan tudunk + csatlakoztatni egy nyomtatót, hogyan adjuk meg az + LPD-nek, miként + kommunikáljon vele, hogyan nyomtassunk ki egyszerû + szöveges állományokat a + nyomtatón. - See section Advanced - Printer Setup to learn how to print a variety of - special file formats, to print header pages, to print across a - network, to control access to printers, and to do printer - accounting. + A Haladó + nyomtatóbeállítás + szakaszban bemutatjuk, hogyan nyomtassunk ki + különféle speciális + állományokat, hogyan + készítessünk fejléceket, hogyan + nyomtassuk hálózaton keresztül, hogyan + vezéreljük a nyomtatók + hozzáférését és hogyan + tartsuk nyilván a nyomtató + használatát. - Simple Printer Setup + Egyszerû + nyomtatóbeállítás - This section tells how to configure printer hardware and the - LPD software to use the printer. - It teaches the basics: + Ebben a szakaszban láthatjuk, miképpen kell + beállítani a nyomtatónkat és az + LPD hogyan lesz képes azt + használatba venni. Az alapoktól + kezdõdik: - Section Hardware - Setup gives some hints on connecting the printer to a - port on your computer. + A Hardveres + beállítás címû + szakaszban abban kapunk segítséget, hogyan + kell a nyomtatót a + számítógéphez + csatlakoztatni. - Section Software - Setup shows how to set up the - LPD spooler configuration - file (/etc/printcap). + A A szoftveres + beállítás szakaszban az + LPD nyomtatási rendszer + beállítását tartalmazó + állományt (/etc/printcap) + vesszük sorra. - If you are setting up a printer that uses a network protocol - to accept data to print instead of a computer's local interfaces, - see Printers With - Networked Data Stream Interfaces. + Amennyiben olyan nyomtatót akarunk + beállítani, amely nem helyileg, hanem valamilyen + hálózati protokollon keresztül csatlakozik, + nézzük meg a Nyomtatók + hálózati adatcsatlakozással + címû szakaszt. - Although this section is called Simple Printer - Setup, it is actually fairly complex. Getting the printer - to work with your computer and the LPD - spooler is the hardest - part. The advanced options like header pages and accounting are - fairly easy once you get the printer working. + Habár ez a szakasz nevében csupán + Egyszerû + nyomtatóbeállítás, + meglehetõsen szerteágazó tud lenni. A + nyomtató hardveres és szoftveres életre + keltése az egyik legnehezesebb feladat. Ha van egy + mûködõ nyomtatónk, a fejlécek + és a nyilvántartás + beállítása tulajdonképpen már + gyerekjáték. - Hardware Setup + Hardveres beállítás - This section tells about the various ways you can connect a - printer to your PC. It talks about the kinds of ports and - cables, and also the kernel configuration you may need to enable - FreeBSD to speak to the printer. + Ebben a szakaszban a nyomtatók + csatlakoztatásának lehetséges + módozatairól esik szó. Beszélni + fogunk mindenféle portokról és + kábelekrõl, és a &os; + rendszermagjának az egyes nyomtatók + használatához szükséges + beállításairól is. - If you have already connected your printer and have - successfully printed with it under another operating system, you - can probably skip to section Software Setup. + Ha korábban tudtuk csatlakoztatni a + nyomtatónkat, és más + operációs rendszerekkel már sikeresen is + nyomtattunk vele, akkor rögtön ugorhatunk is a Szoftveres + beállításokat tartalmazó + szakaszra. - Ports and Cables + Portok és kábelek - Printers sold for use on PC's today generally come - with one or more of the following three interfaces: + A személyi + számítógépekhez kapható + nyomtatók általában a következõ + három csatolófelület egyikével + rendelkeznek: - printers - serial - + nyomtató + soros + - Serial interfaces, also known - as RS-232 or COM ports, use a serial port - on your computer to send data to the printer. Serial - interfaces are common in the computer industry and cables - are readily available and also easy to construct. Serial - interfaces sometimes need special cables and might require - you to configure somewhat complex communications - options. Most PC serial ports have a maximum - transmission rate of 115200 bps, which makes printing - large graphic print jobs with them impractical. + A soros, más + néven RS-232-es vagy COM porton keresztül + kommunikáló felületek a + számítógép soros + portján küldenek adatot a + nyomtatónak. A soros + csatolófelületek igen elterjedtek a + számítógépiparban, + könnyen tudunk ilyen kábelt szerezni, + gyorsan is gyártható. Elõfordulhat, + hogy a soros csatolófelületek + használatához valamilyen + különleges kábelre, valamint bonyolult + kommunikációs + beállítások + megadására van szükség. A + legtöbb soros port által + elérhetõ legnagyobb adatátviteli + sebesség másodpercenként 115200 + bit, ami miatt azonban a komolyabb grafikai tartalmak + nyomtatása szinte lehetetlen. - printers - parallel - + nyomtató + párhuzamos + - Parallel interfaces use a - parallel port on your computer to send data to the - printer. Parallel interfaces are common in the PC market - and are faster than RS-232 serial. - Cables are readily available but more difficult to - construct by hand. There are usually no communications - options with parallel interfaces, making their - configuration exceedingly simple. + A párhuzamos + csatolófelületek a + számítógépünk + párhuzamos portjával küldenek + adatokat a nyomtatónak. A párhuzamos + felületek gyorsabbak az RS-232 soros + felületnél, és a + számítógéppiacon is gyakran + megtalálhatóak. Könnyen tudunk ilyen + kábelt szerezni, azonban kézileg nehezebb + elkészíteni. A párhuzamos + csatolófelületekhez általában + nem tartoznak kommunikációs + beállítások, ezért + rendkívül egyszerûen el lehet + boldogulni velük. - centronics - parallel printers + centronics + párhuzamos nyomtató - Parallel interfaces are sometimes known as - Centronics interfaces, named after the - connector type on the printer. + A párhuzamos felületekre olykor + Centronics + csatolófelületként is hivatkoznak, + amelyet egy nyomtatótípus után + neveztek el. - printers - USB - + nyomtató + USB + - USB interfaces, named for the Universal Serial - Bus, can run at even faster speeds than parallel or - RS-232 serial interfaces. Cables are simple and cheap. - USB is superior to RS-232 Serial and to Parallel for - printing, but it is not as well supported under &unix; - systems. A way to avoid this problem is to purchase a - printer that has both a USB interface and a Parallel - interface, as many printers do. + A Universal Serial Bus (Univerzális soros + busz) rövidítéseként + használt USB elnevezésû + csatolófelület a párhuzamos és + a soros felületeknél jóval nagyobb + sebességre képes. A + hozzátartozó kábelek + felépítése egyszerû és + áruk olcsó. Habár az USB hivatott + leváltani a nyomtatás terén az + RS-232-es soros és a párhuzamos + felületeket, nem mindegyik &unix; rendszer + támogatja kellõképpen. Ezt a + problémát például úgy + kerülhetjük el, ha olyan nyomtatót + vásárlunk, amelyen a legtöbbhöz + hasonlóan párhuzamos és USB + csatlakozás is megtalálható. - In general, Parallel interfaces usually offer just - one-way communication (computer to printer) while serial - and USB gives you two-way. Newer parallel ports (EPP and - ECP) and printers - can communicate in both directions under FreeBSD when a - IEEE-1284-compliant cable is used. + A párhuzamos felületeken + általában csak egy irányban tudunk + üzeneteket küldeni (a + számítógéptõl a + nyomtatóhoz), miközben az USB és a soros + felület használatával mind a két + irányban is. &os; alatt viszont már az + újabb (EPP és ECP) párhuzamos portok + egy IEEE 1284 szabványú kábellel + képesek oda-vissza kommunikálni. PostScript - Two-way communication to the printer over a parallel - port is generally done in one of two ways. The first method - uses a custom-built printer driver for FreeBSD that speaks - the proprietary language used by the printer. This is - common with inkjet printers and can be used for reporting - ink levels and other status information. The second - method is used when the printer supports - &postscript;. + A párhuzamos nyomtatók + kétirányú + kommunikációját általában + két mód közül az egyiken + szokták megvalósítani. Az elsõ + esetben a &os; a nyomtatóhoz egy speciális + meghajtót használ, amely ismeri az + általa beszélt nyelvet. Ilyenek a + tintasugaras nyomtatók, amelyek más + egyéb állapotinformációk mellett + ezen keresztül képesek jelezni a tinapatronokban + levõ tinta mennyiségét. A második + esetben a nyomtató ismeri a &postscript; + nyelvet. - &postscript; jobs are - actually programs sent to the printer; they need not produce - paper at all and may return results directly to the computer. - &postscript; also uses two-way communication to tell the - computer about problems, such as errors in the &postscript; - program or paper jams. Your users may be appreciative of such - information. Furthermore, the best way to do effective - accounting with a &postscript; printer requires two-way - communication: you ask the printer for its page count (how - many pages it has printed in its lifetime), then send the - user's job, then ask again for its page count. Subtract the - two values and you know how much paper to charge to the - user. + A &postscript; nyelvû munkák + valójában a nyomtatónak küldött + programok. Használatukhoz még papírra + sincs feltétlenül szükség, és + adódhat, hogy közvetlenül a + számítógépnek + válaszolnak. A &postscript; is + kétirányú kommunikáción + keresztül értesíti a + számítógépet az olyan + gondokról, mint mondjuk a &postscript; programokban + levõ hibák vagy a papír beakadása, + aminek a felhasználók szoktak + örülni. Hovatovább ez a + kétirányú kommunikáció a + kulcsa a &postscript; nyomtatók hatékony + nyilvántartásának is: egyszerûen + lekérdezzük a nyomtatótól a + lapszámlálót (ami megadja, hogy a + nyomtató eddig mennyi lapot nyomtatott ki), + kiküldjük a felhasználóhoz + tartozó feladatot és ismét + lekérdezzük a lapszámlálót. + A két érték + kivonásából + tájékozódhatunk a + felhasználó által igényelt lapok + mennyiségérõl. - + - Parallel Ports + Párhuzamos portok - To hook up a printer using a parallel interface, connect - the Centronics cable between the printer and the computer. - The instructions that came with the printer, the computer, or - both should give you complete guidance. + A párhuzamos csatolófelületen + érintkezõ nyomtató + használatához kapcsoljunk össze + számítógépünket és + nyomtatónkat egy párhuzamos kábellel. + Az erre vonatkozó konkrét + utasítások a nyomtató és/vagy a + számítógép + kézikönyvében olvashatóak. - Remember which parallel port you used on the computer. - The first parallel port is ppc0 to - FreeBSD; the second is ppc1, and so - on. The printer device name uses the same scheme: - /dev/lpt0 for the printer on the first - parallel ports etc. + Jegyezzük meg, hogy a + számítógép melyik + párhuzamos portjára csatlakoztattuk a + kábelt. &os; alatt az elsõ ilyen port a + ppc0 eszköz, a második + pedig a ppc1 eszköz lesz, + és így tovább. A + nyomtatóeszköz elnevezése ugyanezt a + sémát követi: a + /dev/lpt0 lesz az elsõ + párhuzamos porton levõ nyomtató + stb. - Serial Ports + Soros portok - To hook up a printer using a serial interface, connect the - proper serial cable between the printer and the computer. The - instructions that came with the printer, the computer, or both - should give you complete guidance. + A soros csatolófelületet + használó nyomtatók + beüzemeléséhez elõször egy + soros kábel segítségével + kapcsoljuk össze õket a + számítógépünkkel. Ennek + pontos részleteit a nyomtató és/vagy a + számítógépünk + kézikönyvében találhatjuk + meg. - If you are unsure what the proper serial - cable is, you may wish to try one of the following - alternatives: + Ha nem vagyunk benne biztosak, hogy milyen a + megfelelõ soros kábel, + próbáljunk az alábbiak alapján + dönteni: - A modem cable connects each pin - of the connector on one end of the cable straight through - to its corresponding pin of the connector on the other - end. This type of cable is also known as a - DTE-to-DCE cable. + A modem kábele a + két oldalán levõ az egymásnak + megfelelõ tüskéket + közvetlenül összeköti. Ezt a + típust nevezik DTE-DCE + kábelnek. - null-modem cable + null-modem kábel - A null-modem cable connects some - pins straight through, swaps others (send data to receive - data, for example), and shorts some internally in each - connector hood. This type of cable is also known as a - DTE-to-DTE cable. + A null-modem kábel + bizonyos érintkezõket rendesen, másokat + pedig fordítva köt össze + (például a küldõt a + fogadóval), ill. némelyeket rövidre + zár a csatlakozón belül. Ez a + típus a DTE-DTE + kábel. - A serial printer cable, required - for some unusual printers, is like the null-modem cable, - but sends some signals to their counterparts instead of - being internally shorted. + Néhány speciális + nyomtató esetén elõforduló + még a soros + nyomtatókábel, amelyek + leginkább a null-modem kábelekez + hasonlítanak, azonban az ott rövidre + zárt csatornák itt a nekik megfelelõ + érintkezõknek jeleket + továbbítanak. - baud rate - parity - flow control protocol - You should also set up the communications parameters for - the printer, usually through front-panel controls or DIP - switches on the printer. Choose the highest - bps (bits per second, sometimes - baud rate) that both your computer - and the printer can support. Choose 7 or 8 data bits; none, - even, or odd parity; and 1 or 2 stop bits. Also choose a flow - control protocol: either none, or XON/XOFF (also known as - in-band or software) flow control. - Remember these settings for the software configuration that - follows. + jelváltási + sebesség + paritás + forgalomirányítási + protokoll + Emellett még a nyomtató + elõlapján vagy az alján + található kapcsolók + segítségével be kell + állítanunk a nyomtatóhoz tartozó + kommunikációs paramétereket is. Itt + válasszuk azt a bps (a bitek + száma másodpercenként) + értéket, amelyet még a + számítógépünk és a + nyomtatónk is egyaránt képes + támogatni. Válasszuk 7 vagy 8 adatbitet, + páros, páratlan vagy kikapcsolt + paritásbitet, és 1 vagy 2 stopbitet. Ekkor + tudjuk megadni a forgalomirányítási + protokollt is: lehet kikapcsolt, XON/XOFF (ez az ún. + sávon belüli vagy + szoftveres) + forgalomirányítás. Ne felejtsük + el ezeket a beállításokat a most + következõ szoftveres + beállítások elvégzése + során sem. - Software Setup + Szoftveres beállítás - This section describes the software setup necessary to print - with the LPD spooling system in FreeBSD. - + Ebben a fejezetben tárgyaljuk a &os;-ben + található LPD + nyomtatási rendszer mûködéséhez + és a nyomtatáshoz szükséges + szoftveres beállításokat. - Here is an outline of the steps involved: + Íme az elvégzendõ lépések + rövid vázlata: - Configure your kernel, if necessary, for the port you - are using for the printer; section Kernel Configuration tells - you what you need to do. + Amennyiben szükséges, + állítsuk be a rendszermagunkat nyomtató + által használt portra. Ehhez A rendszermag + beállítása szakaszban + olvashatjuk, mit is kell pontosan tenni. - Set the communications mode for the parallel port, if - you are using a parallel port; section Setting the - Communication Mode for the Parallel Port gives - details. + Ha párhuzamos portot használunk, akkor + állítsuk be, hogy a párhuzamos port + miként fog kommunikálni. A párhuzamos + port kommunikációs módjának + beállítása címû + szakasz tárja fel ennek részleteit. - Test if the operating system can send data to the printer. - Section Checking Printer - Communications gives some suggestions on how to do - this. + Próbáljuk ki, hogy ezek után az + operációs rendszer képes-e adatot + küldeni a nyomtatónak. A nyomtató + kommunikációjának + ellenõrzése szakaszban kapunk + pár javaslatot erre. - Set up LPD for the printer by - modifying the file - /etc/printcap. You will find out how - to do this later in this chapter. + Az /etc/printcap + állomány felhasználásával + állítsuk be a nyomtatónkhoz a + LPD-t. Errõl a fejezet + további részei adnak majd + felvilágosítást. - Kernel Configuration + A rendszermag beállítása - The operating system kernel is compiled to work with a - specific set of devices. The serial or parallel interface for - your printer is a part of that set. Therefore, it might be - necessary to add support for an additional serial or parallel - port if your kernel is not already configured for one. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Dec 16 19:31:00 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3120E16A420; Sun, 16 Dec 2007 19:31:00 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CE53A16A419 for ; Sun, 16 Dec 2007 19:30:59 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AB45413C45D for ; Sun, 16 Dec 2007 19:30:59 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBGJUxTw015730 for ; Sun, 16 Dec 2007 19:30:59 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBGJUvc6015726 for perforce@freebsd.org; Sun, 16 Dec 2007 19:30:57 GMT (envelope-from peter@freebsd.org) Date: Sun, 16 Dec 2007 19:30:57 GMT Message-Id: <200712161930.lBGJUvc6015726@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 131034 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 19:31:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=131034 Change 131034 by peter@peter_daintree on 2007/12/16 19:30:22 IFC @131032 Affected files ... .. //depot/projects/hammer/Makefile#45 integrate .. //depot/projects/hammer/bin/mv/mv.c#9 integrate .. //depot/projects/hammer/etc/rc.d/ldconfig#16 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#72 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes-o.real#9 integrate .. //depot/projects/hammer/include/complex.h#4 integrate .. //depot/projects/hammer/include/pthread_np.h#6 integrate .. //depot/projects/hammer/lib/libc/Versions.def#3 integrate .. //depot/projects/hammer/lib/libc/stdlib/grantpt.c#6 integrate .. //depot/projects/hammer/lib/libfetch/Makefile#17 integrate .. //depot/projects/hammer/lib/libfetch/common.c#9 integrate .. //depot/projects/hammer/lib/libfetch/common.h#5 integrate .. //depot/projects/hammer/lib/libfetch/fetch.c#4 integrate .. //depot/projects/hammer/lib/libfetch/file.c#4 integrate .. //depot/projects/hammer/lib/libfetch/ftp.c#12 integrate .. //depot/projects/hammer/lib/libfetch/http.c#14 integrate .. //depot/projects/hammer/lib/libthr/pthread.map#15 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#38 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_private.h#38 integrate .. //depot/projects/hammer/lib/libufs/Makefile#10 integrate .. //depot/projects/hammer/lib/libufs/block.c#7 integrate .. //depot/projects/hammer/lib/libufs/bread.3#4 integrate .. //depot/projects/hammer/lib/libufs/libufs.h#7 integrate .. //depot/projects/hammer/lib/msun/Makefile#35 integrate .. //depot/projects/hammer/lib/msun/Symbol.map#5 integrate .. //depot/projects/hammer/lib/msun/man/atan2.3#6 integrate .. //depot/projects/hammer/lib/msun/man/csqrt.3#1 branch .. //depot/projects/hammer/lib/msun/man/hypot.3#7 integrate .. //depot/projects/hammer/lib/msun/man/sqrt.3#4 integrate .. //depot/projects/hammer/lib/msun/src/s_carg.c#1 branch .. //depot/projects/hammer/lib/msun/src/s_cargf.c#1 branch .. //depot/projects/hammer/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/hammer/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/article.sgml#9 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#48 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#24 integrate .. //depot/projects/hammer/sbin/natd/natd.8#9 integrate .. //depot/projects/hammer/share/man/man3/tgmath.3#3 integrate .. //depot/projects/hammer/share/man/man4/Makefile#99 integrate .. //depot/projects/hammer/share/man/man4/hptrr.4#1 branch .. //depot/projects/hammer/share/man/man7/build.7#18 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#102 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#106 integrate .. //depot/projects/hammer/sys/arm/at91/if_ate.c#10 integrate .. //depot/projects/hammer/sys/cam/cam_xpt.c#35 integrate .. //depot/projects/hammer/sys/conf/NOTES#132 integrate .. //depot/projects/hammer/sys/conf/files.amd64#101 integrate .. //depot/projects/hammer/sys/conf/files.i386#87 integrate .. //depot/projects/hammer/sys/conf/files.powerpc#26 integrate .. //depot/projects/hammer/sys/conf/options#119 integrate .. //depot/projects/hammer/sys/conf/options.powerpc#8 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.h#46 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#84 integrate .. //depot/projects/hammer/sys/dev/ata/ata-dma.c#30 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#39 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_adapter.h#11 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_config.h#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_main.c#11 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_offload.c#6 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_offload.h#6 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_osdep.h#6 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_sge.c#12 integrate .. //depot/projects/hammer/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/sys/mvec.h#5 integrate .. //depot/projects/hammer/sys/dev/cxgb/sys/uipc_mvec.c#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/hammer/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/hammer/sys/dev/hptrr/array.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/him.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/hammer/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/hammer/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/hammer/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/hammer/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/list.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/hammer/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/hammer/sys/dev/sound/pci/hda/hdac.c#14 integrate .. //depot/projects/hammer/sys/dev/sound/pci/maestro.c#19 integrate .. //depot/projects/hammer/sys/dev/usb/uplcom.c#27 integrate .. //depot/projects/hammer/sys/geom/geom_dev.c#36 integrate .. //depot/projects/hammer/sys/geom/geom_io.c#42 integrate .. //depot/projects/hammer/sys/i386/conf/GENERIC#60 integrate .. //depot/projects/hammer/sys/i386/conf/NOTES#96 integrate .. //depot/projects/hammer/sys/i386/conf/PAE#25 integrate .. //depot/projects/hammer/sys/kern/Makefile#6 integrate .. //depot/projects/hammer/sys/kern/kern_event.c#47 integrate .. //depot/projects/hammer/sys/kern/kern_mbuf.c#28 integrate .. //depot/projects/hammer/sys/kern/kern_mutex.c#52 integrate .. //depot/projects/hammer/sys/kern/kern_rwlock.c#15 integrate .. //depot/projects/hammer/sys/kern/kern_sx.c#20 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#102 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#56 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#88 integrate .. //depot/projects/hammer/sys/kern/subr_lock.c#9 integrate .. //depot/projects/hammer/sys/kern/sys_generic.c#36 integrate .. //depot/projects/hammer/sys/kern/sys_pipe.c#37 integrate .. //depot/projects/hammer/sys/kern/uipc_sockbuf.c#6 integrate .. //depot/projects/hammer/sys/modules/Makefile#119 integrate .. //depot/projects/hammer/sys/modules/cxgb/Makefile#7 integrate .. //depot/projects/hammer/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/hammer/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/hammer/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/hammer/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/hammer/sys/net/if.h#30 integrate .. //depot/projects/hammer/sys/net80211/ieee80211_radiotap.h#10 integrate .. //depot/projects/hammer/sys/netinet/if_ether.c#43 integrate .. //depot/projects/hammer/sys/netinet/tcp.h#19 integrate .. //depot/projects/hammer/sys/netinet/tcp_ofld.c#2 integrate .. //depot/projects/hammer/sys/netinet/tcp_ofld.h#2 integrate .. //depot/projects/hammer/sys/netinet/tcp_var.h#51 integrate .. //depot/projects/hammer/sys/netinet/toedev.h#2 integrate .. //depot/projects/hammer/sys/netncp/ncp_rq.c#7 integrate .. //depot/projects/hammer/sys/netncp/ncp_sock.c#8 integrate .. //depot/projects/hammer/sys/netncp/ncp_sock.h#4 integrate .. //depot/projects/hammer/sys/netsmb/smb_trantcp.c#12 integrate .. //depot/projects/hammer/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/hammer/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/hammer/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/hammer/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/hammer/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/conf/GENERIC#35 integrate .. //depot/projects/hammer/sys/powerpc/conf/NOTES#6 integrate .. //depot/projects/hammer/sys/powerpc/include/fpu.h#3 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/clock.c#14 delete .. //depot/projects/hammer/sys/powerpc/powerpc/copyinout.c#7 delete .. //depot/projects/hammer/sys/powerpc/powerpc/db_memrw.c#5 delete .. //depot/projects/hammer/sys/powerpc/powerpc/interrupt.c#7 delete .. //depot/projects/hammer/sys/powerpc/powerpc/locore.S#8 delete .. //depot/projects/hammer/sys/powerpc/powerpc/machdep.c#48 delete .. //depot/projects/hammer/sys/powerpc/powerpc/mmu_oea.c#6 delete .. //depot/projects/hammer/sys/powerpc/powerpc/nexus.c#12 delete .. //depot/projects/hammer/sys/powerpc/powerpc/ofw_machdep.c#11 delete .. //depot/projects/hammer/sys/powerpc/powerpc/ofwmagic.S#4 delete .. //depot/projects/hammer/sys/powerpc/powerpc/swtch.S#7 delete .. //depot/projects/hammer/sys/powerpc/powerpc/trap.c#26 delete .. //depot/projects/hammer/sys/powerpc/powerpc/trap_subr.S#11 delete .. //depot/projects/hammer/sys/powerpc/powerpc/uio_machdep.c#7 delete .. //depot/projects/hammer/sys/powerpc/powerpc/uma_machdep.c#5 delete .. //depot/projects/hammer/sys/powerpc/powerpc/vm_machdep.c#32 delete .. //depot/projects/hammer/sys/sys/_lock.h#7 integrate .. //depot/projects/hammer/sys/sys/kerneldump.h#7 integrate .. //depot/projects/hammer/sys/sys/lock_profile.h#7 integrate .. //depot/projects/hammer/sys/sys/pcpu.h#16 integrate .. //depot/projects/hammer/sys/sys/proc.h#112 integrate .. //depot/projects/hammer/sys/sys/selinfo.h#5 integrate .. //depot/projects/hammer/sys/sys/socket.h#25 integrate .. //depot/projects/hammer/sys/sys/socketvar.h#39 integrate .. //depot/projects/hammer/sys/sys/sx.h#15 integrate .. //depot/projects/hammer/sys/sys/systm.h#51 integrate .. //depot/projects/hammer/sys/sys/tty.h#22 integrate .. //depot/projects/hammer/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/hammer/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/hammer/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/hammer/tools/regression/lib/msun/Makefile#7 integrate .. //depot/projects/hammer/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/hammer/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/sed/multitest.t#3 integrate .. //depot/projects/hammer/tools/regression/usr.bin/sed/regress.sh#10 integrate .. //depot/projects/hammer/tools/tools/ath/athdebug/athdebug.c#4 integrate .. //depot/projects/hammer/tools/tools/ath/athstats/Makefile#5 integrate .. //depot/projects/hammer/tools/tools/ath/athstats/athstats.c#6 integrate .. //depot/projects/hammer/tools/tools/ath/athstats/main.c#3 integrate .. //depot/projects/hammer/tools/tools/ath/athstats/statfoo.c#3 integrate .. //depot/projects/hammer/usr.bin/vmstat/Makefile#6 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.8#12 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.c#28 integrate .. //depot/projects/hammer/usr.bin/xinstall/xinstall.c#11 integrate .. //depot/projects/hammer/usr.sbin/iostat/iostat.c#9 integrate Differences ... ==== //depot/projects/hammer/Makefile#45 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.343 2007/12/11 20:00:55 imp Exp $ +# $FreeBSD: src/Makefile,v 1.344 2007/12/13 00:08:02 imp Exp $ # # The user-driven targets are: # @@ -234,7 +234,7 @@ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ then \ - (cd ${.CURDIR} && ${BSDMAKE} make); \ + (cd ${.CURDIR} && ${MAKE} make); \ fi # @@ -242,11 +242,10 @@ # headers, libraries and tools. Also, allow the location of # the system bsdmake-like utility to be overridden. # -BSDMAKE?=make MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -MMAKE= ${MMAKEENV} ${BSDMAKE} \ +MMAKE= ${MMAKEENV} ${MAKE} \ -D_UPGRADING \ -DNOMAN -DNO_MAN -DNOSHARED -DNO_SHARED \ -DNO_CPU_CFLAGS -DNO_WERROR ==== //depot/projects/hammer/bin/mv/mv.c#9 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.48 2007/12/16 17:47:34 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,71 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + warn("%s %s", _PATH_RM, cleanup[i]); + _exit(1); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (WEXITSTATUS(status)) { + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/hammer/etc/rc.d/ldconfig#16 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/ldconfig,v 1.18 2007/12/08 07:20:22 dougb Exp $ +# $FreeBSD: src/etc/rc.d/ldconfig,v 1.19 2007/12/13 00:51:01 jhb Exp $ # # PROVIDE: ldconfig @@ -49,8 +49,14 @@ fi fi done - echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} - ${ldconfig} -32 -m ${_ins} ${ldconfig32_paths} + _LDC="" + for i in ${ldconfig32_paths}; do + if [ -r "${i}" ]; then + _LDC="${_LDC} ${i}" + fi + done + echo '32-bit compatibility ldconfig path:' ${_LDC} + ${ldconfig} -32 -m ${_ins} ${_LDC} ;; esac ==== //depot/projects/hammer/games/fortune/datfiles/fortunes#72 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.249 2007/12/09 01:00:11 dougb Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.250 2007/12/14 01:47:11 wes Exp $ % ======================================================================= || || @@ -56259,6 +56259,9 @@ % Where am I? Who am I? Am I? I % +Where am I, and what am I doing in this handbasket? + -- Mark A. Matthews, to Wes Peters, circa 1996 +% Where are the calculations that go with a calculated risk? % WHERE CAN THE MATTER BE ==== //depot/projects/hammer/games/fortune/datfiles/fortunes-o.real#9 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.28 2007/12/09 01:00:11 dougb Exp $ +%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.29 2007/12/14 21:58:58 des Exp $ % PLAYGIRL, Inc. Philadelphia, Pa. 19369 @@ -755,7 +755,7 @@ "What is amiss, my friend?" asked the king. "My lord," gasped Lancelot, "you have given me the wrong key!" % - "Before we get married," said the young woman to her fiancee, + "Before we get married," said the young woman to her fiance, "I want to confess some affairs that I've had in the past." "But you told me all about those a few weeks ago," her young man replied. ==== //depot/projects/hammer/include/complex.h#4 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2001 The FreeBSD Project. + * Copyright (c) 2001-2007 The FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/complex.h,v 1.6 2004/08/14 18:03:21 stefanf Exp $ + * $FreeBSD: src/include/complex.h,v 1.8 2007/12/15 08:38:44 das Exp $ */ #ifndef _COMPLEX_H @@ -45,6 +45,8 @@ double cabs(double complex); float cabsf(float complex); +double carg(double complex); +float cargf(float complex); double cimag(double complex); float cimagf(float complex); long double cimagl(long double complex); @@ -55,6 +57,8 @@ double creal(double complex); float crealf(float complex); long double creall(long double complex); +double complex csqrt(double complex); +float complex csqrtf(float complex); __END_DECLS ==== //depot/projects/hammer/include/pthread_np.h#6 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread_np.h,v 1.17 2007/10/29 00:31:54 imp Exp $ + * $FreeBSD: src/include/pthread_np.h,v 1.18 2007/12/14 06:25:56 davidxu Exp $ */ #ifndef _PTHREAD_NP_H_ #define _PTHREAD_NP_H_ @@ -49,6 +49,10 @@ void pthread_resume_all_np(void); int pthread_resume_np(pthread_t); void pthread_set_name_np(pthread_t, const char *); +int pthread_mutex_getspinloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setspinloops_np(pthread_mutex_t *mutex, int count); +int pthread_mutex_getyieldloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setyieldloops_np(pthread_mutex_t *mutex, int count); int pthread_single_np(void); void pthread_suspend_all_np(void); int pthread_suspend_np(pthread_t); ==== //depot/projects/hammer/lib/libc/Versions.def#3 (text) ==== @@ -1,9 +1,14 @@ -# $FreeBSD: src/lib/libc/Versions.def,v 1.3 2007/04/29 16:14:17 kan Exp $ +# $FreeBSD: src/lib/libc/Versions.def,v 1.4 2007/12/14 20:49:06 deischen Exp $ # This is our first version; it depends on no other. +# This version was first added to 7.0-current. FBSD_1.0 { }; +# This version was first added to 8.0-current. +FBSD_1.1 { +} FBSD_1.0; + # This is our private namespace. Any global interfaces that are # strictly for use only by other FreeBSD applications and libraries # are listed here. We use a separate namespace so we can write ==== //depot/projects/hammer/lib/libc/stdlib/grantpt.c#6 (text+ko) ==== @@ -32,7 +32,7 @@ #include #ifndef lint -__FBSDID("$FreeBSD: src/lib/libc/stdlib/grantpt.c,v 1.7 2006/02/13 00:04:04 kan Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/grantpt.c,v 1.8 2007/12/13 00:08:59 jhb Exp $"); #endif /* not lint */ #include "namespace.h" @@ -63,10 +63,10 @@ /* * The following are range values for pseudo TTY devices. Pseudo TTYs have a - * name of /dev/[pt]ty[p-sP-S][0-9a-v], yielding 256 combinations per major. + * name of /dev/[pt]ty[l-sL-S][0-9a-v], yielding 256 combinations per major. */ #define PT_MAX 256 -#define PT_DEV1 "pqrsPQRS" +#define PT_DEV1 "pqrsPQRSlmnoLMNO" #define PT_DEV2 "0123456789abcdefghijklmnopqrstuv" /* ==== //depot/projects/hammer/lib/libfetch/Makefile#17 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.49 2007/05/24 20:28:14 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ .include @@ -28,7 +28,7 @@ SHLIB_MAJOR= 5 ftperr.h: ftp.errors - @echo "static struct fetcherr _ftp_errlist[] = {" > ${.TARGET} + @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} @cat ${.ALLSRC} \ | grep -v ^# \ | sort \ @@ -39,7 +39,7 @@ @echo "};" >> ${.TARGET} httperr.h: http.errors - @echo "static struct fetcherr _http_errlist[] = {" > ${.TARGET} + @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} @cat ${.ALLSRC} \ | grep -v ^# \ | sort \ ==== //depot/projects/hammer/lib/libfetch/common.c#9 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.50 2005/02/16 12:46:46 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.51 2007/12/14 10:26:58 des Exp $"); #include #include @@ -53,7 +53,7 @@ /* * Error messages for resolver errors */ -static struct fetcherr _netdb_errlist[] = { +static struct fetcherr netdb_errlist[] = { #ifdef EAI_NODATA { EAI_NODATA, FETCH_RESOLV, "Host not found" }, #endif @@ -73,7 +73,7 @@ * Map error code to string */ static struct fetcherr * -_fetch_finderr(struct fetcherr *p, int e) +fetch_finderr(struct fetcherr *p, int e) { while (p->num != -1 && p->num != e) p++; @@ -84,9 +84,9 @@ * Set error code */ void -_fetch_seterr(struct fetcherr *p, int e) +fetch_seterr(struct fetcherr *p, int e) { - p = _fetch_finderr(p, e); + p = fetch_finderr(p, e); fetchLastErrCode = p->cat; snprintf(fetchLastErrString, MAXERRSTRING, "%s", p->string); } @@ -95,7 +95,7 @@ * Set error code according to errno */ void -_fetch_syserr(void) +fetch_syserr(void) { switch (errno) { case 0: @@ -155,7 +155,7 @@ * Emit status message */ void -_fetch_info(const char *fmt, ...) +fetch_info(const char *fmt, ...) { va_list ap; @@ -172,7 +172,7 @@ * Return the default port for a scheme */ int -_fetch_default_port(const char *scheme) +fetch_default_port(const char *scheme) { struct servent *se; @@ -189,7 +189,7 @@ * Return the default proxy port for a scheme */ int -_fetch_default_proxy_port(const char *scheme) +fetch_default_proxy_port(const char *scheme) { if (strcasecmp(scheme, SCHEME_FTP) == 0) return (FTP_DEFAULT_PROXY_PORT); @@ -203,7 +203,7 @@ * Create a connection for an existing descriptor. */ conn_t * -_fetch_reopen(int sd) +fetch_reopen(int sd) { conn_t *conn; @@ -220,7 +220,7 @@ * Bump a connection's reference count. */ conn_t * -_fetch_ref(conn_t *conn) +fetch_ref(conn_t *conn) { ++conn->ref; @@ -232,7 +232,7 @@ * Bind a socket to a specific local address */ int -_fetch_bind(int sd, int af, const char *addr) +fetch_bind(int sd, int af, const char *addr) { struct addrinfo hints, *res, *res0; int err; @@ -254,7 +254,7 @@ * Establish a TCP connection to the specified port on the specified host. */ conn_t * -_fetch_connect(const char *host, int port, int af, int verbose) +fetch_connect(const char *host, int port, int af, int verbose) { conn_t *conn; char pbuf[10]; @@ -265,7 +265,7 @@ DEBUG(fprintf(stderr, "---> %s:%d\n", host, port)); if (verbose) - _fetch_info("looking up %s", host); + fetch_info("looking up %s", host); /* look up host name and set up socket address structure */ snprintf(pbuf, sizeof(pbuf), "%d", port); @@ -274,13 +274,13 @@ hints.ai_socktype = SOCK_STREAM; hints.ai_protocol = 0; if ((err = getaddrinfo(host, pbuf, &hints, &res0)) != 0) { - _netdb_seterr(err); + netdb_seterr(err); return (NULL); } bindaddr = getenv("FETCH_BIND_ADDRESS"); if (verbose) - _fetch_info("connecting to %s:%d", host, port); + fetch_info("connecting to %s:%d", host, port); /* try to connect */ for (sd = -1, res = res0; res; sd = -1, res = res->ai_next) { @@ -288,8 +288,8 @@ res->ai_protocol)) == -1) continue; if (bindaddr != NULL && *bindaddr != '\0' && - _fetch_bind(sd, res->ai_family, bindaddr) != 0) { - _fetch_info("failed to bind to '%s'", bindaddr); + fetch_bind(sd, res->ai_family, bindaddr) != 0) { + fetch_info("failed to bind to '%s'", bindaddr); close(sd); continue; } @@ -299,12 +299,12 @@ } freeaddrinfo(res0); if (sd == -1) { - _fetch_syserr(); + fetch_syserr(); return (NULL); } - if ((conn = _fetch_reopen(sd)) == NULL) { - _fetch_syserr(); + if ((conn = fetch_reopen(sd)) == NULL) { + fetch_syserr(); close(sd); } return (conn); @@ -315,7 +315,7 @@ * Enable SSL on a connection. */ int -_fetch_ssl(conn_t *conn, int verbose) +fetch_ssl(conn_t *conn, int verbose) { #ifdef WITH_SSL @@ -373,7 +373,7 @@ * Read a character from a connection w/ timeout */ ssize_t -_fetch_read(conn_t *conn, char *buf, size_t len) +fetch_read(conn_t *conn, char *buf, size_t len) { struct timeval now, timeout, wait; fd_set readfds; @@ -399,7 +399,7 @@ } if (wait.tv_sec < 0) { errno = ETIMEDOUT; - _fetch_syserr(); + fetch_syserr(); return (-1); } errno = 0; @@ -407,7 +407,7 @@ if (r == -1) { if (errno == EINTR && fetchRestartCalls) continue; - _fetch_syserr(); + fetch_syserr(); return (-1); } } @@ -438,7 +438,7 @@ #define MIN_BUF_SIZE 1024 int -_fetch_getln(conn_t *conn) +fetch_getln(conn_t *conn) { char *tmp; size_t tmpsize; @@ -457,7 +457,7 @@ conn->buflen = 0; do { - len = _fetch_read(conn, &c, 1); + len = fetch_read(conn, &c, 1); if (len == -1) return (-1); if (len == 0) @@ -485,13 +485,13 @@ * Write to a connection w/ timeout */ ssize_t -_fetch_write(conn_t *conn, const char *buf, size_t len) +fetch_write(conn_t *conn, const char *buf, size_t len) { struct iovec iov; iov.iov_base = __DECONST(char *, buf); iov.iov_len = len; - return _fetch_writev(conn, &iov, 1); + return fetch_writev(conn, &iov, 1); } /* @@ -499,7 +499,7 @@ * Note: can modify the iovec. */ ssize_t -_fetch_writev(conn_t *conn, struct iovec *iov, int iovcnt) +fetch_writev(conn_t *conn, struct iovec *iov, int iovcnt) { struct timeval now, timeout, wait; fd_set writefds; @@ -525,7 +525,7 @@ } if (wait.tv_sec < 0) { errno = ETIMEDOUT; - _fetch_syserr(); + fetch_syserr(); return (-1); } errno = 0; @@ -547,7 +547,7 @@ if (wlen == 0) { /* we consider a short write a failure */ errno = EPIPE; - _fetch_syserr(); + fetch_syserr(); return (-1); } if (wlen < 0) { @@ -574,7 +574,7 @@ * Write a line of text to a connection w/ timeout */ int -_fetch_putln(conn_t *conn, const char *str, size_t len) +fetch_putln(conn_t *conn, const char *str, size_t len) { struct iovec iov[2]; int ret; @@ -585,9 +585,9 @@ iov[1].iov_base = __DECONST(char *, ENDL); iov[1].iov_len = sizeof(ENDL); if (len == 0) - ret = _fetch_writev(conn, &iov[1], 1); + ret = fetch_writev(conn, &iov[1], 1); else - ret = _fetch_writev(conn, iov, 2); + ret = fetch_writev(conn, iov, 2); if (ret == -1) return (-1); return (0); @@ -598,7 +598,7 @@ * Close connection */ int -_fetch_close(conn_t *conn) +fetch_close(conn_t *conn) { int ret; @@ -614,7 +614,7 @@ /*** Directory-related utility functions *************************************/ int -_fetch_add_entry(struct url_ent **p, int *size, int *len, +fetch_add_entry(struct url_ent **p, int *size, int *len, const char *name, struct url_stat *us) { struct url_ent *tmp; @@ -628,7 +628,7 @@ tmp = realloc(*p, (*size * 2 + 1) * sizeof(**p)); if (tmp == NULL) { errno = ENOMEM; - _fetch_syserr(); + fetch_syserr(); return (-1); } *size = (*size * 2 + 1); @@ -649,7 +649,7 @@ /*** Authentication-related utility functions ********************************/ static const char * -_fetch_read_word(FILE *f) +fetch_read_word(FILE *f) { static char word[1024]; @@ -662,7 +662,7 @@ * Get authentication data for a URL from .netrc */ int -_fetch_netrc_auth(struct url *url) +fetch_netrc_auth(struct url *url) { char fn[PATH_MAX]; const char *word; @@ -671,7 +671,7 @@ if ((p = getenv("NETRC")) != NULL) { if (snprintf(fn, sizeof(fn), "%s", p) >= (int)sizeof(fn)) { - _fetch_info("$NETRC specifies a file name " + fetch_info("$NETRC specifies a file name " "longer than PATH_MAX"); return (-1); } @@ -689,39 +689,39 @@ if ((f = fopen(fn, "r")) == NULL) return (-1); - while ((word = _fetch_read_word(f)) != NULL) { + while ((word = fetch_read_word(f)) != NULL) { if (strcmp(word, "default") == 0) { - DEBUG(_fetch_info("Using default .netrc settings")); + DEBUG(fetch_info("Using default .netrc settings")); break; } if (strcmp(word, "machine") == 0 && - (word = _fetch_read_word(f)) != NULL && + (word = fetch_read_word(f)) != NULL && strcasecmp(word, url->host) == 0) { - DEBUG(_fetch_info("Using .netrc settings for %s", word)); + DEBUG(fetch_info("Using .netrc settings for %s", word)); break; } } if (word == NULL) goto ferr; - while ((word = _fetch_read_word(f)) != NULL) { + while ((word = fetch_read_word(f)) != NULL) { if (strcmp(word, "login") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; if (snprintf(url->user, sizeof(url->user), "%s", word) > (int)sizeof(url->user)) { - _fetch_info("login name in .netrc is too long"); + fetch_info("login name in .netrc is too long"); url->user[0] = '\0'; } } else if (strcmp(word, "password") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; if (snprintf(url->pwd, sizeof(url->pwd), "%s", word) > (int)sizeof(url->pwd)) { - _fetch_info("password in .netrc is too long"); + fetch_info("password in .netrc is too long"); url->pwd[0] = '\0'; } } else if (strcmp(word, "account") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; /* XXX not supported! */ } else { ==== //depot/projects/hammer/lib/libfetch/common.h#5 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE 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/libfetch/common.h,v 1.28 2004/09/21 18:35:20 des Exp $ + * $FreeBSD: src/lib/libfetch/common.h,v 1.29 2007/12/14 10:26:58 des Exp $ */ #ifndef _COMMON_H_INCLUDED @@ -68,33 +68,33 @@ const char *string; }; -/* for _fetch_writev */ +/* for fetch_writev */ struct iovec; -void _fetch_seterr(struct fetcherr *, int); -void _fetch_syserr(void); -void _fetch_info(const char *, ...); -int _fetch_default_port(const char *); -int _fetch_default_proxy_port(const char *); -int _fetch_bind(int, int, const char *); -conn_t *_fetch_connect(const char *, int, int, int); -conn_t *_fetch_reopen(int); -conn_t *_fetch_ref(conn_t *); -int _fetch_ssl(conn_t *, int); -ssize_t _fetch_read(conn_t *, char *, size_t); -int _fetch_getln(conn_t *); -ssize_t _fetch_write(conn_t *, const char *, size_t); -ssize_t _fetch_writev(conn_t *, struct iovec *, int); -int _fetch_putln(conn_t *, const char *, size_t); -int _fetch_close(conn_t *); -int _fetch_add_entry(struct url_ent **, int *, int *, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Dec 16 19:32:01 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3E47016A420; Sun, 16 Dec 2007 19:32:01 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0358616A41A for ; Sun, 16 Dec 2007 19:32:01 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D8FF013C45A for ; Sun, 16 Dec 2007 19:32:00 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBGJW056016260 for ; Sun, 16 Dec 2007 19:32:00 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBGJW0sB016256 for perforce@freebsd.org; Sun, 16 Dec 2007 19:32:00 GMT (envelope-from gonzo@FreeBSD.org) Date: Sun, 16 Dec 2007 19:32:00 GMT Message-Id: <200712161932.lBGJW0sB016256@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 131035 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 19:32:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=131035 Change 131035 by gonzo@gonzo_jeeves on 2007/12/16 19:31:31 o Add Warner's subr_obio stuff to play with. The idea is to try to reduce code duplication as much as possible. On the moment all obio implementations differ by attach routine and interrupts handling code. Affected files ... .. //depot/projects/mips2/src/sys/conf/files#14 edit .. //depot/projects/mips2/src/sys/kern/subr_obio.c#1 add .. //depot/projects/mips2/src/sys/sys/obio.h#1 add Differences ... ==== //depot/projects/mips2/src/sys/conf/files#14 (text+ko) ==== @@ -1495,6 +1495,7 @@ kern/subr_mchain.c optional libmchain kern/subr_module.c standard kern/subr_msgbuf.c standard +kern/subr_obio.c standard kern/subr_param.c standard kern/subr_pcpu.c standard kern/subr_power.c standard From owner-p4-projects@FreeBSD.ORG Mon Dec 17 01:10:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53C9416A41A; Mon, 17 Dec 2007 01:10:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D974516A418 for ; Mon, 17 Dec 2007 01:10:07 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E2DBD13C458 for ; Mon, 17 Dec 2007 01:10:07 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBH1A73Y094305 for ; Mon, 17 Dec 2007 01:10:07 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBH1A7tg094301 for perforce@freebsd.org; Mon, 17 Dec 2007 01:10:07 GMT (envelope-from peter@freebsd.org) Date: Mon, 17 Dec 2007 01:10:07 GMT Message-Id: <200712170110.lBH1A7tg094301@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 131054 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 01:10:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131054 Change 131054 by peter@peter_overcee on 2007/12/17 01:09:34 Disable the async FCLOSE command processing - wait for it to complete. There is a race somewhere without this. I don't even know if it is a race with the firmware or a race in the driver. It just doesn't quite work right after the last great tty reorg and is quite likely to hang if you close() and then open() it immediately. Tweak debugging printfs. Handle async FCLOSE posting. Affected files ... .. //depot/projects/hammer/sys/dev/si/si.c#26 edit .. //depot/projects/hammer/sys/dev/si/si.h#7 edit Differences ... ==== //depot/projects/hammer/sys/dev/si/si.c#26 (text+ko) ==== @@ -195,6 +195,34 @@ "SXISA", }; +#ifdef SI_DEBUG +static char * +si_cmdname(int cmd) +{ + static char buf[32]; + + switch (cmd) { + case IDLE_OPEN: return("IDLE_OPEN"); + case LOPEN: return("LOPEN"); + case MOPEN: return("MOPEN"); + case MPEND: return("MPEND"); + case CONFIG: return("CONFIG"); + case CLOSE: return("CLOSE"); + case SBREAK: return("SBREAK"); + case EBREAK: return("EBREAK"); + case IDLE_CLOSE: return("IDLE_CLOSE"); + case IDLE_BREAK: return("IDLE_BREAK"); + case FCLOSE: return("FCLOSE"); + case RESUME: return("RESUME"); + case WFLUSH: return("WFLUSH"); + case RFLUSH: return("RFLUSH"); + default: + sprintf(buf, "?cmd:0x%x?", cmd); + return (buf); + } +} +#endif + /* * We have to make an 8 bit version of bcopy, since some cards can't * deal with 32 bit I/O @@ -615,7 +643,7 @@ mtx_assert(&Giant, MA_OWNED); pp = tp->t_sc; - (void) si_command(pp, FCLOSE, SI_NOWAIT); + (void) si_command(pp, FCLOSE, SI_WAIT); } static void @@ -1167,22 +1195,23 @@ */ if (ccbp->hi_stat != pp->sp_pend) { DPRINT((pp, DBG_INTR, - "si_intr hi_stat = 0x%x, pend = %d\n", - ccbp->hi_stat, pp->sp_pend)); + "si_intr hi_stat = %s, pend = %s\n", + si_cmdname(ccbp->hi_stat), + si_cmdname(pp->sp_pend))); switch(pp->sp_pend) { case LOPEN: case MPEND: case MOPEN: + case FCLOSE: case CONFIG: case SBREAK: case EBREAK: - pp->sp_pend = ccbp->hi_stat; - /* sleeping in si_command */ + /* sleeping in si_command */ + DPRINT((pp, DBG_INTR, "do wakeup\n")); wakeup(&pp->sp_state); break; - default: - pp->sp_pend = ccbp->hi_stat; } + pp->sp_pend = ccbp->hi_stat; } /* @@ -1264,7 +1293,6 @@ */ if (n <= SI_BUFFERSIZE - op) { - DPRINT((pp, DBG_INTR, "\tsingle copy\n")); z = ccbp->hi_rxbuf + op; si_vbcopy(z, si_rxbuf, n); @@ -1272,12 +1300,9 @@ } else { x = SI_BUFFERSIZE - op; - DPRINT((pp, DBG_INTR, "\tdouble part 1 %d\n", x)); z = ccbp->hi_rxbuf + op; si_vbcopy(z, si_rxbuf, x); - DPRINT((pp, DBG_INTR, "\tdouble part 2 %d\n", - n - x)); z = ccbp->hi_rxbuf; si_vbcopy(z, si_rxbuf + x, n - x); @@ -1533,8 +1558,9 @@ volatile struct si_channel *ccbp = pp->sp_ccb; int x; - DPRINT((pp, DBG_ENTRY|DBG_PARAM, "si_command(%x,%x,%d): hi_stat 0x%x\n", - pp, cmd, waitflag, ccbp->hi_stat)); + DPRINT((pp, DBG_ENTRY|DBG_PARAM, "si_command(%x,%s,%d): hi_stat %s, sp_pend: %s\n", + pp, si_cmdname(cmd), waitflag, si_cmdname(ccbp->hi_stat), + si_cmdname(pp->sp_pend))); oldspl = spltty(); /* Keep others out */ mtx_assert(&Giant, MA_OWNED); @@ -1548,6 +1574,8 @@ x != cmd) { if (ttysleep(pp->sp_tty, (caddr_t)&pp->sp_state, TTIPRI|PCATCH, "sicmd1", hz/4)) { + DPRINT((pp, DBG_PARAM, "sicmd1 timeout: hi_stat (%s)\n", + si_cmdname(ccbp->hi_stat))); /* This is very very bad. The card has crashed. */ /* XXX the driver breaks at this point */ splx(oldspl); @@ -1561,9 +1589,11 @@ case LOPEN: case MPEND: case MOPEN: + case FCLOSE: case CONFIG: case SBREAK: case EBREAK: + DPRINT((pp, DBG_PARAM, "si_command: sp_pend %s\n", si_cmdname(pp->sp_pend))); wakeup(&pp->sp_state); break; default: @@ -1574,8 +1604,9 @@ ccbp->hi_stat = cmd; /* Post it */ if (waitflag) { - while(ccbp->hi_stat != IDLE_OPEN && - ccbp->hi_stat != IDLE_BREAK) { + while((x = ccbp->hi_stat) != IDLE_OPEN && + x != IDLE_CLOSE && + x != IDLE_BREAK) { if (ttysleep(pp->sp_tty, (caddr_t)&pp->sp_state, TTIPRI|PCATCH, "sicmd2", 0)) break; ==== //depot/projects/hammer/sys/dev/si/si.h#7 (text+ko) ==== @@ -286,10 +286,8 @@ int sp_state; int sp_delta_overflows; struct callout_handle lstart_ch;/* For canceling our timeout */ -#ifdef SI_DEBUG int sp_debug; /* debug mask */ char sp_name[5]; -#endif }; /* sp_state */ From owner-p4-projects@FreeBSD.ORG Mon Dec 17 14:58:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0778116A46B; Mon, 17 Dec 2007 14:58:08 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8897F16A417 for ; Mon, 17 Dec 2007 14:58:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6A3B313C448 for ; Mon, 17 Dec 2007 14:58:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHEw7g0061124 for ; Mon, 17 Dec 2007 14:58:07 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHEw7H8061121 for perforce@freebsd.org; Mon, 17 Dec 2007 14:58:07 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 17 Dec 2007 14:58:07 GMT Message-Id: <200712171458.lBHEw7H8061121@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131099 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 14:58:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131099 Change 131099 by hselasky@hselasky_laptop001 on 2007/12/17 14:57:30 Exclude Giant from an assert. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#73 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#73 (text+ko) ==== @@ -1993,7 +1993,9 @@ /* transfer is gone */ return; } + if (xfer->priv_mtx != &Giant) { mtx_assert(xfer->priv_mtx, MA_NOTOWNED); + } mtx_lock(xfer->priv_mtx); From owner-p4-projects@FreeBSD.ORG Mon Dec 17 14:58:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEAA616A528; Mon, 17 Dec 2007 14:58:08 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BACA016A419 for ; Mon, 17 Dec 2007 14:58:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9D0D613C4E5 for ; Mon, 17 Dec 2007 14:58:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHEw7l3061130 for ; Mon, 17 Dec 2007 14:58:07 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHEw749061127 for perforce@freebsd.org; Mon, 17 Dec 2007 14:58:07 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 17 Dec 2007 14:58:07 GMT Message-Id: <200712171458.lBHEw749061127@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131100 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 14:58:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131100 Change 131100 by hselasky@hselasky_laptop001 on 2007/12/17 14:57:52 Style change by "usb_style.sh" . Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#74 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#74 (text+ko) ==== @@ -1994,9 +1994,8 @@ return; } if (xfer->priv_mtx != &Giant) { - mtx_assert(xfer->priv_mtx, MA_NOTOWNED); + mtx_assert(xfer->priv_mtx, MA_NOTOWNED); } - mtx_lock(xfer->priv_mtx); usbd_transfer_stop(xfer); From owner-p4-projects@FreeBSD.ORG Mon Dec 17 15:54:07 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3B23916A469; Mon, 17 Dec 2007 15:54:07 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B540216A418 for ; Mon, 17 Dec 2007 15:54:06 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AE54213C4CE for ; Mon, 17 Dec 2007 15:54:06 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHFs6kJ076651 for ; Mon, 17 Dec 2007 15:54:06 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHFs6gB076648 for perforce@freebsd.org; Mon, 17 Dec 2007 15:54:06 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 17 Dec 2007 15:54:06 GMT Message-Id: <200712171554.lBHFs6gB076648@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131102 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 15:54:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=131102 Change 131102 by hselasky@hselasky_laptop001 on 2007/12/17 15:53:47 This commit is device side related. This commit adds support for automatic endpoint resolving. This is due to the fact the USB device side hardware puts limits on how the endpoints can be used. The implemented algorithm will try to find out how the endpoints can be used at best given an USB device configuration. The implemented algorithm does not require a lot of CPU nor memory and does not try alot of different combinations. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#78 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#78 (text+ko) ==== @@ -99,6 +99,7 @@ struct usbd_clone; struct usbd_config; struct usbd_device; +struct usbd_hw_ep_profile; struct usbd_interface; struct usbd_memory_info; struct usbd_std_root_transfer; @@ -119,7 +120,7 @@ typedef void (usbd_std_root_transfer_func_t)(struct usbd_xfer *, struct usbd_std_root_transfer *); -typedef void (usbd_temp_get_desc_t)(struct usbd_device *udev, struct mtx *mtx, usb_device_request_t *req, const void **data, uint16_t *pLen); +typedef struct usbd_hw_ep_profile * (usbd_get_hw_ep_profile_t)(struct usbd_device *udev, uint8_t ep_addr); /* USB modes */ @@ -156,7 +157,6 @@ uint8_t bInterfaceNumber; uint8_t bAlternateSetting; uint8_t bConfigurationValue; - uint8_t bEpToIface[USB_MAX_ENDPOINTS]; usbd_status_t err; }; @@ -165,6 +165,7 @@ void (*do_poll) (struct usbd_bus *); void (*xfer_setup) (struct usbd_setup_params *parm); void (*xfer_unsetup) (struct usbd_xfer *xfer); + usbd_get_hw_ep_profile_t *get_hw_ep_profile; }; struct usbd_pipe_methods { @@ -275,6 +276,38 @@ usbd_status_t err; }; +struct usbd_hw_ep_profile { + uint16_t max_frame_size; + uint8_t is_simplex:1; + uint8_t is_multi_buffer:1; + uint8_t support_bulk:1; + uint8_t support_control:1; + uint8_t support_interrupt:1; + uint8_t support_isochronous:1; + uint8_t support_in:1; + uint8_t support_out:1; +}; + +struct usbd_sw_ep_scratch { + const struct usbd_hw_ep_profile *pf; + uint16_t max_frame_size; + uint8_t hw_endpoint_out; + uint8_t hw_endpoint_in; + uint8_t needs_ep_type; + uint8_t needs_in:1; + uint8_t needs_out:1; +}; + +struct usbd_hw_ep_scratch { + struct usbd_sw_ep_scratch ep[USB_MAX_ENDPOINTS]; + struct usbd_sw_ep_scratch *ep_max; + usb_config_descriptor_t *cd; + struct usbd_device *udev; + usbd_get_hw_ep_profile_t *get_hw_ep_profile; + uint8_t bmOutAlloc[(USB_MAX_ENDPOINTS+15)/16]; + uint8_t bmInAlloc[(USB_MAX_ENDPOINTS+15)/16]; +}; + struct usbd_dma_tag { bus_dma_tag_t tag; uint32_t align; @@ -397,7 +430,6 @@ struct usb_device *linux_dev; struct usbd_xfer *default_xfer[1]; void *usb_template_ptr; - usbd_temp_get_desc_t *usb_temp_get_desc; uint16_t refcount; #define USB_DEV_REFCOUNT_MAX 0xffff @@ -440,6 +472,7 @@ uint8_t product[64]; /* product string */ union { + struct usbd_hw_ep_scratch hw_ep_scratch[1]; struct usbd_temp_setup temp_setup[1]; uint8_t data[128]; } scratch[1]; @@ -849,8 +882,7 @@ /* prototypes from usb_template.c */ -const void *usbd_temp_get_device_desc(struct usbd_device *udev); -const void *usbd_temp_get_config_desc(struct usbd_device *udev, uint8_t index); +void usbd_temp_get_desc(struct usbd_device *udev, usb_device_request_t *req, const void **pPtr, uint16_t *pLen); usbd_status_t usbd_temp_setup(struct usbd_device *udev, const struct usb_temp_device_desc *tdd); void usbd_temp_unsetup(struct usbd_device *udev); From owner-p4-projects@FreeBSD.ORG Mon Dec 17 15:56:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DBF3A16A473; Mon, 17 Dec 2007 15:56:09 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5EDDF16A418 for ; Mon, 17 Dec 2007 15:56:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5740013C459 for ; Mon, 17 Dec 2007 15:56:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHFu9vD077138 for ; Mon, 17 Dec 2007 15:56:09 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHFu9MD077133 for perforce@freebsd.org; Mon, 17 Dec 2007 15:56:09 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 17 Dec 2007 15:56:09 GMT Message-Id: <200712171556.lBHFu9MD077133@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131103 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 15:56:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131103 Change 131103 by hselasky@hselasky_laptop001 on 2007/12/17 15:55:39 This change is device side related. Please see change 131102 for a detailed description. TODO: Add more comments. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#3 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.h#4 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#75 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#3 (text+ko) ==== @@ -70,8 +70,6 @@ { usb_endpoint_descriptor_t *ed; const void **rd; - uint8_t *pEp; - uint8_t *pEpEnd; uint16_t old_size; uint16_t mps; uint8_t ea = 0; /* Endpoint Address */ @@ -104,57 +102,7 @@ /* escape for Zero Max Packet Size */ mps = 0; } - if (ted->endpoint == 0) { - /* not initialized */ - temp->err = USBD_NO_PIPE; - return; - } else if (ted->endpoint == UE_ADDR_ANY) { - if (temp->buf) { - - /* search for a free endpoint */ - - pEp = temp->bEpToIface + - ((ted->direction & (UE_DIR_IN | - UE_DIR_OUT)) ? 1 : 0); - pEpEnd = pEp + USB_MAX_ENDPOINTS; - pEp += 2; /* skip control endpoint */ - while (1) { - - if (pEp == pEpEnd) { - temp->err = USBD_NO_PIPE; - return; - } - if (*pEp == 0) { - /* found one */ - *pEp = 1; /* dummy value */ - ea = (pEp - temp->bEpToIface) / 2; - break; - } - pEp += 2; - } - - } - } else { - ea = (ted->endpoint & UE_ADDR); - pEp = temp->bEpToIface + (ea << 1) + - ((ted->direction & (UE_DIR_IN | - UE_DIR_OUT)) ? 1 : 0); - - if (temp->buf) { - if (*pEp != temp->bInterfaceNumber) { - /* - * An endpoint is being used in multiple USB - * interfaces ! - */ - temp->err = USBD_INVAL; - return; - } - } else { - *pEp = temp->bInterfaceNumber; - } - } - - ea |= (ted->direction & (UE_DIR_IN | UE_DIR_OUT)); + ea = (ted->direction & (UE_DIR_IN | UE_DIR_OUT)); et = (ted->bmAttributes & UE_XFERTYPE); /* @@ -320,9 +268,17 @@ const struct usb_temp_device_desc *tdd) { usb_device_descriptor_t *dd; + const void **pp; const struct usb_temp_config_desc **tcd; uint16_t old_size; + /* Store a pointer to our template device descriptor */ + if (temp->buf) { + pp = USBD_ADD_BYTES(temp->buf, temp->size); + *pp = tdd; + } + temp->size += sizeof(void *); + /* Reserve memory */ old_size = temp->size; @@ -374,7 +330,7 @@ break; case USB_SPEED_VARIABLE: USETW(dd->bcdUSB, 0x0250); - dd->bMaxPacketSize = 255; + dd->bMaxPacketSize = 255; /* 512 bytes */ break; default: temp->err = USBD_INVAL; @@ -384,15 +340,441 @@ return; } -const void * +static uint8_t +usbd_hw_ep_match(const struct usbd_hw_ep_profile *pf, + uint8_t ep_type, uint8_t ep_dir_in) +{ + if (ep_type == UE_CONTROL) { + /* special */ + return (pf->support_control); + } + if ((pf->support_in && ep_dir_in) || + (pf->support_out && !ep_dir_in)) { + if ((pf->support_interrupt && (ep_type == UE_INTERRUPT)) || + (pf->support_isochronous && (ep_type == UE_ISOCHRONOUS)) || + (pf->support_bulk && (ep_type == UE_BULK))) { + return (1); + } + } + return (0); +} + +static uint8_t +usbd_hw_ep_find_match(struct usbd_hw_ep_scratch *ues, + struct usbd_sw_ep_scratch *ep, uint8_t is_simplex) +{ + const struct usbd_hw_ep_profile *pf; + uint16_t distance; + uint16_t temp; + uint8_t n; + uint8_t best_n; + uint8_t dir_in; + uint8_t dir_out; + + distance = 0xFFFF; + best_n = 0; + + if (ep->needs_ep_type == UE_CONTROL) { + dir_in = 1; + dir_out = 1; + } else { + if (ep->needs_in) { + ep->needs_in = 0; + dir_in = 1; + dir_out = 0; + } else { + ep->needs_out = 0; + dir_in = 0; + dir_out = 1; + } + } + + for (n = 1; n != (USB_MAX_ENDPOINTS / 2); n++) { + + /* check if IN-endpoint is reserved */ + if (dir_in) { + if (ues->bmInAlloc[n / 8] & (1 << (n % 8))) { + /* mismatch */ + continue; + } + } + /* check if OUT-endpoint is reserved */ + if (dir_out) { + if (ues->bmOutAlloc[n / 8] & (1 << (n % 8))) { + /* mismatch */ + continue; + } + } + /* get HW endpoint profile */ + pf = (ues->get_hw_ep_profile) (ues->udev, n); + if (pf == NULL) { + /* end of profiles */ + break; + } + /* check simplex */ + if (pf->is_simplex == is_simplex) { + /* mismatch */ + continue; + } + /* check if HW endpoint matches */ + if (!usbd_hw_ep_match(pf, ep->needs_ep_type, dir_in)) { + /* mismatch */ + continue; + } + if (pf->max_frame_size >= ep->max_frame_size) { + temp = (pf->max_frame_size - ep->max_frame_size); + if (distance > temp) { + distance = temp; + best_n = n; + ep->pf = pf; + } + } else if ((ep->needs_ep_type == UE_BULK) || + (ep->needs_ep_type == UE_CONTROL)) { + /* frame size is not so important */ + temp = (ep->max_frame_size - pf->max_frame_size); + if (distance > temp) { + distance = temp; + best_n = n; + ep->pf = pf; + } + } + } + + /* see if we got a match */ + if (best_n != 0) { + /* get the correct profile */ + pf = ep->pf; + + /* reserve IN-endpoint */ + if (dir_in || pf->is_simplex) { + ues->bmInAlloc[best_n / 8] |= + (1 << (best_n % 8)); + ep->hw_endpoint_in = best_n | UE_DIR_IN; + } + /* reserve OUT-endpoint */ + if (dir_out || pf->is_simplex) { + ues->bmOutAlloc[best_n / 8] |= + (1 << (best_n % 8)); + ep->hw_endpoint_out = best_n | UE_DIR_OUT; + } + /* + * In case we choose an endpoint having a smaller Maximum + * Frame Size than we wanted, we need to update the Maximum + * Frame Size ! + */ + if (ep->max_frame_size > pf->max_frame_size) { + ep->max_frame_size = pf->max_frame_size; + } + return (0); /* got a match */ + } + return (1); /* failure */ +} + +static uint8_t +usbd_hw_ep_get_needs(struct usbd_hw_ep_scratch *ues, + uint8_t ep_type, uint8_t is_complete) +{ + struct usbd_sw_ep_scratch *ep_iface; + struct usbd_sw_ep_scratch *ep_curr; + struct usbd_sw_ep_scratch *ep_max; + struct usbd_sw_ep_scratch *ep_end; + usb_descriptor_t *desc; + usb_interface_descriptor_t *id; + usb_endpoint_descriptor_t *ed; + uint16_t wMaxPacketSize; + uint16_t temp; + uint8_t allow_override; + uint8_t speed; + + ep_iface = ues->ep_max; + ep_curr = ues->ep_max; + ep_end = ues->ep + USB_MAX_ENDPOINTS; + ep_max = ues->ep_max; + desc = NULL; + speed = ues->udev->speed; + +repeat: + + while ((desc = usbd_desc_foreach(ues->cd, desc))) { + + if ((desc->bDescriptorType == UDESC_INTERFACE) && + (desc->bLength >= sizeof(*id))) { + + id = (void *)desc; + + if (id->bAlternateSetting == 0) { + /* going forward */ + ep_iface = ep_max; + } else { + /* reset */ + ep_curr = ep_iface; + } + } + if ((desc->bDescriptorType == UDESC_ENDPOINT) && + (desc->bLength >= sizeof(*ed))) { + + ed = (void *)desc; + + goto handle_endpoint_desc; + } + } + ues->ep_max = ep_max; + return (0); + +handle_endpoint_desc: + temp = (ed->bmAttributes & UE_XFERTYPE); + + if (temp == ep_type) { + + if (ep_curr == ep_end) { + /* too many endpoints */ + return (1); /* failure */ + } + wMaxPacketSize = UGETW(ed->wMaxPacketSize); + if ((wMaxPacketSize & 0xF800) && + (speed == USB_SPEED_HIGH)) { + /* handle frame multiplier */ + temp = (wMaxPacketSize >> 11) & 3; + wMaxPacketSize &= 0x7FF; + if (temp == 2) { + wMaxPacketSize *= 2; + } else { + wMaxPacketSize *= 3; + } + allow_override = 0; + } else { + if ((ep_type == UE_BULK) || + (ep_type == UE_CONTROL)) { + allow_override = 1; + } else { + allow_override = 0; + } + } + + if (is_complete) { + + /* + * We assume that + * "ep_curr->max_frame_size" + * is correct according to the + * speed we are connected at ! + */ + while (1) { + + if (wMaxPacketSize <= + ep_curr->max_frame_size) { + break; + } + if (wMaxPacketSize < 8) { + return (1); /* failure */ + } + if (!allow_override) { + return (1); /* failure */ + } + /* + * We have a BULK or CONTROL + * endpoint having a packet + * size that the hardware + * cannot handle ! Try to + * work it around! + */ + wMaxPacketSize /= 2; + USETW(ed->wMaxPacketSize, + wMaxPacketSize); + } + + if (ed->bEndpointAddress & UE_DIR_IN) { + ed->bEndpointAddress = + ep_curr->hw_endpoint_in; + } else { + ed->bEndpointAddress = + ep_curr->hw_endpoint_out; + } + + } else { + + /* compute the maximum frame size */ + if (ep_curr->max_frame_size < wMaxPacketSize) { + ep_curr->max_frame_size = wMaxPacketSize; + } + if (temp == UE_CONTROL) { + ep_curr->needs_in = 1; + ep_curr->needs_out = 1; + } else { + if (ed->bEndpointAddress & UE_DIR_IN) { + ep_curr->needs_in = 1; + } else { + ep_curr->needs_out = 1; + } + } + ep_curr->needs_ep_type = ep_type; + } + + ep_curr++; + if (ep_max < ep_curr) { + ep_max = ep_curr; + } + } + goto repeat; +} + +static usbd_status_t +usbd_hw_ep_resolve(struct usbd_device *udev, + usb_descriptor_t *desc) +{ + struct usbd_hw_ep_scratch *ues; + struct usbd_sw_ep_scratch *ep; + struct usbd_hw_ep_profile *pf; + struct usbd_bus *bus; + usb_device_descriptor_t *dd; + uint16_t mps; + + if (desc == NULL) { + return (USBD_INVAL); + } + /* get bus structure */ + bus = udev->bus; + + if (bus->methods->get_hw_ep_profile == NULL) { + return (USBD_INVAL); + } + if (desc->bDescriptorType == UDESC_DEVICE) { + + if (desc->bLength < sizeof(*dd)) { + return (USBD_INVAL); + } + dd = (void *)desc; + + /* get HW control endpoint 0 profile */ + pf = (bus->methods->get_hw_ep_profile) (ues->udev, 0); + if (pf == NULL) { + return (USBD_INVAL); + } + if (!usbd_hw_ep_match(pf, UE_CONTROL, 0)) { + PRINTFN(-1, ("Endpoint 0 does not " + "support control\n")); + return (USBD_INVAL); + } + mps = dd->bMaxPacketSize; + + if (udev->speed == USB_SPEED_FULL) { + /* + * We can optionally choose another packet size ! + */ + while (1) { + /* check if "mps" is ok */ + if (pf->max_frame_size >= mps) { + break; + } + /* reduce maximum packet size */ + mps /= 2; + + /* check if "mps" is too small */ + if (mps < 8) { + return (USBD_INVAL); + } + } + + dd->bMaxPacketSize = mps; + + } else { + /* We only have one choice */ + if (mps == 255) { + mps = 512; + } + /* Check if we support the specified wMaxPacketSize */ + if (pf->max_frame_size < mps) { + return (USBD_INVAL); + } + } + } + if (desc->bDescriptorType != UDESC_CONFIG) { + return (USBD_INVAL); + } + if (desc->bLength < sizeof(*(ues->cd))) { + return (USBD_INVAL); + } + ues = udev->scratch[0].hw_ep_scratch; + + bzero(ues, sizeof(*ues)); + + ues->ep_max = ues->ep; + ues->cd = (void *)desc; + ues->get_hw_ep_profile = bus->methods->get_hw_ep_profile; + ues->udev = udev; + + /* Get all the endpoints we need */ + + if (usbd_hw_ep_get_needs(ues, UE_ISOCHRONOUS, 0) || + usbd_hw_ep_get_needs(ues, UE_INTERRUPT, 0) || + usbd_hw_ep_get_needs(ues, UE_CONTROL, 0) || + usbd_hw_ep_get_needs(ues, UE_BULK, 0)) { + return (USBD_INVAL); + } + for (ep = ues->ep; ep != ues->ep_max; ep++) { + + while (ep->needs_in || ep->needs_out) { + + /* + * First try to use a simplex endpoint. + * Then try to use a duplex endpoint. + */ + if (usbd_hw_ep_find_match(ues, ep, 1) && + usbd_hw_ep_find_match(ues, ep, 0)) { + return (USBD_INVAL); + } + } + } + + ues->ep_max = ues->ep; + + /* Update all endpoint addresses */ + + if (usbd_hw_ep_get_needs(ues, UE_ISOCHRONOUS, 1) || + usbd_hw_ep_get_needs(ues, UE_INTERRUPT, 1) || + usbd_hw_ep_get_needs(ues, UE_CONTROL, 1) || + usbd_hw_ep_get_needs(ues, UE_BULK, 1)) { + return (USBD_INVAL); + } + return (0); /* success */ +} + +/*------------------------------------------------------------------------* + * usbd_temp_get_tdd + * + * Returns: + * NULL: No USB template device descriptor found. + * Else: Pointer to the USB template device descriptor. + *------------------------------------------------------------------------*/ +static const struct usb_temp_device_desc * +usbd_temp_get_tdd(struct usbd_device *udev) +{ + const void **pp; + + pp = udev->usb_template_ptr; + if (pp == NULL) { + return (NULL); + } + return (*pp); +} + +/*------------------------------------------------------------------------* + * usbd_temp_get_device_desc + * + * Returns: + * NULL: No USB device descriptor found. + * Else: Pointer to USB device descriptor. + *------------------------------------------------------------------------*/ +static void * usbd_temp_get_device_desc(struct usbd_device *udev) { - const usb_device_descriptor_t *dd; + usb_device_descriptor_t *dd; dd = udev->usb_template_ptr; if (dd == NULL) { return (NULL); } + dd = USBD_ADD_BYTES(dd, sizeof(void *)); if (dd->bDescriptorType != UDESC_DEVICE) { /* sanity check failed */ return (NULL); @@ -400,11 +782,19 @@ return (dd); } -const void * -usbd_temp_get_config_desc(struct usbd_device *udev, uint8_t index) +/*------------------------------------------------------------------------* + * usbd_temp_get_config_desc + * + * Returns: + * NULL: No USB config descriptor found. + * Else: Pointer to USB config descriptor having index "index". + *------------------------------------------------------------------------*/ +static void * +usbd_temp_get_config_desc(struct usbd_device *udev, + uint16_t *pLength, uint8_t index) { - const usb_device_descriptor_t *dd; - const usb_config_descriptor_t *cd; + usb_device_descriptor_t *dd; + usb_config_descriptor_t *cd; uint16_t temp; dd = usbd_temp_get_device_desc(udev); @@ -425,14 +815,136 @@ temp = UGETW(cd->wTotalLength); cd = USBD_ADD_BYTES(cd, temp); } + + if (pLength) { + *pLength = UGETW(cd->wTotalLength); + } return (cd); } /*------------------------------------------------------------------------* + * usbd_temp_get_string_desc + * + * Returns: + * NULL: No string descriptor found. + * Else: Pointer to a string descriptor. + *------------------------------------------------------------------------*/ +static const void * +usbd_temp_get_string_desc(struct usbd_device *udev, + uint16_t lang_id, uint8_t string_index) +{ + const struct usb_temp_device_desc *tdd; + + tdd = usbd_temp_get_tdd(udev); + if (tdd == NULL) { + return (NULL); + } + if (tdd->getStringDesc == NULL) { + return (NULL); + } + return ((tdd->getStringDesc) (lang_id, string_index)); +} + +/*------------------------------------------------------------------------* + * usbd_temp_get_hub_desc + * + * Returns: + * NULL: No USB HUB descriptor found. + * Else: Pointer to a USB HUB descriptor. + *------------------------------------------------------------------------*/ +static const void * +usbd_temp_get_hub_desc(struct usbd_device *udev) +{ + return (NULL); /* needs to be implemented */ +} + +/*------------------------------------------------------------------------* + * usbd_temp_get_desc + * + * This function is a demultiplexer for USB device requests. + *------------------------------------------------------------------------*/ +void +usbd_temp_get_desc(struct usbd_device *udev, usb_device_request_t *req, + const void **pPtr, uint16_t *pLength) +{ + const uint8_t *buf; + uint16_t len; + + buf = NULL; + len = 0; + + switch (req->bmRequestType) { + case UT_READ_DEVICE: + switch (req->bRequest) { + case UR_GET_DESCRIPTOR: + goto tr_handle_get_descriptor; + default: + goto tr_stalled; + } + break; + case UT_READ_CLASS_DEVICE: + switch (req->bRequest) { + case UR_GET_DESCRIPTOR: + goto tr_handle_get_class_descriptor; + default: + goto tr_stalled; + } + break; + default: + goto tr_stalled; + } + +tr_handle_get_descriptor: + switch (req->wValue[1]) { + case UDESC_DEVICE: + if (req->wValue[0] & 0xff) { + goto tr_stalled; + } + buf = usbd_temp_get_device_desc(udev); + goto tr_valid; + case UDESC_CONFIG: + buf = usbd_temp_get_config_desc(udev, + &len, req->wValue[0]); + goto tr_valid; + case UDESC_STRING: + buf = usbd_temp_get_string_desc(udev, + UGETW(req->wIndex), req->wValue[0]); + goto tr_valid; + default: + goto tr_stalled; + } + goto tr_stalled; + +tr_handle_get_class_descriptor: + if (req->wValue[0] & 0xFF) { + goto tr_stalled; + } + buf = usbd_temp_get_hub_desc(udev); + goto tr_valid; + +tr_valid: + if (buf == NULL) { + goto tr_stalled; + } + if (len == 0) { + len = buf[0]; + } + *pPtr = buf; + *pLength = len; + return; + +tr_stalled: + *pPtr = NULL; + *pLength = 0; + return; +} + +/*------------------------------------------------------------------------* * usbd_temp_setup * - * This function generates USB descriptors according to - * the given USB template device descriptor. + * This function generates USB descriptors according to the given USB + * template device descriptor. It will also try to figure out the best + * matching endpoint addresses using the hardware endpoint profiles. * * Returns: * 0: Success @@ -443,15 +955,13 @@ const struct usb_temp_device_desc *tdd) { struct usbd_temp_setup *uts; + void *buf; + uint8_t n; if (tdd == NULL) { /* be NULL safe */ return (0); } - if (tdd->pGetDescFn == NULL) { - /* not initialized properly */ - return (USBD_INVAL); - } uts = udev->scratch[0].temp_setup; bzero(uts, sizeof(*uts)); @@ -480,14 +990,42 @@ usbd_make_device_desc(uts, tdd); + /* + * Store a pointer to our descriptors: + */ + udev->usb_template_ptr = uts->buf; + if (uts->err) { /* some error happened during second pass */ - free(uts->buf, M_USB); - return (uts->err); + goto error; + } + /* + * Resolve all endpoint addresses ! + */ + buf = usbd_temp_get_device_desc(udev); + uts->err = usbd_hw_ep_resolve(udev, buf); + if (uts->err) { + PRINTFN(-1, ("Could not resolve endpoints for " + "Device Descriptor\n")); + goto error; + } + for (n = 0;; n++) { + + buf = usbd_temp_get_config_desc(udev, NULL, n); + uts->err = usbd_hw_ep_resolve(udev, buf); + if (uts->err) { + if (buf == NULL) { + break; + } + PRINTFN(-1, ("Could not resolve endpoints for " + "Config Descriptor %u\n", n)); + goto error; + } } - udev->usb_template_ptr = uts->buf; - udev->usb_temp_get_desc = tdd->pGetDescFn; + return (uts->err); +error: + usbd_temp_unsetup(udev); return (uts->err); } @@ -505,7 +1043,6 @@ free(udev->usb_template_ptr, M_USB); udev->usb_template_ptr = NULL; - udev->usb_temp_get_desc = NULL; } return; } ==== //depot/projects/usb/src/sys/dev/usb/usb_template.h#4 (text+ko) ==== @@ -31,6 +31,8 @@ #ifndef _USB_TEMPLATE_H_ #define _USB_TEMPLATE_H_ +typedef const void *(usbd_temp_get_string_desc_t)(uint16_t lang_id, uint8_t string_index); + struct usb_temp_packet_size { uint16_t mps[USB_SPEED_MAX]; }; @@ -39,7 +41,6 @@ const void **ppRawDesc; const struct usb_temp_packet_size *pPacketSize; uint8_t direction; /* UE_DIR_IN or UE_DIR_OUT */ - uint8_t endpoint; /* endpoint address */ uint8_t bmAttributes; }; @@ -61,7 +62,7 @@ }; struct usb_temp_device_desc { - usbd_temp_get_desc_t *pGetDescFn; + usbd_temp_get_string_desc_t *getStringDesc; const struct usb_temp_config_desc **ppConfigDesc; uint16_t idVendor; uint16_t idProduct; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#75 (text+ko) ==== @@ -3079,8 +3079,7 @@ goto tr_valid; tr_handle_get_descriptor: - (udev->usb_temp_get_desc) ( - udev, xfer->priv_mtx, &req, &ptr, &max_len); + usbd_temp_get_desc(udev, &req, &ptr, &max_len); if (ptr == NULL) { goto tr_stalled; } @@ -3362,17 +3361,7 @@ } if (udev->flags.usb_mode == USB_MODE_DEVICE) { PRINTFN(0, ("USB device mode\n")); - if ((req->bmRequestType == UT_READ_DEVICE) && - (req->bRequest == UR_GET_DESCRIPTOR)) { - (udev->usb_temp_get_desc) ( - udev, mtx, req, &desc, &temp); - if (desc == NULL) { - return (USBD_INVAL); - } - } else { - /* the rest we don't care about */ - temp = 0; - } + usbd_temp_get_desc(udev, req, &desc, &temp); if (length > temp) { if (!(flags & USBD_SHORT_XFER_OK)) { return (USBD_SHORT_XFER); From owner-p4-projects@FreeBSD.ORG Mon Dec 17 22:29:58 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D71116A419; Mon, 17 Dec 2007 22:29:58 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A9CC316A418 for ; Mon, 17 Dec 2007 22:29:57 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A48A813C442 for ; Mon, 17 Dec 2007 22:29:57 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHMTvLs027574 for ; Mon, 17 Dec 2007 22:29:57 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHMTsvn027571 for perforce@freebsd.org; Mon, 17 Dec 2007 22:29:54 GMT (envelope-from marcel@freebsd.org) Date: Mon, 17 Dec 2007 22:29:54 GMT Message-Id: <200712172229.lBHMTsvn027571@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131127 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 22:29:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=131127 Change 131127 by marcel@marcel_cluster on 2007/12/17 22:29:36 IFC @131126 Affected files ... .. //depot/projects/e500/bin/mv/mv.c#2 integrate .. //depot/projects/e500/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/e500/contrib/gdtoa/hexnan.c#2 integrate .. //depot/projects/e500/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/e500/contrib/gdtoa/strtof.c#2 integrate .. //depot/projects/e500/contrib/gdtoa/strtorQ.c#2 integrate .. //depot/projects/e500/contrib/gdtoa/strtorx.c#2 integrate .. //depot/projects/e500/lib/libc/amd64/Symbol.map#4 integrate .. //depot/projects/e500/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/e500/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/e500/lib/libc/gdtoa/Symbol.map#3 integrate .. //depot/projects/e500/lib/libc/i386/Symbol.map#4 integrate .. //depot/projects/e500/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/e500/lib/libc/ia64/Symbol.map#4 integrate .. //depot/projects/e500/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/e500/lib/libc/net/nsdispatch.c#4 integrate .. //depot/projects/e500/lib/libc/sparc64/Symbol.map#4 integrate .. //depot/projects/e500/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/e500/lib/libc/stdlib/malloc.c#4 integrate .. //depot/projects/e500/lib/libc/stdlib/strtod.3#2 integrate .. //depot/projects/e500/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_cond.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/e500/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_init.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mutex.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/e500/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_spec.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/e500/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/e500/lib/libthr/thread/thr_mutex.c#5 integrate .. //depot/projects/e500/lib/libufs/Makefile#2 integrate .. //depot/projects/e500/lib/libufs/block.c#2 integrate .. //depot/projects/e500/lib/libufs/bread.3#2 integrate .. //depot/projects/e500/lib/libufs/libufs.h#2 integrate .. //depot/projects/e500/lib/msun/Makefile#5 integrate .. //depot/projects/e500/lib/msun/Symbol.map#4 integrate .. //depot/projects/e500/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/e500/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/e500/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/e500/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/e500/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/e500/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/e500/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/e500/lib/msun/man/math.3#2 integrate .. //depot/projects/e500/lib/msun/man/nan.3#1 branch .. //depot/projects/e500/lib/msun/src/math.h#2 integrate .. //depot/projects/e500/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/e500/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/e500/lib/msun/src/s_nan.c#1 branch .. //depot/projects/e500/release/doc/en_US.ISO8859-1/hardware/article.sgml#6 integrate .. //depot/projects/e500/release/doc/share/misc/dev.archlist.txt#5 integrate .. //depot/projects/e500/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/e500/sbin/growfs/growfs.c#2 integrate .. //depot/projects/e500/sbin/ipfw/ipfw2.c#6 integrate .. //depot/projects/e500/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/e500/sbin/newfs/newfs.8#3 integrate .. //depot/projects/e500/sbin/newfs/newfs.c#3 integrate .. //depot/projects/e500/sbin/newfs/newfs.h#3 integrate .. //depot/projects/e500/sys/arm/at91/at91.c#2 integrate .. //depot/projects/e500/sys/arm/at91/if_ate.c#4 integrate .. //depot/projects/e500/sys/boot/powerpc/Makefile#4 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/Makefile#3 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/conf.c#2 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/help.ofw#2 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/ldscript.powerpc#2 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/metadata.c#2 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/start.c#2 integrate .. //depot/projects/e500/sys/boot/powerpc/ofw/version#2 integrate .. //depot/projects/e500/sys/cam/cam_xpt.c#6 integrate .. //depot/projects/e500/sys/conf/NOTES#9 integrate .. //depot/projects/e500/sys/conf/files#9 integrate .. //depot/projects/e500/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_adapter.h#6 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_config.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_include.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.c#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_l2t.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_main.c#7 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_offload.c#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_offload.h#5 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_osdep.h#6 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_sge.c#6 integrate .. //depot/projects/e500/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/e500/sys/dev/cxgb/sys/mvec.h#4 integrate .. //depot/projects/e500/sys/dev/cxgb/sys/uipc_mvec.c#3 integrate .. //depot/projects/e500/sys/dev/cxgb/t3cdev.h#2 integrate .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/e500/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/e500/sys/geom/geom_dev.c#2 integrate .. //depot/projects/e500/sys/geom/geom_io.c#3 integrate .. //depot/projects/e500/sys/i386/i386/machdep.c#7 integrate .. //depot/projects/e500/sys/kern/kern_event.c#4 integrate .. //depot/projects/e500/sys/kern/kern_thread.c#9 integrate .. //depot/projects/e500/sys/kern/kern_umtx.c#4 integrate .. //depot/projects/e500/sys/kern/sys_generic.c#5 integrate .. //depot/projects/e500/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/e500/sys/kern/uipc_sockbuf.c#5 integrate .. //depot/projects/e500/sys/modules/Makefile#7 integrate .. //depot/projects/e500/sys/modules/cxgb/Makefile#6 integrate .. //depot/projects/e500/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/e500/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/e500/sys/net/if_lagg.c#6 integrate .. //depot/projects/e500/sys/net/route.c#6 integrate .. //depot/projects/e500/sys/net/route.h#3 integrate .. //depot/projects/e500/sys/netinet/if_ether.c#5 integrate .. //depot/projects/e500/sys/netinet/if_ether.h#2 integrate .. //depot/projects/e500/sys/netinet/tcp.h#4 integrate .. //depot/projects/e500/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/e500/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/e500/sys/netinet/tcp_ofld.c#2 delete .. //depot/projects/e500/sys/netinet/tcp_ofld.h#2 delete .. //depot/projects/e500/sys/netinet/tcp_syncache.c#8 integrate .. //depot/projects/e500/sys/netinet/toedev.h#3 integrate .. //depot/projects/e500/sys/netinet6/in6_pcb.c#5 integrate .. //depot/projects/e500/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/e500/sys/netncp/ncp_sock.c#3 integrate .. //depot/projects/e500/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/e500/sys/netsmb/smb_trantcp.c#4 integrate .. //depot/projects/e500/sys/security/mac/mac_posix_sem.c#4 integrate .. //depot/projects/e500/sys/sys/ata.h#4 integrate .. //depot/projects/e500/sys/sys/lock_profile.h#6 integrate .. //depot/projects/e500/sys/sys/proc.h#8 integrate .. //depot/projects/e500/sys/sys/selinfo.h#2 integrate .. //depot/projects/e500/sys/sys/socketvar.h#2 integrate .. //depot/projects/e500/sys/sys/systm.h#7 integrate .. //depot/projects/e500/sys/sys/tty.h#2 integrate .. //depot/projects/e500/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/e500/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/e500/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/e500/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/e500/tools/regression/lib/msun/Makefile#3 integrate .. //depot/projects/e500/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/e500/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/e500/tools/regression/lib/msun/test-next.c#3 integrate .. //depot/projects/e500/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/e500/tools/regression/usr.bin/sed/regress.sh#3 integrate .. //depot/projects/e500/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/e500/usr.sbin/iostat/iostat.c#4 integrate Differences ... ==== //depot/projects/e500/bin/mv/mv.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,77 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + _exit(EX_OSERR); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/e500/contrib/gdtoa/gdtoaimp.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/e500/contrib/gdtoa/hexnan.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/e500/contrib/gdtoa/strtod.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/e500/contrib/gdtoa/strtof.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; + break; + case STRTOG_Denormal: u.L[0] = bits[0]; break; ==== //depot/projects/e500/contrib/gdtoa/strtorQ.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorQ.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -63,11 +65,18 @@ break; case STRTOG_Normal: + L[_3] = bits[0]; + L[_2] = bits[1]; + L[_1] = bits[2]; + L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + break; + case STRTOG_NaNbits: L[_3] = bits[0]; L[_2] = bits[1]; L[_1] = bits[2]; - L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + L[_0] = (bits[3] & ~0x10000) + | (((exp + 0x3fff + 112) << 16) | (1 << 15)); break; case STRTOG_Denormal: ==== //depot/projects/e500/contrib/gdtoa/strtorx.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorx.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -69,7 +71,6 @@ goto normal_bits; case STRTOG_Normal: - case STRTOG_NaNbits: L[_0] = exp + 0x3fff + 63; normal_bits: L[_4] = (UShort)bits[0]; @@ -78,6 +79,14 @@ L[_1] = (UShort)(bits[1] >> 16); break; + case STRTOG_NaNbits: + L[_0] = exp + 0x3fff + 63; + L[_4] = (UShort)bits[0]; + L[_3] = (UShort)(bits[0] >> 16); + L[_2] = (UShort)bits[1]; + L[_1] = (UShort)((bits[1] >> 16) | (3 << 14)); + break; + case STRTOG_Infinite: L[_0] = 0x7fff; L[_1] = L[_2] = L[_3] = L[_4] = 0; ==== //depot/projects/e500/lib/libc/amd64/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.4 2007/05/31 13:01:32 deischen Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ */ /* @@ -71,4 +71,7 @@ _end; __sys_vfork; _vfork; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/amd64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/e500/lib/libc/arm/gd_qnan.h#2 (text+ko) ==== @@ -6,18 +6,18 @@ * * XXX I don't have ARM hardware, so I just guessed. --das * - * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/e500/lib/libc/gdtoa/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.5 2007/10/13 14:40:16 deischen Exp $ + * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ */ FBSD_1.0 { @@ -12,3 +12,8 @@ /* FreeBSD additions */ strtold; }; + +FBSDprivate_1.0 { + /* used in libm */ + __hexnan_D2A; +}; ==== //depot/projects/e500/lib/libc/i386/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.5 2007/05/31 13:01:33 deischen Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ */ /* @@ -68,4 +68,7 @@ _brk; .curbrk; .minbrk; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/i386/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/e500/lib/libc/ia64/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.4 2007/10/18 11:28:38 yar Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ */ /* @@ -69,4 +69,7 @@ minbrk; .cerror; curbrk; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/ia64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/e500/lib/libc/net/nsdispatch.c#4 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.15 2007/12/12 10:08:03 bushman Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.16 2007/12/17 16:12:57 bushman Exp $"); #include "namespace.h" #include @@ -592,9 +592,7 @@ return (match->method); } } - if (is_dynamic()) - nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, - method); + *mdata = NULL; return (NULL); } @@ -701,12 +699,18 @@ if (result & (srclist[i].flags)) break; - } else if (fb_method != NULL) { - fallback_dispatch = 1; - va_start(ap, defaults); - result = fb_method(retval, (void *)srclist[i].name, ap); - va_end(ap); - fallback_dispatch = 0; + } else { + if (fb_method != NULL) { + fallback_dispatch = 1; + va_start(ap, defaults); + result = fb_method(retval, + (void *)srclist[i].name, ap); + va_end(ap); + fallback_dispatch = 0; + } else + nss_log(LOG_DEBUG, "%s, %s, %s, not found, " + "and no fallback provided", + srclist[i].name, database, method_name); } } ==== //depot/projects/e500/lib/libc/sparc64/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.5 2007/05/31 13:01:34 deischen Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ */ /* @@ -96,4 +96,7 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; + + /* used in libm */ + __ULtoQ_D2A; }; ==== //depot/projects/e500/lib/libc/sparc64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0x7fffffff -#define d_QNAN0 0x7fffffff -#define d_QNAN1 0xffffffff -#define ld_QNAN0 0x7fffffff -#define ld_QNAN1 0xffffffff -#define ld_QNAN2 0xffffffff -#define ld_QNAN3 0xffffffff +#define f_QNAN 0x7fc00000 +#define d_QNAN0 0x7ff80000 +#define d_QNAN1 0x00000000 +#define ld_QNAN0 0x7fff8000 +#define ld_QNAN1 0x00000000 +#define ld_QNAN2 0x00000000 +#define ld_QNAN3 0x00000000 #define ldus_QNAN0 0x7fff -#define ldus_QNAN1 0xffff -#define ldus_QNAN2 0xffff -#define ldus_QNAN3 0xffff -#define ldus_QNAN4 0xffff +#define ldus_QNAN1 0x8000 +#define ldus_QNAN2 0x0000 +#define ldus_QNAN3 0x0000 +#define ldus_QNAN4 0x0000 ==== //depot/projects/e500/lib/libc/stdlib/malloc.c#4 (text+ko) ==== @@ -104,8 +104,22 @@ # define MALLOC_DEBUG #endif +/* + * MALLOC_LAZY_FREE enables the use of a per-thread vector of slots that free() + * can atomically stuff object pointers into. This can reduce arena lock + * contention. + */ +#define MALLOC_LAZY_FREE + +/* + * MALLOC_BALANCE enables monitoring of arena lock contention and dynamically + * re-balances arena load if exponentially averaged contention exceeds a + * certain threshold. + */ +#define MALLOC_BALANCE + #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.152 2007/11/28 00:17:34 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.153 2007/12/17 01:20:04 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -216,6 +230,17 @@ # define NO_TLS #endif +#ifdef NO_TLS + /* MALLOC_BALANCE requires TLS. */ +# ifdef MALLOC_BALANCE +# undef MALLOC_BALANCE +# endif + /* MALLOC_LAZY_FREE requires TLS. */ +# ifdef MALLOC_LAZY_FREE +# undef MALLOC_LAZY_FREE +# endif +#endif + /* * Size and alignment of memory chunks that are allocated by the OS's virtual * memory system. @@ -261,8 +286,9 @@ #define RUN_MAX_SMALL_2POW 15 #define RUN_MAX_SMALL (1U << RUN_MAX_SMALL_2POW) +#ifdef MALLOC_LAZY_FREE /* Default size of each arena's lazy free cache. */ -#define LAZY_FREE_2POW_DEFAULT 8 +# define LAZY_FREE_2POW_DEFAULT 8 /* * Number of pseudo-random probes to conduct before considering the cache to be * overly full. It takes on average n probes to detect fullness of (n-1)/n. @@ -270,7 +296,8 @@ * deallocation is a trial), so the actual average threshold for clearing the * cache is somewhat lower. */ -#define LAZY_FREE_NPROBES 5 +# define LAZY_FREE_NPROBES 5 +#endif /* * Hyper-threaded CPUs may need a special instruction inside spin loops in @@ -295,6 +322,7 @@ */ #define BLOCK_COST_2POW 4 +#ifdef MALLOC_BALANCE /* * We use an exponential moving average to track recent lock contention, where * the size of the history window is N, and alpha=2/(N+1). @@ -303,13 +331,14 @@ * degradation in accuracy, thus making the moving average decay faster than it * would with precise calculation. */ -#define BALANCE_ALPHA_INV_2POW 9 +# define BALANCE_ALPHA_INV_2POW 9 /* * Threshold value for the exponential moving contention average at which to * re-assign a thread. */ -#define BALANCE_THRESHOLD_DEFAULT (1U << (SPIN_LIMIT_2POW-4)) +# define BALANCE_THRESHOLD_DEFAULT (1U << (SPIN_LIMIT_2POW-4)) +#endif /******************************************************************************/ @@ -373,7 +402,7 @@ uint64_t nmalloc_large; uint64_t ndalloc_large; -#ifndef NO_TLS +#ifdef MALLOC_BALANCE /* Number of times this arena reassigned a thread due to contention. */ uint64_t nbalance; #endif @@ -587,13 +616,15 @@ */ arena_chunk_t *spare; -#ifndef NO_TLS >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Dec 17 22:47:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CEE1216A473; Mon, 17 Dec 2007 22:47:16 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5DCBE16A46C for ; Mon, 17 Dec 2007 22:47:16 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 420C813C448 for ; Mon, 17 Dec 2007 22:47:16 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHMlGPZ031673 for ; Mon, 17 Dec 2007 22:47:16 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHMlG9s031670 for perforce@freebsd.org; Mon, 17 Dec 2007 22:47:16 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 17 Dec 2007 22:47:16 GMT Message-Id: <200712172247.lBHMlG9s031670@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131128 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 22:47:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131128 Change 131128 by kmacy@entropy_kmacy_xen31 on 2007/12/17 22:47:10 disable KERNLOAD offsets for domUs Affected files ... .. //depot/projects/xen31/sys/i386/include/vmparam.h#2 edit Differences ... ==== //depot/projects/xen31/sys/i386/include/vmparam.h#2 (text+ko) ==== @@ -125,9 +125,14 @@ /* * Kernel physical load address. */ + +#if !defined(XEN) || defined(XEN_PRIVILEGED_GUEST) #ifndef KERNLOAD #define KERNLOAD (1 << PDRSHIFT) #endif +#else +#define KERNLOAD 0 +#endif /* * Virtual addresses of things. Derived from the page directory and From owner-p4-projects@FreeBSD.ORG Mon Dec 17 22:54:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C061316A419; Mon, 17 Dec 2007 22:54:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 415B416A417 for ; Mon, 17 Dec 2007 22:54:24 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3E1C513C447 for ; Mon, 17 Dec 2007 22:54:24 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHMsOd1033078 for ; Mon, 17 Dec 2007 22:54:24 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHMsOdO033075 for perforce@freebsd.org; Mon, 17 Dec 2007 22:54:24 GMT (envelope-from marcel@freebsd.org) Date: Mon, 17 Dec 2007 22:54:24 GMT Message-Id: <200712172254.lBHMsOdO033075@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131129 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 22:54:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131129 Change 131129 by marcel@marcel_cluster on 2007/12/17 22:54:23 Diff reduction. Affected files ... .. //depot/projects/e500/sys/boot/powerpc/ofw/Makefile#4 edit .. //depot/projects/e500/sys/boot/powerpc/ofw/conf.c#3 edit Differences ... ==== //depot/projects/e500/sys/boot/powerpc/ofw/Makefile#4 (text+ko) ==== @@ -48,7 +48,7 @@ CFLAGS+= -DLOADER_TFTP_SUPPORT .endif -.if !defined(NO_FORTH) +.if ${MK_FORTH} != "no" # Enable BootForth BOOT_FORTH= yes CFLAGS+= -DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/powerpc ==== //depot/projects/e500/sys/boot/powerpc/ofw/conf.c#3 (text+ko) ==== @@ -102,7 +102,7 @@ /* * Consoles * - * We don't prototype these in libalpha.h because they require + * We don't prototype these in libofw.h because they require * data structures from bootstrap.h as well. */ extern struct console ofwconsole; From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:01:34 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1EDE616A46C; Mon, 17 Dec 2007 23:01:34 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8CAE716A469 for ; Mon, 17 Dec 2007 23:01:33 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8993A13C45A for ; Mon, 17 Dec 2007 23:01:33 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHN1Xb4034141 for ; Mon, 17 Dec 2007 23:01:33 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHN1Wgh034129 for perforce@freebsd.org; Mon, 17 Dec 2007 23:01:32 GMT (envelope-from peter@freebsd.org) Date: Mon, 17 Dec 2007 23:01:32 GMT Message-Id: <200712172301.lBHN1Wgh034129@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 131132 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:01:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=131132 Change 131132 by peter@peter_daintree on 2007/12/17 23:00:44 Take a unique uuid to tag the build with. This can go in the minidump header. Affected files ... .. //depot/projects/hammer/sys/conf/newvers.sh#19 edit Differences ... ==== //depot/projects/hammer/sys/conf/newvers.sh#19 (text+ko) ==== @@ -86,6 +86,7 @@ touch version v=`cat version` u=${USER:-root} d=`pwd` h=${HOSTNAME:-`hostname`} t=`date` i=`${MAKE:-make} -V KERN_IDENT` +u=`uuidgen` cat << EOF > vers.c $COPYRIGHT #define SCCSSTR "@(#)${VERSION} #${v}: ${t}" @@ -98,6 +99,7 @@ char osrelease[sizeof(RELSTR) > 32 ? sizeof(RELSTR) : 32] = RELSTR; int osreldate = ${RELDATE}; char kern_ident[] = "${i}"; +char build_uuid[] = "${u}"; EOF echo `expr ${v} + 1` > version From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:01:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C86D416A46B; Mon, 17 Dec 2007 23:01:39 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8B5EB16A41A for ; Mon, 17 Dec 2007 23:01:39 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8610E13C47E for ; Mon, 17 Dec 2007 23:01:39 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHN1d1s034153 for ; Mon, 17 Dec 2007 23:01:39 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHN1XVC034144 for perforce@freebsd.org; Mon, 17 Dec 2007 23:01:33 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 17 Dec 2007 23:01:33 GMT Message-Id: <200712172301.lBHN1XVC034144@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131133 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:01:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131133 Change 131133 by kmacy@entropy_kmacy_xen31 on 2007/12/17 23:00:48 IFC #131130 Affected files ... .. //depot/projects/xen31/Makefile#2 integrate .. //depot/projects/xen31/bin/mv/mv.c#2 integrate .. //depot/projects/xen31/contrib/amd/FREEBSD-Xlist#2 integrate .. //depot/projects/xen31/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/xen31/contrib/gcc/fold-const.c#2 integrate .. //depot/projects/xen31/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/xen31/contrib/gdtoa/hexnan.c#2 integrate .. //depot/projects/xen31/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/xen31/contrib/gdtoa/strtof.c#2 integrate .. //depot/projects/xen31/contrib/gdtoa/strtorQ.c#2 integrate .. //depot/projects/xen31/contrib/gdtoa/strtorx.c#2 integrate .. //depot/projects/xen31/etc/rc.d/ldconfig#3 integrate .. //depot/projects/xen31/games/fortune/datfiles/fortunes#5 integrate .. //depot/projects/xen31/games/fortune/datfiles/fortunes-o.real#3 integrate .. //depot/projects/xen31/include/complex.h#2 integrate .. //depot/projects/xen31/include/nsswitch.h#2 integrate .. //depot/projects/xen31/include/pthread_np.h#3 integrate .. //depot/projects/xen31/lib/Makefile#5 integrate .. //depot/projects/xen31/lib/libc/Versions.def#2 integrate .. //depot/projects/xen31/lib/libc/amd64/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/xen31/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/xen31/lib/libc/gdtoa/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/gen/getgrent.c#2 integrate .. //depot/projects/xen31/lib/libc/gen/getgrouplist.c#2 integrate .. //depot/projects/xen31/lib/libc/i386/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/xen31/lib/libc/ia64/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/xen31/lib/libc/locale/localeconv.c#2 integrate .. //depot/projects/xen31/lib/libc/net/nsdispatch.c#2 integrate .. //depot/projects/xen31/lib/libc/sparc64/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/xen31/lib/libc/stdlib/grantpt.c#2 integrate .. //depot/projects/xen31/lib/libc/stdlib/malloc.c#3 integrate .. //depot/projects/xen31/lib/libc/stdlib/rand.c#2 integrate .. //depot/projects/xen31/lib/libc/stdlib/strtod.3#2 integrate .. //depot/projects/xen31/lib/libc/string/strtok.3#2 integrate .. //depot/projects/xen31/lib/libc/string/strtok.c#2 integrate .. //depot/projects/xen31/lib/libc/string/wcstok.c#2 integrate .. //depot/projects/xen31/lib/libfetch/Makefile#2 integrate .. //depot/projects/xen31/lib/libfetch/common.c#2 integrate .. //depot/projects/xen31/lib/libfetch/common.h#2 integrate .. //depot/projects/xen31/lib/libfetch/fetch.c#2 integrate .. //depot/projects/xen31/lib/libfetch/file.c#2 integrate .. //depot/projects/xen31/lib/libfetch/ftp.c#2 integrate .. //depot/projects/xen31/lib/libfetch/http.c#2 integrate .. //depot/projects/xen31/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_cond.c#4 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_init.c#4 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mutex.c#5 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_spec.c#4 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/xen31/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/xen31/lib/libthr/pthread.map#3 integrate .. //depot/projects/xen31/lib/libthr/thread/thr_mutex.c#4 integrate .. //depot/projects/xen31/lib/libthr/thread/thr_private.h#4 integrate .. //depot/projects/xen31/lib/libufs/Makefile#2 integrate .. //depot/projects/xen31/lib/libufs/block.c#2 integrate .. //depot/projects/xen31/lib/libufs/bread.3#2 integrate .. //depot/projects/xen31/lib/libufs/libufs.h#2 integrate .. //depot/projects/xen31/lib/msun/Makefile#2 integrate .. //depot/projects/xen31/lib/msun/Symbol.map#2 integrate .. //depot/projects/xen31/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/xen31/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/xen31/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/xen31/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/xen31/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/xen31/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/xen31/lib/msun/man/atan2.3#2 integrate .. //depot/projects/xen31/lib/msun/man/csqrt.3#1 branch .. //depot/projects/xen31/lib/msun/man/hypot.3#2 integrate .. //depot/projects/xen31/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/xen31/lib/msun/man/math.3#2 integrate .. //depot/projects/xen31/lib/msun/man/nan.3#1 branch .. //depot/projects/xen31/lib/msun/man/sqrt.3#2 integrate .. //depot/projects/xen31/lib/msun/src/math.h#2 integrate .. //depot/projects/xen31/lib/msun/src/s_carg.c#1 branch .. //depot/projects/xen31/lib/msun/src/s_cargf.c#1 branch .. //depot/projects/xen31/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/xen31/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/xen31/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/xen31/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/xen31/lib/msun/src/s_nan.c#1 branch .. //depot/projects/xen31/release/doc/en_US.ISO8859-1/hardware/article.sgml#3 integrate .. //depot/projects/xen31/release/doc/share/misc/dev.archlist.txt#2 integrate .. //depot/projects/xen31/sbin/atacontrol/atacontrol.c#2 integrate .. //depot/projects/xen31/sbin/growfs/growfs.c#2 integrate .. //depot/projects/xen31/sbin/ipfw/ipfw2.c#3 integrate .. //depot/projects/xen31/sbin/natd/natd.8#3 integrate .. //depot/projects/xen31/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/xen31/sbin/newfs/newfs.8#3 integrate .. //depot/projects/xen31/sbin/newfs/newfs.c#3 integrate .. //depot/projects/xen31/sbin/newfs/newfs.h#3 integrate .. //depot/projects/xen31/share/man/man3/tgmath.3#2 integrate .. //depot/projects/xen31/share/man/man4/Makefile#4 integrate .. //depot/projects/xen31/share/man/man4/hptrr.4#1 branch .. //depot/projects/xen31/share/man/man5/src.conf.5#3 integrate .. //depot/projects/xen31/share/man/man7/build.7#2 integrate .. //depot/projects/xen31/share/mk/bsd.own.mk#3 integrate .. //depot/projects/xen31/sys/amd64/amd64/machdep.c#5 integrate .. //depot/projects/xen31/sys/amd64/conf/GENERIC#5 integrate .. //depot/projects/xen31/sys/amd64/conf/NOTES#4 integrate .. //depot/projects/xen31/sys/arm/arm/pmap.c#7 integrate .. //depot/projects/xen31/sys/arm/at91/at91.c#2 integrate .. //depot/projects/xen31/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/xen31/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/xen31/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/xen31/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/xen31/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/xen31/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/xen31/sys/conf/NOTES#7 integrate .. //depot/projects/xen31/sys/conf/files#9 integrate .. //depot/projects/xen31/sys/conf/files.amd64#6 integrate .. //depot/projects/xen31/sys/conf/files.i386#9 integrate .. //depot/projects/xen31/sys/conf/files.powerpc#4 integrate .. //depot/projects/xen31/sys/conf/options#5 integrate .. //depot/projects/xen31/sys/conf/options.powerpc#2 integrate .. //depot/projects/xen31/sys/dev/amr/amr.c#4 integrate .. //depot/projects/xen31/sys/dev/amr/amr_cam.c#4 integrate .. //depot/projects/xen31/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/xen31/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/xen31/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/xen31/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/xen31/sys/dev/ata/ata-dma.c#3 integrate .. //depot/projects/xen31/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_adapter.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_include.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_l2t.c#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_l2t.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_main.c#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_offload.c#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_offload.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_osdep.h#4 integrate .. //depot/projects/xen31/sys/dev/cxgb/cxgb_sge.c#3 integrate .. //depot/projects/xen31/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/sys/mvec.h#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/sys/uipc_mvec.c#2 integrate .. //depot/projects/xen31/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/xen31/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/xen31/sys/dev/hptrr/array.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/him.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/xen31/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/xen31/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/xen31/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/xen31/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/list.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/xen31/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/xen31/sys/dev/sound/pci/hda/hdac.c#4 integrate .. //depot/projects/xen31/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/xen31/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/xen31/sys/dev/usb/umass.c#2 integrate .. //depot/projects/xen31/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/xen31/sys/dev/usb/usbdevs#5 integrate .. //depot/projects/xen31/sys/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/xen31/sys/geom/geom_dev.c#2 integrate .. //depot/projects/xen31/sys/geom/geom_io.c#3 integrate .. //depot/projects/xen31/sys/i386/conf/GENERIC#5 integrate .. //depot/projects/xen31/sys/i386/conf/NOTES#4 integrate .. //depot/projects/xen31/sys/i386/conf/PAE#4 integrate .. //depot/projects/xen31/sys/i386/i386/machdep.c#6 integrate .. //depot/projects/xen31/sys/kern/Makefile#2 integrate .. //depot/projects/xen31/sys/kern/kern_event.c#2 integrate .. //depot/projects/xen31/sys/kern/kern_mbuf.c#6 integrate .. //depot/projects/xen31/sys/kern/kern_mutex.c#3 integrate .. //depot/projects/xen31/sys/kern/kern_resource.c#2 integrate .. //depot/projects/xen31/sys/kern/kern_rwlock.c#3 integrate .. //depot/projects/xen31/sys/kern/kern_sx.c#3 integrate .. //depot/projects/xen31/sys/kern/kern_thread.c#5 integrate .. //depot/projects/xen31/sys/kern/kern_umtx.c#3 integrate .. //depot/projects/xen31/sys/kern/sched_4bsd.c#5 integrate .. //depot/projects/xen31/sys/kern/sched_ule.c#4 integrate .. //depot/projects/xen31/sys/kern/subr_lock.c#3 integrate .. //depot/projects/xen31/sys/kern/sys_generic.c#3 integrate .. //depot/projects/xen31/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/xen31/sys/kern/uipc_sockbuf.c#2 integrate .. //depot/projects/xen31/sys/modules/Makefile#4 integrate .. //depot/projects/xen31/sys/modules/cxgb/Makefile#2 integrate .. //depot/projects/xen31/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/xen31/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/xen31/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/xen31/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/xen31/sys/net/if.h#3 integrate .. //depot/projects/xen31/sys/net/if_lagg.c#4 integrate .. //depot/projects/xen31/sys/net/route.c#4 integrate .. //depot/projects/xen31/sys/net/route.h#2 integrate .. //depot/projects/xen31/sys/net80211/ieee80211_radiotap.h#2 integrate .. //depot/projects/xen31/sys/netgraph/ng_l2tp.c#2 integrate .. //depot/projects/xen31/sys/netinet/if_ether.c#4 integrate .. //depot/projects/xen31/sys/netinet/if_ether.h#2 integrate .. //depot/projects/xen31/sys/netinet/tcp.h#2 integrate .. //depot/projects/xen31/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/xen31/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/xen31/sys/netinet/tcp_syncache.c#8 integrate .. //depot/projects/xen31/sys/netinet/tcp_syncache.h#2 integrate .. //depot/projects/xen31/sys/netinet/tcp_var.h#3 integrate .. //depot/projects/xen31/sys/netinet/toedev.h#1 branch .. //depot/projects/xen31/sys/netinet6/in6_pcb.c#3 integrate .. //depot/projects/xen31/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/xen31/sys/netncp/ncp_sock.c#2 integrate .. //depot/projects/xen31/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/xen31/sys/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/xen31/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/xen31/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/xen31/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/xen31/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/xen31/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/xen31/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/xen31/sys/powerpc/conf/GENERIC#4 integrate .. //depot/projects/xen31/sys/powerpc/conf/NOTES#2 integrate .. //depot/projects/xen31/sys/powerpc/include/fpu.h#2 integrate .. //depot/projects/xen31/sys/powerpc/powerpc/clock.c#3 delete .. //depot/projects/xen31/sys/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/interrupt.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/locore.S#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/machdep.c#4 delete .. //depot/projects/xen31/sys/powerpc/powerpc/mmu_oea.c#3 delete .. //depot/projects/xen31/sys/powerpc/powerpc/nexus.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/swtch.S#3 delete .. //depot/projects/xen31/sys/powerpc/powerpc/trap.c#3 delete .. //depot/projects/xen31/sys/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/uio_machdep.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/uma_machdep.c#2 delete .. //depot/projects/xen31/sys/powerpc/powerpc/vm_machdep.c#4 delete .. //depot/projects/xen31/sys/security/mac/mac_posix_sem.c#3 integrate .. //depot/projects/xen31/sys/sys/_lock.h#2 integrate .. //depot/projects/xen31/sys/sys/ata.h#2 integrate .. //depot/projects/xen31/sys/sys/kerneldump.h#2 integrate .. //depot/projects/xen31/sys/sys/lock_profile.h#2 integrate .. //depot/projects/xen31/sys/sys/pcpu.h#4 integrate .. //depot/projects/xen31/sys/sys/proc.h#6 integrate .. //depot/projects/xen31/sys/sys/selinfo.h#2 integrate .. //depot/projects/xen31/sys/sys/socket.h#2 integrate .. //depot/projects/xen31/sys/sys/socketvar.h#2 integrate .. //depot/projects/xen31/sys/sys/sx.h#2 integrate .. //depot/projects/xen31/sys/sys/systm.h#3 integrate .. //depot/projects/xen31/sys/sys/tty.h#2 integrate .. //depot/projects/xen31/sys/vm/vm_page.c#6 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_BZIP2#2 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_GNU#2 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_GSSAPI#1 branch .. //depot/projects/xen31/tools/build/options/WITHOUT_KERBEROS#3 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_KVM#2 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_PAM#2 integrate .. //depot/projects/xen31/tools/build/options/WITHOUT_TOOLCHAIN#2 integrate .. //depot/projects/xen31/tools/build/options/WITH_GSSAPI#2 delete .. //depot/projects/xen31/tools/build/options/makeman#3 integrate .. //depot/projects/xen31/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/xen31/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/xen31/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/xen31/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/xen31/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/xen31/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/xen31/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/xen31/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/xen31/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/xen31/tools/regression/lib/msun/test-next.c#3 integrate .. //depot/projects/xen31/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/xen31/tools/regression/usr.bin/sed/regress.sh#2 integrate .. //depot/projects/xen31/tools/tools/ath/athdebug/athdebug.c#3 integrate .. //depot/projects/xen31/tools/tools/ath/athstats/Makefile#2 integrate .. //depot/projects/xen31/tools/tools/ath/athstats/athstats.c#3 integrate .. //depot/projects/xen31/tools/tools/ath/athstats/main.c#3 integrate .. //depot/projects/xen31/tools/tools/ath/athstats/statfoo.c#3 integrate .. //depot/projects/xen31/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/xen31/usr.bin/procstat/procstat_args.c#2 integrate .. //depot/projects/xen31/usr.bin/procstat/procstat_bin.c#2 integrate .. //depot/projects/xen31/usr.bin/procstat/procstat_cred.c#2 integrate .. //depot/projects/xen31/usr.bin/procstat/procstat_files.c#2 integrate .. //depot/projects/xen31/usr.bin/vmstat/Makefile#2 integrate .. //depot/projects/xen31/usr.bin/vmstat/vmstat.8#2 integrate .. //depot/projects/xen31/usr.bin/vmstat/vmstat.c#2 integrate .. //depot/projects/xen31/usr.bin/xinstall/xinstall.c#2 integrate .. //depot/projects/xen31/usr.sbin/iostat/iostat.c#2 integrate .. //depot/projects/xen31/usr.sbin/syslogd/syslogd.c#3 integrate Differences ... ==== //depot/projects/xen31/Makefile#2 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.342 2007/10/18 08:41:52 delphij Exp $ +# $FreeBSD: src/Makefile,v 1.344 2007/12/13 00:08:02 imp Exp $ # # The user-driven targets are: # @@ -234,17 +234,18 @@ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ then \ - (cd ${.CURDIR} && make make); \ + (cd ${.CURDIR} && ${MAKE} make); \ fi # # Upgrade make(1) to the current version using the installed -# headers, libraries and tools. +# headers, libraries and tools. Also, allow the location of +# the system bsdmake-like utility to be overridden. # MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -MMAKE= ${MMAKEENV} make \ +MMAKE= ${MMAKEENV} ${MAKE} \ -D_UPGRADING \ -DNOMAN -DNO_MAN -DNOSHARED -DNO_SHARED \ -DNO_CPU_CFLAGS -DNO_WERROR ==== //depot/projects/xen31/bin/mv/mv.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,77 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + _exit(EX_OSERR); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/xen31/contrib/amd/FREEBSD-Xlist#2 (text+ko) ==== @@ -1,7 +1,8 @@ -$FreeBSD: src/contrib/amd/FREEBSD-Xlist,v 1.5 2004/07/06 12:52:27 mbr Exp $ +$FreeBSD: src/contrib/amd/FREEBSD-Xlist,v 1.6 2007/12/11 19:15:17 obrien Exp $ *LSM.am-utils *Makefile.* *README.autofs +*README.osx *ac*.m4 *.old *acconfig.h @@ -15,6 +16,7 @@ *missing *mkinstalldirs *stamp-h.in +*amd/test1.sh *amd/Makefile.* *amq/Makefile.* *commit @@ -38,10 +40,13 @@ *conf/fh_dref/fh_dref_sunos3.h *conf/fh_dref/fh_dref_sunos4.h *conf/fh_dref/fh_dref_svr4.h +*conf/hn_dref/hn_dref_default.h, *conf/hn_dref/hn_dref_isc3.h *conf/hn_dref/hn_dref_linux.h *conf/mount/mount_aix.c +*conf/mount/mount_aix3.c *conf/mount/mount_bsdi3.c +*conf/mount/mount_default.c *conf/mount/mount_freebsd3.c *conf/mount/mount_hpux.c *conf/mount/mount_irix5.c @@ -54,6 +59,7 @@ *conf/mtab/mtab_aix.c *conf/mtab/mtab_file.c *conf/mtab/mtab_isc3.c +*conf/mtab/mtab_linux.c *conf/mtab/mtab_mach3.c *conf/mtab/mtab_osf.c *conf/mtab/mtab_svr4.c @@ -63,6 +69,7 @@ *conf/nfs_prot/nfs_prot_aix4_2.h *conf/nfs_prot/nfs_prot_aix4_3.h *conf/nfs_prot/nfs_prot_aix5_1.h +*conf/nfs_prot/nfs_prot_aix5_2.h *conf/nfs_prot/nfs_prot_bsdi2.h *conf/nfs_prot/nfs_prot_bsdi3.h *conf/nfs_prot/nfs_prot_darwin.h @@ -92,6 +99,12 @@ *conf/nfs_prot/nfs_prot_sunos5_8.h *conf/nfs_prot/nfs_prot_svr4.h *conf/nfs_prot/nfs_prot_ultrix.h +*conf/autofs/autofs_linux.h +*conf/autofs/autofs_linux.c +*conf/autofs/autofs_solaris_v1.h +*conf/autofs/autofs_solaris_v1.c +*conf/autofs/autofs_solaris_v2_v3.h +*conf/autofs/autofs_solaris_v2_v3.c *conf/sa_dref/sa_dref_386bsd.h *conf/sa_dref/sa_dref_aix3.h *conf/sa_dref/sa_dref_aoi.h @@ -103,6 +116,7 @@ *conf/trap/trap_aix3.h *conf/trap/trap_aux.h *conf/trap/trap_dgux.h +*conf/trap/trap_freebsd3.h *conf/trap/trap_hcx.h *conf/trap/trap_hpux.h *conf/trap/trap_hpux11.h @@ -115,7 +129,9 @@ *conf/trap/trap_stellix.h *conf/trap/trap_svr4.h *conf/trap/trap_ultrix.h +*conf/umount/umount_aix.c *conf/umount/umount_default.c +*conf/umount/umount_linux.c *conf/umount/umount_osf.c *doc/Makefile.am *doc/Makefile.in @@ -135,11 +151,118 @@ *fsinfo/Makefile.* *hlfsd/Makefile.* *libamu/Makefile.* +*libamu/alloca.c *libamu/clnt_sperrno.c *libamu/memcmp.c *libamu/strcasecmp.c *libamu/strdup.c *libamu/strstr.c +*libamu/strlcat.c +*libamu/strlcpy.c *libamu/ualarm.c *mk-amd-map/Makefile.* *wire-test/Makefile.* +*m4/GNUmakefile +*m4/amdgrep* +*m4/amindent* +*m4/autopat* +*m4/chop-aclocal.pl* +*m4/copy-if-newbig* +*m4/mk-aclocal* +*m4/mkconf* +*m4/rmtspc* +*m4/update_build_version* +*m4/macros/HEADER +*m4/macros/TRAILER +*m4/macros/c_void_p.m4 +*m4/macros/cache_check_dynamic.m4 +*m4/macros/check_amu_fs.m4 +*m4/macros/check_checkmount_style.m4 +*m4/macros/check_extern.m4 +*m4/macros/check_fhandle.m4 +*m4/macros/check_field.m4 +*m4/macros/check_fs_headers.m4 +*m4/macros/check_fs_mntent.m4 +*m4/macros/check_gnu_getopt.m4 +*m4/macros/check_hide_mount_type.m4 +*m4/macros/check_lib2.m4 +*m4/macros/check_map_funcs.m4 +*m4/macros/check_mnt2_cdfs_opt.m4 +*m4/macros/check_mnt2_gen_opt.m4 +*m4/macros/check_mnt2_nfs_opt.m4 +*m4/macros/check_mnttab_file_name.m4 +*m4/macros/check_mnttab_location.m4 +*m4/macros/check_mnttab_opt.m4 +*m4/macros/check_mnttab_style.m4 +*m4/macros/check_mnttab_type.m4 +*m4/macros/check_mount_style.m4 +*m4/macros/check_mount_trap.m4 +*m4/macros/check_mount_type.m4 +*m4/macros/check_mtype_printf_type.m4 +*m4/macros/check_mtype_type.m4 +*m4/macros/check_network_transport_type.m4 +*m4/macros/check_nfs_fh_dref.m4 +*m4/macros/check_nfs_hn_dref.m4 +*m4/macros/check_nfs_prot_headers.m4 +*m4/macros/check_nfs_sa_dref.m4 +*m4/macros/check_nfs_socket_connection.m4 +*m4/macros/check_os_libs.m4 +*m4/macros/check_restartable_signal_handler.m4 +*m4/macros/check_umount_style.m4 +*m4/macros/check_unmount_args.m4 +*m4/macros/check_unmount_call.m4 +*m4/macros/expand_cpp_hex.m4 +*m4/macros/expand_cpp_int.m4 +*m4/macros/expand_cpp_string.m4 +*m4/macros/expand_run_string.m4 +*m4/macros/extern_optarg.m4 +*m4/macros/extern_sys_errlist.m4 +*m4/macros/field_mntent_t_mnt_time_string.m4 +*m4/macros/func_bad_memcmp.m4 +*m4/macros/func_bad_yp_all.m4 +*m4/macros/header_templates.m4 +*m4/macros/host_macros.m4 +*m4/macros/linux_headers.m4 +*m4/macros/localconfig.m4 +*m4/macros/mount_headers.m4 +*m4/macros/name_package.m4 +*m4/macros/name_version.m4 +*m4/macros/opt_amu_cflags.m4 +*m4/macros/opt_cppflags.m4 +*m4/macros/opt_debug.m4 +*m4/macros/opt_ldflags.m4 +*m4/macros/opt_libs.m4 +*m4/macros/os_cflags.m4 +*m4/macros/os_cppflags.m4 +*m4/macros/os_ldflags.m4 +*m4/macros/package_bugreport.m4 +*m4/macros/package_name.m4 +*m4/macros/package_version.m4 +*m4/macros/save_state.m4 +*m4/macros/struct_field_nfs_fh.m4 +*m4/macros/struct_mntent.m4 +*m4/macros/struct_mnttab.m4 +*m4/macros/struct_nfs_args.m4 +*m4/macros/struct_nfs_fh.m4 +*m4/macros/struct_nfs_fh3.m4 +*m4/macros/struct_nfs_gfs_mount.m4 +*m4/macros/try_compile_anyfs.m4 +*m4/macros/try_compile_nfs.m4 +*m4/macros/try_compile_rpc.m4 +*m4/macros/type_auth_create_gidlist.m4 +*m4/macros/type_cachefs_args.m4 +*m4/macros/type_cdfs_args.m4 +*m4/macros/type_efs_args.m4 +*m4/macros/type_lofs_args.m4 +*m4/macros/type_mfs_args.m4 +*m4/macros/type_pcfs_args.m4 +*m4/macros/type_recvfrom_fromlen.m4 +*m4/macros/type_rfs_args.m4 +*m4/macros/type_svc_in_arg.m4 +*m4/macros/type_time_t.m4 +*m4/macros/type_tmpfs_args.m4 +*m4/macros/type_ufs_args.m4 +*m4/macros/type_xdrproc_t.m4 +*m4/macros/type_xfs_args.m4 +*m4/macros/type_yp_order_outorder.m4 +*m4/macros/with_addon.m4 ==== //depot/projects/xen31/contrib/amd/FREEBSD-upgrade#2 (text+ko) ==== @@ -1,21 +1,19 @@ # ex:ts=8 -$FreeBSD: src/contrib/amd/FREEBSD-upgrade,v 1.15 2004/05/14 13:29:48 mbr Exp $ +$FreeBSD: src/contrib/amd/FREEBSD-upgrade,v 1.16 2007/12/11 19:16:51 obrien Exp $ -AMD (am-utils) 6.0.9 - originals can be found at: ftp://shekel.mcl.cs.columbia.edu/pub/am-utils/ - (http://www.cs.columbia.edu/~ezk/am-utils/index.html) - +AMD (am-utils) 6.1.5 + originals can be found at: ftp://ftp.am-utils.org/pub/am-utils/ For the import of AMD many files were pruned by: - tar -X FREEBSD-Xlist -xzf am-utils-6.0.9.tar.gz + tar -X FREEBSD-Xlist -xf am-utils-6.1.5.tar.gz and `find . -name '.cvsignore' -delete` Then imported by: - cvs import -m 'Virgin import of AMD (am-utils) v6.0.9' \ - src/contrib/amd COLUMBIA amd_6_0_9 + cvs import -m 'Virgin import of AMD (am-utils) v6.1.5' \ + src/contrib/amd COLUMBIA amd_6_1_5 After the import, a separate extraction of am-utils was GNU configured in the "normal" way. The resulting config.h file should be compared with @@ -25,8 +23,11 @@ To make local changes to amd, simply patch and commit to the main branch (aka HEAD). Never make local changes on the vendor (COLUMBIA) branch. -All local changes should be submitted to "amd-dev@majordomo.cs.columbia.edu" -for inclusion in the next vendor release. +Note, we don't trim anything in scripts/ as sysadmins may find the bits +as a useful reference. + +All local changes should be submitted to "am-utils@am-utils.org" or +https://bugzilla.am-utils.org for inclusion in the next vendor release. Local changes: ==== //depot/projects/xen31/contrib/gcc/fold-const.c#2 (text+ko) ==== @@ -5661,6 +5661,9 @@ } break; } + /* If the constant is negative, we cannot simplify this. */ + if (tree_int_cst_sgn (c) == -1) + break; /* FALLTHROUGH */ case NEGATE_EXPR: if ((t1 = extract_muldiv (op0, c, code, wide_type, strict_overflow_p)) ==== //depot/projects/xen31/contrib/gdtoa/gdtoaimp.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/xen31/contrib/gdtoa/hexnan.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/xen31/contrib/gdtoa/strtod.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/xen31/contrib/gdtoa/strtof.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:03:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A049716A420; Mon, 17 Dec 2007 23:03:42 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3812216A417 for ; Mon, 17 Dec 2007 23:03:42 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3439813C455 for ; Mon, 17 Dec 2007 23:03:42 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHN3g1h035974 for ; Mon, 17 Dec 2007 23:03:42 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHN3fLr035971 for perforce@freebsd.org; Mon, 17 Dec 2007 23:03:41 GMT (envelope-from peter@freebsd.org) Date: Mon, 17 Dec 2007 23:03:41 GMT Message-Id: <200712172303.lBHN3fLr035971@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 131134 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:03:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131134 Change 131134 by peter@peter_daintree on 2007/12/17 23:03:21 Export kern.build_uuid Affected files ... .. //depot/projects/hammer/sys/kern/kern_mib.c#18 edit .. //depot/projects/hammer/sys/sys/sysctl.h#38 edit Differences ... ==== //depot/projects/hammer/sys/kern/kern_mib.c#18 (text+ko) ==== @@ -141,6 +141,9 @@ SYSCTL_STRING(_kern, KERN_BOOTFILE, bootfile, CTLFLAG_RW, kernelname, sizeof kernelname, "Name of kernel file booted"); +SYSCTL_STRING(_kern, OID_AUTO, build_uuid, CTLFLAG_RD, + build_uuid, 0, "Unique kernel build identifier"); + SYSCTL_INT(_hw, HW_NCPU, ncpu, CTLFLAG_RD, &mp_ncpus, 0, "Number of active CPUs"); ==== //depot/projects/hammer/sys/sys/sysctl.h#38 (text+ko) ==== @@ -644,6 +644,7 @@ extern char osrelease[]; extern char ostype[]; extern char kern_ident[]; +extern char build_uuid[]; /* Dynamic oid handling */ struct sysctl_oid *sysctl_add_oid(struct sysctl_ctx_list *clist, From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:03:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C2F2616A469; Mon, 17 Dec 2007 23:03:48 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 86D3016A420 for ; Mon, 17 Dec 2007 23:03:48 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7FDDC13C457 for ; Mon, 17 Dec 2007 23:03:48 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHN3mUk035991 for ; Mon, 17 Dec 2007 23:03:48 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHN3gYE035977 for perforce@freebsd.org; Mon, 17 Dec 2007 23:03:42 GMT (envelope-from marcel@freebsd.org) Date: Mon, 17 Dec 2007 23:03:42 GMT Message-Id: <200712172303.lBHN3gYE035977@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131135 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:03:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131135 Change 131135 by marcel@marcel_cluster on 2007/12/17 23:03:41 IFC @131130 Affected files ... .. //depot/projects/powerpc/bin/mv/mv.c#2 integrate .. //depot/projects/powerpc/contrib/gdtoa/gdtoaimp.h#3 integrate .. //depot/projects/powerpc/contrib/gdtoa/hexnan.c#3 integrate .. //depot/projects/powerpc/contrib/gdtoa/strtod.c#3 integrate .. //depot/projects/powerpc/contrib/gdtoa/strtof.c#3 integrate .. //depot/projects/powerpc/contrib/gdtoa/strtorQ.c#3 integrate .. //depot/projects/powerpc/contrib/gdtoa/strtorx.c#3 integrate .. //depot/projects/powerpc/include/complex.h#3 integrate .. //depot/projects/powerpc/lib/libc/amd64/Symbol.map#4 integrate .. //depot/projects/powerpc/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/powerpc/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/powerpc/lib/libc/gdtoa/Symbol.map#4 integrate .. //depot/projects/powerpc/lib/libc/i386/Symbol.map#5 integrate .. //depot/projects/powerpc/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/powerpc/lib/libc/ia64/Symbol.map#5 integrate .. //depot/projects/powerpc/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/powerpc/lib/libc/net/nsdispatch.c#4 integrate .. //depot/projects/powerpc/lib/libc/sparc64/Symbol.map#4 integrate .. //depot/projects/powerpc/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/powerpc/lib/libc/stdlib/malloc.c#7 integrate .. //depot/projects/powerpc/lib/libc/stdlib/strtod.3#3 integrate .. //depot/projects/powerpc/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_cond.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_init.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mutex.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_spec.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/powerpc/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/powerpc/lib/libthr/thread/thr_mutex.c#8 integrate .. //depot/projects/powerpc/lib/libufs/Makefile#2 integrate .. //depot/projects/powerpc/lib/libufs/block.c#2 integrate .. //depot/projects/powerpc/lib/libufs/bread.3#2 integrate .. //depot/projects/powerpc/lib/libufs/libufs.h#2 integrate .. //depot/projects/powerpc/lib/msun/Makefile#6 integrate .. //depot/projects/powerpc/lib/msun/Symbol.map#5 integrate .. //depot/projects/powerpc/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/powerpc/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/powerpc/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/powerpc/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/powerpc/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/powerpc/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/powerpc/lib/msun/man/csqrt.3#1 branch .. //depot/projects/powerpc/lib/msun/man/ilogb.3#3 integrate .. //depot/projects/powerpc/lib/msun/man/math.3#3 integrate .. //depot/projects/powerpc/lib/msun/man/nan.3#1 branch .. //depot/projects/powerpc/lib/msun/src/math.h#3 integrate .. //depot/projects/powerpc/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/powerpc/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/powerpc/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/powerpc/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/powerpc/lib/msun/src/s_nan.c#1 branch .. //depot/projects/powerpc/release/doc/en_US.ISO8859-1/hardware/article.sgml#6 integrate .. //depot/projects/powerpc/release/doc/share/misc/dev.archlist.txt#9 integrate .. //depot/projects/powerpc/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/powerpc/sbin/growfs/growfs.c#2 integrate .. //depot/projects/powerpc/sbin/ipfw/ipfw2.c#7 integrate .. //depot/projects/powerpc/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/powerpc/sbin/newfs/newfs.8#3 integrate .. //depot/projects/powerpc/sbin/newfs/newfs.c#4 integrate .. //depot/projects/powerpc/sbin/newfs/newfs.h#3 integrate .. //depot/projects/powerpc/share/man/man3/tgmath.3#2 integrate .. //depot/projects/powerpc/share/man/man4/Makefile#14 integrate .. //depot/projects/powerpc/share/man/man4/hptrr.4#1 branch .. //depot/projects/powerpc/sys/amd64/conf/GENERIC#10 integrate .. //depot/projects/powerpc/sys/amd64/conf/NOTES#8 integrate .. //depot/projects/powerpc/sys/arm/at91/at91.c#3 integrate .. //depot/projects/powerpc/sys/arm/at91/if_ate.c#7 integrate .. //depot/projects/powerpc/sys/boot/powerpc/Makefile#3 integrate .. //depot/projects/powerpc/sys/boot/powerpc/loader/Makefile#5 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/conf.c#5 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/help.ofw#3 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/start.c#5 delete .. //depot/projects/powerpc/sys/boot/powerpc/loader/version#3 delete .. //depot/projects/powerpc/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/powerpc/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/powerpc/sys/cam/cam_xpt.c#12 integrate .. //depot/projects/powerpc/sys/conf/NOTES#16 integrate .. //depot/projects/powerpc/sys/conf/files#19 integrate .. //depot/projects/powerpc/sys/conf/files.amd64#9 integrate .. //depot/projects/powerpc/sys/conf/files.i386#12 integrate .. //depot/projects/powerpc/sys/conf/files.powerpc#12 integrate .. //depot/projects/powerpc/sys/conf/options#19 integrate .. //depot/projects/powerpc/sys/conf/options.powerpc#4 integrate .. //depot/projects/powerpc/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_adapter.h#7 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_config.h#4 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_main.c#9 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_offload.c#4 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_offload.h#5 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_osdep.h#6 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_sge.c#9 integrate .. //depot/projects/powerpc/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/powerpc/sys/dev/cxgb/sys/mvec.h#5 integrate .. //depot/projects/powerpc/sys/dev/cxgb/sys/uipc_mvec.c#4 integrate .. //depot/projects/powerpc/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/array.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/him.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/list.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/powerpc/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/powerpc/sys/dev/usb/uplcom.c#6 integrate .. //depot/projects/powerpc/sys/geom/geom_dev.c#5 integrate .. //depot/projects/powerpc/sys/geom/geom_io.c#7 integrate .. //depot/projects/powerpc/sys/i386/conf/GENERIC#13 integrate .. //depot/projects/powerpc/sys/i386/conf/NOTES#11 integrate .. //depot/projects/powerpc/sys/i386/conf/PAE#5 integrate .. //depot/projects/powerpc/sys/i386/i386/machdep.c#15 integrate .. //depot/projects/powerpc/sys/kern/kern_event.c#9 integrate .. //depot/projects/powerpc/sys/kern/kern_mbuf.c#7 integrate .. //depot/projects/powerpc/sys/kern/kern_mutex.c#12 integrate .. //depot/projects/powerpc/sys/kern/kern_rwlock.c#7 integrate .. //depot/projects/powerpc/sys/kern/kern_sx.c#13 integrate .. //depot/projects/powerpc/sys/kern/kern_thread.c#11 integrate .. //depot/projects/powerpc/sys/kern/kern_umtx.c#6 integrate .. //depot/projects/powerpc/sys/kern/sched_4bsd.c#10 integrate .. //depot/projects/powerpc/sys/kern/sched_ule.c#11 integrate .. //depot/projects/powerpc/sys/kern/subr_lock.c#7 integrate .. //depot/projects/powerpc/sys/kern/sys_generic.c#10 integrate .. //depot/projects/powerpc/sys/kern/sys_pipe.c#10 integrate .. //depot/projects/powerpc/sys/kern/uipc_sockbuf.c#6 integrate .. //depot/projects/powerpc/sys/modules/Makefile#15 integrate .. //depot/projects/powerpc/sys/modules/cxgb/Makefile#7 integrate .. //depot/projects/powerpc/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/powerpc/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/powerpc/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/powerpc/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/powerpc/sys/net/if.h#8 integrate .. //depot/projects/powerpc/sys/net/if_lagg.c#7 integrate .. //depot/projects/powerpc/sys/net/route.c#9 integrate .. //depot/projects/powerpc/sys/net/route.h#6 integrate .. //depot/projects/powerpc/sys/netinet/if_ether.c#12 integrate .. //depot/projects/powerpc/sys/netinet/if_ether.h#4 integrate .. //depot/projects/powerpc/sys/netinet/tcp.h#9 integrate .. //depot/projects/powerpc/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/powerpc/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/powerpc/sys/netinet/tcp_ofld.c#2 delete .. //depot/projects/powerpc/sys/netinet/tcp_ofld.h#2 delete .. //depot/projects/powerpc/sys/netinet/tcp_syncache.c#15 integrate .. //depot/projects/powerpc/sys/netinet/toedev.h#2 integrate .. //depot/projects/powerpc/sys/netinet6/in6_pcb.c#8 integrate .. //depot/projects/powerpc/sys/netncp/ncp_rq.c#4 integrate .. //depot/projects/powerpc/sys/netncp/ncp_sock.c#6 integrate .. //depot/projects/powerpc/sys/netncp/ncp_sock.h#4 integrate .. //depot/projects/powerpc/sys/netsmb/smb_trantcp.c#5 integrate .. //depot/projects/powerpc/sys/powerpc/conf/GENERIC#12 integrate .. //depot/projects/powerpc/sys/powerpc/conf/NOTES#6 integrate .. //depot/projects/powerpc/sys/powerpc/include/fpu.h#4 integrate .. //depot/projects/powerpc/sys/security/mac/mac_posix_sem.c#5 integrate .. //depot/projects/powerpc/sys/sys/_lock.h#5 integrate .. //depot/projects/powerpc/sys/sys/ata.h#8 integrate .. //depot/projects/powerpc/sys/sys/lock_profile.h#8 integrate .. //depot/projects/powerpc/sys/sys/proc.h#17 integrate .. //depot/projects/powerpc/sys/sys/selinfo.h#5 integrate .. //depot/projects/powerpc/sys/sys/socketvar.h#8 integrate .. //depot/projects/powerpc/sys/sys/sx.h#11 integrate .. //depot/projects/powerpc/sys/sys/systm.h#13 integrate .. //depot/projects/powerpc/sys/sys/tty.h#5 integrate .. //depot/projects/powerpc/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/powerpc/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/powerpc/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/powerpc/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/powerpc/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/powerpc/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/powerpc/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/powerpc/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/powerpc/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/powerpc/tools/regression/lib/msun/test-next.c#3 integrate .. //depot/projects/powerpc/tools/regression/usr.bin/sed/multitest.t#3 integrate .. //depot/projects/powerpc/tools/regression/usr.bin/sed/regress.sh#6 integrate .. //depot/projects/powerpc/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/powerpc/usr.sbin/iostat/iostat.c#6 integrate Differences ... ==== //depot/projects/powerpc/bin/mv/mv.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,77 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + _exit(EX_OSERR); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/powerpc/contrib/gdtoa/gdtoaimp.h#3 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/powerpc/contrib/gdtoa/hexnan.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/powerpc/contrib/gdtoa/strtod.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/powerpc/contrib/gdtoa/strtof.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; + break; + case STRTOG_Denormal: u.L[0] = bits[0]; break; ==== //depot/projects/powerpc/contrib/gdtoa/strtorQ.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorQ.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -63,11 +65,18 @@ break; case STRTOG_Normal: + L[_3] = bits[0]; + L[_2] = bits[1]; + L[_1] = bits[2]; + L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + break; + case STRTOG_NaNbits: L[_3] = bits[0]; L[_2] = bits[1]; L[_1] = bits[2]; - L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + L[_0] = (bits[3] & ~0x10000) + | (((exp + 0x3fff + 112) << 16) | (1 << 15)); break; case STRTOG_Denormal: ==== //depot/projects/powerpc/contrib/gdtoa/strtorx.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorx.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -69,7 +71,6 @@ goto normal_bits; case STRTOG_Normal: - case STRTOG_NaNbits: L[_0] = exp + 0x3fff + 63; normal_bits: L[_4] = (UShort)bits[0]; @@ -78,6 +79,14 @@ L[_1] = (UShort)(bits[1] >> 16); break; + case STRTOG_NaNbits: + L[_0] = exp + 0x3fff + 63; + L[_4] = (UShort)bits[0]; + L[_3] = (UShort)(bits[0] >> 16); + L[_2] = (UShort)bits[1]; + L[_1] = (UShort)((bits[1] >> 16) | (3 << 14)); + break; + case STRTOG_Infinite: L[_0] = 0x7fff; L[_1] = L[_2] = L[_3] = L[_4] = 0; ==== //depot/projects/powerpc/include/complex.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2001 The FreeBSD Project. + * Copyright (c) 2001-2007 The FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/complex.h,v 1.7 2007/12/12 23:43:51 das Exp $ + * $FreeBSD: src/include/complex.h,v 1.8 2007/12/15 08:38:44 das Exp $ */ #ifndef _COMPLEX_H @@ -57,6 +57,8 @@ double creal(double complex); float crealf(float complex); long double creall(long double complex); +double complex csqrt(double complex); +float complex csqrtf(float complex); __END_DECLS ==== //depot/projects/powerpc/lib/libc/amd64/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.4 2007/05/31 13:01:32 deischen Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ */ /* @@ -71,4 +71,7 @@ _end; __sys_vfork; _vfork; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/amd64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/powerpc/lib/libc/arm/gd_qnan.h#2 (text+ko) ==== @@ -6,18 +6,18 @@ * * XXX I don't have ARM hardware, so I just guessed. --das * - * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/powerpc/lib/libc/gdtoa/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.5 2007/10/13 14:40:16 deischen Exp $ + * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ */ FBSD_1.0 { @@ -12,3 +12,8 @@ /* FreeBSD additions */ strtold; }; + +FBSDprivate_1.0 { + /* used in libm */ + __hexnan_D2A; +}; ==== //depot/projects/powerpc/lib/libc/i386/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.5 2007/05/31 13:01:33 deischen Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ */ /* @@ -68,4 +68,7 @@ _brk; .curbrk; .minbrk; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/i386/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/powerpc/lib/libc/ia64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.4 2007/10/18 11:28:38 yar Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ */ /* @@ -69,4 +69,7 @@ minbrk; .cerror; curbrk; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/ia64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/powerpc/lib/libc/net/nsdispatch.c#4 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.15 2007/12/12 10:08:03 bushman Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.16 2007/12/17 16:12:57 bushman Exp $"); #include "namespace.h" #include @@ -592,9 +592,7 @@ return (match->method); } } - if (is_dynamic()) - nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, - method); + *mdata = NULL; return (NULL); } @@ -701,12 +699,18 @@ if (result & (srclist[i].flags)) break; - } else if (fb_method != NULL) { - fallback_dispatch = 1; - va_start(ap, defaults); - result = fb_method(retval, (void *)srclist[i].name, ap); - va_end(ap); - fallback_dispatch = 0; + } else { + if (fb_method != NULL) { + fallback_dispatch = 1; + va_start(ap, defaults); + result = fb_method(retval, + (void *)srclist[i].name, ap); + va_end(ap); + fallback_dispatch = 0; + } else + nss_log(LOG_DEBUG, "%s, %s, %s, not found, " + "and no fallback provided", + srclist[i].name, database, method_name); } } ==== //depot/projects/powerpc/lib/libc/sparc64/Symbol.map#4 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.5 2007/05/31 13:01:34 deischen Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ */ /* @@ -96,4 +96,7 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; + + /* used in libm */ + __ULtoQ_D2A; }; ==== //depot/projects/powerpc/lib/libc/sparc64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0x7fffffff -#define d_QNAN0 0x7fffffff -#define d_QNAN1 0xffffffff -#define ld_QNAN0 0x7fffffff -#define ld_QNAN1 0xffffffff -#define ld_QNAN2 0xffffffff -#define ld_QNAN3 0xffffffff +#define f_QNAN 0x7fc00000 +#define d_QNAN0 0x7ff80000 +#define d_QNAN1 0x00000000 +#define ld_QNAN0 0x7fff8000 +#define ld_QNAN1 0x00000000 +#define ld_QNAN2 0x00000000 +#define ld_QNAN3 0x00000000 #define ldus_QNAN0 0x7fff -#define ldus_QNAN1 0xffff -#define ldus_QNAN2 0xffff -#define ldus_QNAN3 0xffff -#define ldus_QNAN4 0xffff +#define ldus_QNAN1 0x8000 +#define ldus_QNAN2 0x0000 +#define ldus_QNAN3 0x0000 +#define ldus_QNAN4 0x0000 ==== //depot/projects/powerpc/lib/libc/stdlib/malloc.c#7 (text+ko) ==== @@ -104,8 +104,22 @@ # define MALLOC_DEBUG #endif +/* + * MALLOC_LAZY_FREE enables the use of a per-thread vector of slots that free() + * can atomically stuff object pointers into. This can reduce arena lock + * contention. + */ +#define MALLOC_LAZY_FREE + +/* + * MALLOC_BALANCE enables monitoring of arena lock contention and dynamically + * re-balances arena load if exponentially averaged contention exceeds a + * certain threshold. + */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:07:53 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE3FD16A419; Mon, 17 Dec 2007 23:07:53 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8230A16A418 for ; Mon, 17 Dec 2007 23:07:53 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7F37A13C461 for ; Mon, 17 Dec 2007 23:07:53 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHN7r3W036185 for ; Mon, 17 Dec 2007 23:07:53 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHN7rMF036182 for perforce@freebsd.org; Mon, 17 Dec 2007 23:07:53 GMT (envelope-from peter@freebsd.org) Date: Mon, 17 Dec 2007 23:07:53 GMT Message-Id: <200712172307.lBHN7rMF036182@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 131136 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:07:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=131136 Change 131136 by peter@peter_daintree on 2007/12/17 23:07:25 Store the build_uuid in the minidump header. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/minidump_machdep.c#3 edit .. //depot/projects/hammer/sys/amd64/include/minidump.h#2 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/minidump_machdep.c#3 (text) ==== @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -277,6 +278,7 @@ mdhdr.kernbase = KERNBASE; mdhdr.dmapbase = DMAP_MIN_ADDRESS; mdhdr.dmapend = DMAP_MAX_ADDRESS; + strncpy(mdhdr.build_uuid, build_uuid, sizeof(mdhdr.build_uuid) - 1); mkdumpheader(&kdh, KERNELDUMP_AMD64_VERSION, dumpsize, di->blocksize); ==== //depot/projects/hammer/sys/amd64/include/minidump.h#2 (text) ==== @@ -41,6 +41,7 @@ uint64_t kernbase; uint64_t dmapbase; uint64_t dmapend; + char build_uuid[40]; }; #endif /* _MACHINE_MINIDUMP_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Dec 17 23:34:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 33E6D16A418; Mon, 17 Dec 2007 23:34:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9C58816A421 for ; Mon, 17 Dec 2007 23:34:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8142F13C442 for ; Mon, 17 Dec 2007 23:34:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBHNYMTm053186 for ; Mon, 17 Dec 2007 23:34:22 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBHNYMLj053177 for perforce@freebsd.org; Mon, 17 Dec 2007 23:34:22 GMT (envelope-from jb@freebsd.org) Date: Mon, 17 Dec 2007 23:34:22 GMT Message-Id: <200712172334.lBHNYMLj053177@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131138 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2007 23:34:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131138 Change 131138 by jb@jb_freebsd1 on 2007/12/17 23:33:35 Remove some includes. These need to be implemented in a different way. Affected files ... .. //depot/projects/dtrace/src/sys/i386/i386/trap.c#22 edit Differences ... ==== //depot/projects/dtrace/src/sys/i386/i386/trap.c#22 (text+ko) ==== @@ -102,9 +102,6 @@ #include #endif -#include -#include - /* * These are hooks which are initialised by the dtrace module * when it is loaded. This keeps the DTrace implementation From owner-p4-projects@FreeBSD.ORG Tue Dec 18 00:23:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE12916A41A; Tue, 18 Dec 2007 00:23:16 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4D5E516A417 for ; Tue, 18 Dec 2007 00:23:16 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4A7A613C448 for ; Tue, 18 Dec 2007 00:23:16 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI0NFeP068996 for ; Tue, 18 Dec 2007 00:23:15 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI0NFaP068989 for perforce@freebsd.org; Tue, 18 Dec 2007 00:23:15 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 00:23:15 GMT Message-Id: <200712180023.lBI0NFaP068989@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131142 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 00:23:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131142 Change 131142 by kmacy@entropy_kmacy_xen31 on 2007/12/18 00:22:22 Disable pointer sign warning, not sure why this is an issue now, but without this the kernel won't build Affected files ... .. //depot/projects/xen31/sys/conf/kern.mk#3 edit Differences ... ==== //depot/projects/xen31/sys/conf/kern.mk#3 (text+ko) ==== @@ -13,6 +13,9 @@ CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \ -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \ ${_wundef} ${_Wno_pointer_sign} -fformat-extensions +.if !defined(WITH_GCC3) +_Wno_pointer_sign=-Wno-pointer-sign +.endif .if !defined(NO_UNDEF) _wundef= -Wundef .endif From owner-p4-projects@FreeBSD.ORG Tue Dec 18 02:23:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D743C16A46E; Tue, 18 Dec 2007 02:23:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6D2DD16A419 for ; Tue, 18 Dec 2007 02:23:25 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6A5DD13C4D5 for ; Tue, 18 Dec 2007 02:23:25 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI2NPRW006311 for ; Tue, 18 Dec 2007 02:23:25 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI2NP1L006308 for perforce@freebsd.org; Tue, 18 Dec 2007 02:23:25 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 02:23:25 GMT Message-Id: <200712180223.lBI2NP1L006308@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131149 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 02:23:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131149 Change 131149 by kmacy@entropy_kmacy_xen31 on 2007/12/18 02:22:59 PADDR_OFFSET evidently means virtual offset from physical go figure Affected files ... .. //depot/projects/xen31/sys/i386/xen/locore.s#4 edit Differences ... ==== //depot/projects/xen31/sys/i386/xen/locore.s#4 (text+ko) ==== @@ -74,7 +74,7 @@ ELFNOTE(Xen, XEN_ELFNOTE_GUEST_VERSION, .asciz, "HEAD") ELFNOTE(Xen, XEN_ELFNOTE_XEN_VERSION, .asciz, "xen-3.0") ELFNOTE(Xen, XEN_ELFNOTE_VIRT_BASE, .long, KERNBASE) - ELFNOTE(Xen, XEN_ELFNOTE_PADDR_OFFSET, .long, 0) + ELFNOTE(Xen, XEN_ELFNOTE_PADDR_OFFSET, .long, KERNBASE) ELFNOTE(Xen, XEN_ELFNOTE_ENTRY, .long, btext) #ifdef notyet ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, .long, hypercall_page) From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:17:32 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26FEC16A468; Tue, 18 Dec 2007 05:17:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C4F5816A418 for ; Tue, 18 Dec 2007 05:17:31 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A7FE613C46A for ; Tue, 18 Dec 2007 05:17:31 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5HVPB045657 for ; Tue, 18 Dec 2007 05:17:31 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5HVJ8045654 for perforce@freebsd.org; Tue, 18 Dec 2007 05:17:31 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:17:31 GMT Message-Id: <200712180517.lBI5HVJ8045654@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131153 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:17:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=131153 Change 131153 by kmacy@entropy_kmacy_xen31 on 2007/12/18 05:16:35 add default XEN config Affected files ... .. //depot/projects/xen31/sys/i386/conf/XEN#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:17:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BF7D216A50C; Tue, 18 Dec 2007 05:17:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EC98D16A41B for ; Tue, 18 Dec 2007 05:17:31 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D03B513C46B for ; Tue, 18 Dec 2007 05:17:31 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5HVIo045663 for ; Tue, 18 Dec 2007 05:17:31 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5HV0L045660 for perforce@freebsd.org; Tue, 18 Dec 2007 05:17:31 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:17:31 GMT Message-Id: <200712180517.lBI5HV0L045660@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131154 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:17:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131154 Change 131154 by kmacy@entropy_kmacy_xen31 on 2007/12/18 05:17:30 missed adds Affected files ... .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/blkif.h#1 add .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/netif.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:18:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F9ED16A419; Tue, 18 Dec 2007 05:18:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3529A16A421 for ; Tue, 18 Dec 2007 05:18:33 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 18A0813C455 for ; Tue, 18 Dec 2007 05:18:33 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5IWbl045704 for ; Tue, 18 Dec 2007 05:18:32 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5IWKK045701 for perforce@freebsd.org; Tue, 18 Dec 2007 05:18:32 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:18:32 GMT Message-Id: <200712180518.lBI5IWKK045701@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131155 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:18:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131155 Change 131155 by kmacy@entropy_kmacy_xen31 on 2007/12/18 05:17:57 missed add Affected files ... .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/ring.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:20:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CFDD416A420; Tue, 18 Dec 2007 05:20:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7C12A16A468 for ; Tue, 18 Dec 2007 05:20:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 77FC813C467 for ; Tue, 18 Dec 2007 05:20:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5KZgk046113 for ; Tue, 18 Dec 2007 05:20:35 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5KZXF046110 for perforce@freebsd.org; Tue, 18 Dec 2007 05:20:35 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:20:35 GMT Message-Id: <200712180520.lBI5KZXF046110@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131156 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:20:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=131156 Change 131156 by kmacy@entropy_kmacy_xen31 on 2007/12/18 05:20:03 add xenbus and missed gnttab.c Affected files ... .. //depot/projects/xen31/sys/xen/gnttab.c#1 add .. //depot/projects/xen31/sys/xen/xenbus/init.txt#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_client.c#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.c#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.h#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_dev.c#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_probe.c#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:24:40 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 511F216A420; Tue, 18 Dec 2007 05:24:40 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 08BD116A41A for ; Tue, 18 Dec 2007 05:24:40 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E013B13C46B for ; Tue, 18 Dec 2007 05:24:39 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5OdEN047347 for ; Tue, 18 Dec 2007 05:24:39 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5Odot047344 for perforce@freebsd.org; Tue, 18 Dec 2007 05:24:39 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:24:39 GMT Message-Id: <200712180524.lBI5Odot047344@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131157 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:24:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131157 Change 131157 by kmacy@entropy_kmacy_xen31 on 2007/12/18 05:24:18 missed xenbus adds Affected files ... .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/xenbus.h#1 add .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/xs_wire.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Dec 18 05:27:44 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BEB016A418; Tue, 18 Dec 2007 05:27:44 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B8C9F16A468 for ; Tue, 18 Dec 2007 05:27:43 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B393013C45A for ; Tue, 18 Dec 2007 05:27:43 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBI5RhEc047485 for ; Tue, 18 Dec 2007 05:27:43 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBI5RhJW047482 for perforce@freebsd.org; Tue, 18 Dec 2007 05:27:43 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 18 Dec 2007 05:27:43 GMT Message-Id: <200712180527.lBI5RhJW047482@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131158 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 05:27:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131158 Change 131158 by kmacy@pandemonium:kmacy:xen31 on 2007/12/18 05:27:24 move xenbus into sys/xen Affected files ... .. //depot/projects/xen31/sys/conf/files#10 edit .. //depot/projects/xen31/sys/conf/files.i386#10 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.c#2 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_dev.c#2 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_probe.c#2 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#2 edit Differences ... ==== //depot/projects/xen31/sys/conf/files#10 (text+ko) ==== @@ -2112,6 +2112,12 @@ xen/gnttab.c optional xen xen/evtchn/evtchn.c optional xen xen/evtchn/evtchn_dev.c optional xen +xen/xenbus/xenbus_client.c optional xen +xen/xenbus/xenbus_comms.c optional xen +xen/xenbus/xenbus_dev.c optional xen +xen/xenbus/xenbus_probe.c optional xen +xen/xenbus/xenbus_xs.c optional xen + # gnu/fs/xfs/xfs_alloc.c optional xfs \ compile-with "${NORMAL_C} -I$S/gnu/fs/xfs/FreeBSD -I$S/gnu/fs/xfs/FreeBSD/support -I$S/gnu/fs/xfs" \ ==== //depot/projects/xen31/sys/conf/files.i386#10 (text+ko) ==== @@ -251,11 +251,6 @@ dev/syscons/scvtb.c optional sc dev/uart/uart_cpu_i386.c optional uart dev/acpica/acpi_if.m standard -dev/xen/xenbus/xenbus_client.c optional xen -dev/xen/xenbus/xenbus_comms.c optional xen -dev/xen/xenbus/xenbus_dev.c optional xen -dev/xen/xenbus/xenbus_probe.c optional xen -dev/xen/xenbus/xenbus_xs.c optional xen dev/wpi/if_wpi.c optional wpi i386/acpica/OsdEnvironment.c optional acpi i386/acpica/acpi_machdep.c optional acpi ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include #include #include -#include +#include static int xenbus_irq; ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_dev.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include -#include +#include #include #include ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_probe.c#2 (text+ko) ==== @@ -54,7 +54,7 @@ #include #include -#include +#include #define EXPORT_SYMBOL(x) #define kmalloc(size, unused) malloc(size, M_DEVBUF, M_WAITOK) ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#2 (text+ko) ==== @@ -47,7 +47,7 @@ #include #include -#include +#include #define EXPORT_SYMBOL(x) From owner-p4-projects@FreeBSD.ORG Tue Dec 18 20:33:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C68416A469; Tue, 18 Dec 2007 20:33:43 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C220A16A418 for ; Tue, 18 Dec 2007 20:33:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9FB4A13C4CE for ; Tue, 18 Dec 2007 20:33:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBIKXgk3035723 for ; Tue, 18 Dec 2007 20:33:42 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBIKXg5f035720 for perforce@freebsd.org; Tue, 18 Dec 2007 20:33:42 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 18 Dec 2007 20:33:42 GMT Message-Id: <200712182033.lBIKXg5f035720@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131176 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 20:33:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131176 Change 131176 by hselasky@hselasky_laptop001 on 2007/12/18 20:33:37 u Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_pio.c#5 edit .. //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#2 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_pio.c#5 (text) ==== @@ -349,6 +349,28 @@ PIO[PIO_CODR / 4] = data_mask; } +uint8_t +at91_pio_gpio_get(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + data_mask &= PIO[PIO_PDSR / 4]; + + return (data_mask ? 1 : 0); +} + +void +at91_pio_gpio_set_deglitch(uint32_t pio, uint32_t data_mask, int use_deglitch) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + if (use_deglitch) + PIO[PIO_IFER / 4] = data_mask; + else + PIO[PIO_IFDR / 4] = data_mask; + return; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#2 (text+ko) ==== @@ -35,5 +35,8 @@ int use_pullup); void at91_pio_gpio_set(uint32_t pio, uint32_t data_mask); void at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask); +uint8_t at91_pio_gpio_get(uint32_t pio, uint32_t data_mask); +void at91_pio_gpio_set_deglitch(uint32_t pio, uint32_t data_mask, + int use_deglitch); #endif /* ARM_AT91_AT91_PIOVAR_H */ From owner-p4-projects@FreeBSD.ORG Tue Dec 18 20:37:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A8F9516A476; Tue, 18 Dec 2007 20:37:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5788216A474 for ; Tue, 18 Dec 2007 20:37:47 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1CAED13C503 for ; Tue, 18 Dec 2007 20:37:47 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBIKbl0P035917 for ; Tue, 18 Dec 2007 20:37:47 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBIKblg9035914 for perforce@freebsd.org; Tue, 18 Dec 2007 20:37:47 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 18 Dec 2007 20:37:47 GMT Message-Id: <200712182037.lBIKblg9035914@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131177 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 20:37:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=131177 Change 131177 by hselasky@hselasky_laptop001 on 2007/12/18 20:36:53 Oops "p4 diff -du" became "p4 submit -du" in my last commit. The functions that were added in change 131176 are needed to support the AT91 USB Device Controller Interface. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_pio.c#6 edit .. //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#3 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_pio.c#6 (text) ==== ==== //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#3 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Dec 18 21:38:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 51E8616A4A5; Tue, 18 Dec 2007 21:38:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D17F916A421 for ; Tue, 18 Dec 2007 21:38:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AF46B13C459 for ; Tue, 18 Dec 2007 21:38:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBILcGlJ055079 for ; Tue, 18 Dec 2007 21:38:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBILcGrZ055075 for perforce@freebsd.org; Tue, 18 Dec 2007 21:38:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 18 Dec 2007 21:38:16 GMT Message-Id: <200712182138.lBILcGrZ055075@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131184 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 21:38:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131184 Change 131184 by hselasky@hselasky_laptop001 on 2007/12/18 21:37:17 More patches to support the AT91 USB Device Controller Interface. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91.c#5 edit .. //depot/projects/usb/src/sys/arm/at91/at91_pio.c#7 edit .. //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#4 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91.c#5 (text) ==== @@ -301,7 +301,7 @@ { "at91_udp", 0, AT91RM92_BASE + AT91RM92_UDP_BASE, AT91RM92_UDP_SIZE, - AT91RM92_IRQ_UDP + AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOC }, { "at91_mci", 0, ==== //depot/projects/usb/src/sys/arm/at91/at91_pio.c#7 (text) ==== @@ -371,6 +371,19 @@ return; } +void +at91_pio_gpio_set_interrupt(uint32_t pio, uint32_t data_mask, + int enable_interrupt) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + if (enable_interrupt) + PIO[PIO_IER / 4] = data_mask; + else + PIO[PIO_IDR / 4] = data_mask; + return; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#4 (text+ko) ==== @@ -38,5 +38,7 @@ uint8_t at91_pio_gpio_get(uint32_t pio, uint32_t data_mask); void at91_pio_gpio_set_deglitch(uint32_t pio, uint32_t data_mask, int use_deglitch); +void at91_pio_gpio_set_interrupt(uint32_t pio, uint32_t data_mask, + int enable_interrupt); #endif /* ARM_AT91_AT91_PIOVAR_H */ From owner-p4-projects@FreeBSD.ORG Tue Dec 18 22:14:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EDEC116A421; Tue, 18 Dec 2007 22:14:27 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6C70916A417 for ; Tue, 18 Dec 2007 22:14:27 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 46EAA13C448 for ; Tue, 18 Dec 2007 22:14:27 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBIMEReb062115 for ; Tue, 18 Dec 2007 22:14:27 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBIMECx6062112 for perforce@freebsd.org; Tue, 18 Dec 2007 22:14:12 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 18 Dec 2007 22:14:12 GMT Message-Id: <200712182214.lBIMECx6062112@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 131185 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2007 22:14:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131185 Change 131185 by rwatson@rwatson_cinnamon on 2007/12/18 22:14:10 Integ zcopybpf. Affected files ... .. //depot/projects/zcopybpf/src/contrib/tcpdump/tcpdump.c#3 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/busdma_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/exception.S#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/genassym.c#5 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/identcpu.c#4 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/intr_machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/machdep.c#7 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/pmap.c#10 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/prof_machdep.c#3 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/amd64/amd64/trap.c#5 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/vm_machdep.c#4 integrate .. //depot/projects/zcopybpf/src/sys/amd64/conf/GENERIC#10 integrate .. //depot/projects/zcopybpf/src/sys/amd64/conf/NOTES#8 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/pci_cfgreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/specialreg.h#5 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/amd64/pci/pci_cfgreg.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/busdma_machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/cpufunc.c#6 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/nexus_io.c#2 delete .. //depot/projects/zcopybpf/src/sys/arm/arm/nexus_io_asm.S#2 delete .. //depot/projects/zcopybpf/src/sys/arm/arm/pmap.c#8 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/arm/arm/trap.c#5 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/vm_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91.c#4 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/AVILA#5 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/BWCT#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/CRB#3 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/EP80219#3 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/HL200#1 branch .. //depot/projects/zcopybpf/src/sys/arm/conf/IQ31244#3 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/KB920X#4 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/SIMICS#3 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/include/asmacros.h#3 integrate .. //depot/projects/zcopybpf/src/sys/arm/include/atomic.h#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/arm/sa11x0/files.sa11x0#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/i386/cdboot/cdboot.s#3 integrate .. //depot/projects/zcopybpf/src/sys/boot/i386/gptboot/gptldr.S#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/i386/libi386/biosdisk.c#3 integrate .. //depot/projects/zcopybpf/src/sys/boot/i386/pmbr/pmbr.s#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/pc98/cdboot/cdboot.s#3 integrate .. //depot/projects/zcopybpf/src/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/zcopybpf/src/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/zcopybpf/src/sys/cam/cam_xpt.c#8 integrate .. //depot/projects/zcopybpf/src/sys/cam/scsi/scsi_all.h#3 integrate .. //depot/projects/zcopybpf/src/sys/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_misc.c#5 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_proto.h#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_syscall.h#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_syscalls.c#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/freebsd32_sysent.c#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/freebsd32/syscalls.master#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/linprocfs/linprocfs.c#9 integrate .. //depot/projects/zcopybpf/src/sys/compat/ndis/ndis_var.h#3 integrate .. //depot/projects/zcopybpf/src/sys/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/ndis/subr_ndis.c#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/ndis/subr_ntoskrnl.c#5 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/rpc/xdr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/atomic.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/bitmap.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/cpupart.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/cpuvar.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/cyclic.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/elf.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/kmem.h#3 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/mman.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/modctl.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/objfs.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/param.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/pcpu.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/proc.h#4 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/stat.h#1 branch .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/time.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/opensolaris/sys/types.h#3 integrate .. //depot/projects/zcopybpf/src/sys/conf/Makefile.amd64#4 integrate .. //depot/projects/zcopybpf/src/sys/conf/NOTES#12 integrate .. //depot/projects/zcopybpf/src/sys/conf/files#14 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.amd64#7 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.arm#4 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.i386#7 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.ia64#5 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.pc98#5 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.powerpc#6 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.sparc64#4 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.sun4v#4 integrate .. //depot/projects/zcopybpf/src/sys/conf/kmod.mk#6 integrate .. //depot/projects/zcopybpf/src/sys/conf/options#10 integrate .. //depot/projects/zcopybpf/src/sys/conf/options.amd64#3 integrate .. //depot/projects/zcopybpf/src/sys/conf/options.i386#3 integrate .. //depot/projects/zcopybpf/src/sys/conf/options.powerpc#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/ipfilter/netinet/fil.c#4 integrate .. //depot/projects/zcopybpf/src/sys/contrib/ipfilter/netinet/ip_auth.c#4 integrate .. //depot/projects/zcopybpf/src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#4 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/common/avl/avl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/common/nvpair/nvpair.c#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/arc.c#6 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/zil.c#3 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/fs/zfs/zio.c#4 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/rpc/xdr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/rpc/xdr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/sys/byteorder.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/sys/isa_defs.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/sys/procset.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/sys/sysmacros.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/opensolaris/uts/common/sys/vmem.h#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/pf/net/pf.c#5 integrate .. //depot/projects/zcopybpf/src/sys/contrib/pf/net/pf_if.c#4 integrate .. //depot/projects/zcopybpf/src/sys/contrib/pf/net/pf_ioctl.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac_cam.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac_debug.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac_pci.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/acpica/acpi_battery.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/agp/agp.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_ali.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_amd.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_amd64.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_ati.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_i810.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_if.m#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_intel.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_nvidia.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_sis.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agp_via.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agppriv.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agpreg.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/agp/agpvar.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/amr/amr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/amr/amr_cam.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/an/if_an.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/an/if_anreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/arcmsr/arcmsr.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/arcmsr/arcmsr.h#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/asmc/asmc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-all.h#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-chipset.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-disk.c#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-dma.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-lowlevel.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-pci.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-pci.h#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-cd.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-fd.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-tape.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/bce/if_bce.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/bfe/if_bfe.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/bge/if_bge.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_adapter.h#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_config.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_main.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_offload.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_offload.h#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_osdep.h#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/cxgb_sge.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/sys/mvec.h#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/sys/uipc_mvec.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/dc/if_dc.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/drm/drmP.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/drm/drm_agpsupport.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_80003es2lan.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_80003es2lan.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82540.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82541.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82541.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82542.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82543.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82543.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82571.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82571.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82575.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_82575.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_api.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_api.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_defines.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_hw.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_ich8lan.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_ich8lan.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_mac.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_mac.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_manage.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_manage.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_nvm.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_nvm.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_osdep.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_phy.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_phy.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/e1000_regs.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/if_em.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/if_em.h#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/esp/esp_sbus.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/array.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/him.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/list.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_logging.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_mod.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_piv.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_x86.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ichsmb/ichsmb_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ichwd/ichwd.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/ichwd/ichwd.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/if_ndis/if_ndis.c#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/if_ndis/if_ndis_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/if_ndis/if_ndisvar.h#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/ipw/if_ipw.c#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/iwi/if_iwi.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/lge/if_lge.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/e1000phy.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/rlphy.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/msk/if_msk.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/msk/if_mskreg.h#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/nfe/if_nfe.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/nge/if_nge.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/nve/if_nve.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/pci/pci.c#10 integrate .. //depot/projects/zcopybpf/src/sys/dev/random/yarrow.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/re/if_re.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/si/si_pci.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/sio/sio.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/sio/sio_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sio/sio_puc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sk/if_sk.c#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/snp/snp.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/hda/hdac.c#10 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/ich.c#8 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/maestro.c#6 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/channel.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/stge/if_stge.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/ti/if_ti.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/txp/if_txp.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/ehci_pci.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/if_rum.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/if_zyd.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uhci_pci.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/umass.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/usb_quirks.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/usbdevs#12 integrate .. //depot/projects/zcopybpf/src/sys/dev/utopia/utopia.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/vge/if_vge.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/vx/if_vx_pci.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/wpi/if_wpi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/wpi/if_wpireg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate .. //depot/projects/zcopybpf/src/sys/fs/ntfs/ntfs_ihash.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/ntfs/ntfs_vfsops.c#6 integrate .. //depot/projects/zcopybpf/src/sys/fs/tmpfs/tmpfs.h#3 integrate .. //depot/projects/zcopybpf/src/sys/fs/tmpfs/tmpfs_subr.c#3 integrate .. //depot/projects/zcopybpf/src/sys/fs/tmpfs/tmpfs_vfsops.c#4 integrate .. //depot/projects/zcopybpf/src/sys/fs/tmpfs/tmpfs_vnops.c#3 integrate .. //depot/projects/zcopybpf/src/sys/fs/udf/udf_vfsops.c#5 integrate .. //depot/projects/zcopybpf/src/sys/geom/eli/g_eli_crypto.c#4 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_dev.c#5 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_io.c#5 integrate .. //depot/projects/zcopybpf/src/sys/geom/label/g_label_reiserfs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/part/g_part.c#6 integrate .. //depot/projects/zcopybpf/src/sys/geom/part/g_part.h#5 integrate .. //depot/projects/zcopybpf/src/sys/geom/part/g_part_bsd.c#1 branch .. //depot/projects/zcopybpf/src/sys/i386/bios/apm.c#3 integrate .. //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#8 integrate .. //depot/projects/zcopybpf/src/sys/i386/conf/NOTES#8 integrate .. //depot/projects/zcopybpf/src/sys/i386/conf/PAE#7 integrate .. //depot/projects/zcopybpf/src/sys/i386/conf/XBOX#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/busdma_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/exception.s#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/genassym.c#5 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/intr_machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/locore.s#3 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/machdep.c#7 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/mp_machdep.c#8 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/pmap.c#10 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/i386/i386/trap.c#6 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/vm_machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/i386/include/pmap.h#4 integrate .. //depot/projects/zcopybpf/src/sys/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/i386/isa/prof_machdep.c#3 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux_machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/i386/pci/pci_cfgreg.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/conf/DEFAULTS#4 integrate .. //depot/projects/zcopybpf/src/sys/ia64/conf/GENERIC#6 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/busdma_machdep.c#4 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/db_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/interrupt.c#5 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/pmap.c#6 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/ia64/ia64/trap.c#4 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/vm_machdep.c#3 integrate .. //depot/projects/zcopybpf/src/sys/ia64/include/atomic.h#3 integrate .. //depot/projects/zcopybpf/src/sys/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/Makefile#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/imgact_elf.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/init_main.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_clock.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_conf.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_descrip.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_event.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_exec.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_fork.c#9 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_kse.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_kthread.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_ktrace.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_linker.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_lock.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_mbuf.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_mib.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_module.c#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_mutex.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_pmc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_proc.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_resource.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_rmlock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_rwlock.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_sig.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_switch.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_sx.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_synch.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_sysctl.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_thr.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_thread.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_timeout.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_umtx.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/linker_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/p1003_1b.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/sched_ule.c#10 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_bus.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_lock.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_pcpu.c#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_sleepqueue.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_stack.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_trap.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_turnstile.c#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_witness.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/sys_generic.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/sys_pipe.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/tty_pty.c#4 integrate .. //depot/projects/zcopybpf/src/sys/kern/uipc_sockbuf.c#6 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_bio.c#8 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_cache.c#5 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_mount.c#10 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_subr.c#8 integrate .. //depot/projects/zcopybpf/src/sys/modules/Makefile#12 integrate .. //depot/projects/zcopybpf/src/sys/modules/agp/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/amr/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/cxgb/Makefile#6 integrate .. //depot/projects/zcopybpf/src/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/zfs/Makefile#5 integrate .. //depot/projects/zcopybpf/src/sys/net/bridgestp.c#6 integrate .. //depot/projects/zcopybpf/src/sys/net/bridgestp.h#4 integrate .. //depot/projects/zcopybpf/src/sys/net/ieee8023ad_lacp.c#5 integrate .. //depot/projects/zcopybpf/src/sys/net/if.h#4 integrate .. //depot/projects/zcopybpf/src/sys/net/if_bridge.c#9 integrate .. //depot/projects/zcopybpf/src/sys/net/if_enc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_lagg.c#7 integrate .. //depot/projects/zcopybpf/src/sys/net/if_var.h#6 integrate .. //depot/projects/zcopybpf/src/sys/net/pfil.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/pfil.h#3 integrate .. //depot/projects/zcopybpf/src/sys/net/route.c#4 integrate .. //depot/projects/zcopybpf/src/sys/net/route.h#2 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211.c#5 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211.h#5 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_ht.c#5 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_node.c#6 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_output.c#6 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_proto.c#6 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_radiotap.h#4 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_scan_sta.c#5 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_var.h#6 integrate .. //depot/projects/zcopybpf/src/sys/netatalk/aarp.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netatalk/ddp_output.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/netgraph.h#4 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_base.c#6 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_cisco.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_l2tp.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet/if_ether.c#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet/if_ether.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in_pcb.h#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_dummynet.c#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_fw2.c#10 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_input.c#9 integrate .. //depot/projects/zcopybpf/src/sys/netinet/libalias/alias_util.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp.h#8 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_bsd_addr.c#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_output.c#11 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_structs.h#11 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_usrreq.c#11 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctputil.c#12 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp.h#6 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/zcopybpf/src/sys/netinet/tcp_output.c#10 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_subr.c#11 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_syncache.c#11 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_syncache.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_var.h#10 integrate .. //depot/projects/zcopybpf/src/sys/netinet/toedev.h#1 branch .. //depot/projects/zcopybpf/src/sys/netinet6/dest6.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/frag6.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/icmp6.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6.h#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_cksum.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_gif.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_gif.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_ifattach.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_pcb.c#5 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_pcb.h#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_proto.c#5 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_src.c#5 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_var.h#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_ecn.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_forward.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_id.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_input.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_ipsec.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_ipsec.h#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_mroute.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_mroute.h#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_output.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_var.h#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6protosw.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/mld6.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/mld6_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/nd6.c#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/nd6.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/nd6_nbr.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/nd6_rtr.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/pim6.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/pim6_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/raw_ip6.c#5 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/raw_ip6.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/route6.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/scope6.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/scope6_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/sctp6_usrreq.c#9 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/sctp6_var.h#6 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/tcp6_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/udp6_usrreq.c#7 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/udp6_var.h#3 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/ipsec.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/ipsec.h#3 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/ipsec_input.c#5 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/ipsec_output.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/keysock.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/xform.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netipsec/xform_ipip.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netncp/ncp_sock.c#4 integrate .. //depot/projects/zcopybpf/src/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netsmb/smb_trantcp.c#3 integrate .. //depot/projects/zcopybpf/src/sys/nfsclient/nfs_vnops.c#6 integrate .. //depot/projects/zcopybpf/src/sys/pc98/conf/GENERIC#8 integrate .. //depot/projects/zcopybpf/src/sys/pc98/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/pc98/pc98/machdep.c#6 integrate .. //depot/projects/zcopybpf/src/sys/pci/agp.c#4 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_ali.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_amd.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_amd64.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_ati.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_i810.c#5 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_if.m#2 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_intel.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_nvidia.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_sis.c#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agp_via.c#4 delete .. //depot/projects/zcopybpf/src/sys/pci/agppriv.h#4 delete .. //depot/projects/zcopybpf/src/sys/pci/agpreg.h#3 delete .. //depot/projects/zcopybpf/src/sys/pci/agpvar.h#2 delete .. //depot/projects/zcopybpf/src/sys/pci/if_rl.c#4 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_rlreg.h#5 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_sf.c#3 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_ste.c#5 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_vr.c#5 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_xl.c#5 integrate .. //depot/projects/zcopybpf/src/sys/pci/nfsmb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/xrpu.c#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/conf/GENERIC#8 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/conf/NOTES#4 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/atomic.h#3 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/fpu.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/md_var.h#4 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/clock.c#3 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/interrupt.c#3 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/intr_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/locore.S#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/machdep.c#5 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/mmu_oea.c#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/nexus.c#5 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/pmap_dispatch.c#3 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/swtch.S#3 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/trap.c#5 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/uio_machdep.c#3 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/uma_machdep.c#3 delete .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/vm_machdep.c#4 delete .. //depot/projects/zcopybpf/src/sys/security/audit/audit.c#6 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_posix_sem.c#4 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/conf/DEFAULTS#3 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/conf/GENERIC#6 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/sparc64/pci/ofw_pcibus.c#4 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/pci/psycho.c#7 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/pci/psychovar.h#4 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/intr_machdep.c#5 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/pmap.c#6 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/vm_machdep.c#4 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/conf/GENERIC#6 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/include/pcpu.h#4 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/include/pmc_mdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/include/stack.h#1 branch .. //depot/projects/zcopybpf/src/sys/sun4v/include/stdarg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/pmap.c#4 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/stack_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/trap.c#3 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/vm_machdep.c#4 integrate .. //depot/projects/zcopybpf/src/sys/sys/_elf_solaris.h#2 delete .. //depot/projects/zcopybpf/src/sys/sys/_lock.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/ata.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/callout.h#4 integrate .. //depot/projects/zcopybpf/src/sys/sys/cdefs.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/disklabel.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/elf.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/elf_common.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/eventhandler.h#4 integrate .. //depot/projects/zcopybpf/src/sys/sys/kernel.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/kerneldump.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/linker.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/lock.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/lock_profile.h#7 integrate .. //depot/projects/zcopybpf/src/sys/sys/lockmgr.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/malloc.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/mutex.h#7 integrate .. //depot/projects/zcopybpf/src/sys/sys/param.h#10 integrate .. //depot/projects/zcopybpf/src/sys/sys/pcpu.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/pmc.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/pmckern.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/pmclog.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/proc.h#10 integrate .. //depot/projects/zcopybpf/src/sys/sys/resource.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/selinfo.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/signal.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/socket.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/socketvar.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/stack.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/stat.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/sx.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/sysctl.h#5 integrate .. //depot/projects/zcopybpf/src/sys/sys/systm.h#7 integrate .. //depot/projects/zcopybpf/src/sys/sys/time.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/tty.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/types.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/ucred.h#4 integrate .. //depot/projects/zcopybpf/src/sys/sys/umtx.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/user.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/xrpuio.h#2 delete .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_alloc.c#6 integrate .. //depot/projects/zcopybpf/src/sys/vm/pmap.h#3 integrate .. //depot/projects/zcopybpf/src/sys/vm/redzone.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_contig.c#6 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_object.c#7 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_page.c#9 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_pageout.c#5 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_pageout.h#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vnode_pager.c#5 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/Makefile#4 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/inet.c#6 integrate Differences ... ==== //depot/projects/zcopybpf/src/contrib/tcpdump/tcpdump.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ "@(#) $Header: /tcpdump/master/tcpdump/tcpdump.c,v 1.253.2.13 2007/09/12 19:48:51 guy Exp $ (LBL)"; #endif -/* $FreeBSD: src/contrib/tcpdump/tcpdump.c,v 1.12 2007/10/16 02:31:48 mlaier Exp $ */ +/* $FreeBSD: src/contrib/tcpdump/tcpdump.c,v 1.13 2007/11/21 12:52:26 mlaier Exp $ */ /* * tcpdump - monitor tcp/ip traffic on an ethernet. @@ -1132,6 +1132,7 @@ if (pcap_stats(pd, &stat) < 0) { (void)fprintf(stderr, "pcap_stats: %s\n", pcap_geterr(pd)); + infoprint = 0; return; } ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/busdma_machdep.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.83 2007/06/17 04:21:58 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.84 2007/11/27 17:28:11 jhb Exp $"); #include #include @@ -580,7 +580,6 @@ bus_addr_t curaddr, lastaddr, baddr, bmask; vm_offset_t vaddr; bus_addr_t paddr; - int needbounce = 0; int seg; if (map == NULL) @@ -604,10 +603,8 @@ while (vaddr < vendaddr) { paddr = pmap_kextract(vaddr); - if (run_filter(dmat, paddr) != 0) { - needbounce = 1; + if (run_filter(dmat, paddr) != 0) map->pagesneeded++; - } vaddr += PAGE_SIZE; } CTR1(KTR_BUSDMA, "pagesneeded= %d\n", map->pagesneeded); @@ -679,7 +676,7 @@ segs[seg].ds_len = sgsize; first = 0; } else { - if (needbounce == 0 && curaddr == lastaddr && + if (curaddr == lastaddr && (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && (dmat->boundary == 0 || (segs[seg].ds_addr & bmask) == (curaddr & bmask))) ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/db_trace.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.80 2006/11/17 20:27:00 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.82 2007/12/02 20:40:30 rwatson Exp $"); #include #include @@ -38,6 +38,7 @@ #include #include #include +#include #include #include @@ -177,18 +178,6 @@ return (1); } -/* - * Stack trace. - */ -#define INKERNEL(va) (((va) >= DMAP_MIN_ADDRESS && (va) < DMAP_MAX_ADDRESS) \ - || ((va) >= KERNBASE && (va) < VM_MAX_KERNEL_ADDRESS)) - -struct amd64_frame { - struct amd64_frame *f_frame; - long f_retaddr; - long f_arg0; -}; - #define NORMAL 0 #define TRAP 1 #define INTERRUPT 2 @@ -317,7 +306,8 @@ if (name != NULL) { if (strcmp(name, "calltrap") == 0 || strcmp(name, "fork_trampoline") == 0 || - strcmp(name, "nmi_calltrap") == 0) + strcmp(name, "nmi_calltrap") == 0 || + strcmp(name, "Xdblfault") == 0) frame_type = TRAP; else if (strncmp(name, "Xatpic_intr", 11) == 0 || strncmp(name, "Xapic_isr", 9) == 0 || @@ -504,32 +494,6 @@ ctx->pcb_rip, count)); } -void -stack_save(struct stack *st) -{ - struct amd64_frame *frame; - vm_offset_t callpc; - register_t rbp; - - stack_zero(st); - __asm __volatile("movq %%rbp,%0" : "=r" (rbp)); - frame = (struct amd64_frame *)rbp; - while (1) { - if (!INKERNEL((long)frame)) - break; - callpc = frame->f_retaddr; - if (!INKERNEL(callpc)) - break; - if (stack_put(st, callpc) == -1) - break; - if (frame->f_frame <= frame || - (vm_offset_t)frame->f_frame >= - (vm_offset_t)rbp + KSTACK_PAGES * PAGE_SIZE) - break; - frame = frame->f_frame; - } -} - int amd64_set_watch(watchnum, watchaddr, size, access, d) int watchnum; ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/exception.S#2 (text+ko) ==== @@ -1,8 +1,12 @@ /*- * Copyright (c) 1989, 1990 William F. Jolitz. * Copyright (c) 1990 The Regents of the University of California. + * Copyright (c) 2007 The FreeBSD Foundation * All rights reserved. * + * Portions of this software were developed by A. Joseph Koshy under + * sponsorship from the FreeBSD Foundation and Google, Inc. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -27,11 +31,12 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.129 2006/12/23 03:30:50 davidxu Exp $ + * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.131 2007/12/07 08:20:15 jkoshy Exp $ */ #include "opt_atpic.h" #include "opt_compat.h" +#include "opt_hwpmc_hooks.h" #include #include @@ -40,6 +45,9 @@ #include "assym.s" .text +#ifdef HWPMC_HOOKS + ENTRY(start_exceptions) +#endif /*****************************************************************************/ /* Trap handling */ @@ -187,10 +195,28 @@ IDTVEC(dblfault) subq $TF_ERR,%rsp movq $T_DOUBLEFLT,TF_TRAPNO(%rsp) + movq $0,TF_ADDR(%rsp) + movq $0,TF_ERR(%rsp) + movq %rdi,TF_RDI(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) + movq %rax,TF_RAX(%rsp) + movq %rbx,TF_RBX(%rsp) + movq %rbp,TF_RBP(%rsp) + movq %r10,TF_R10(%rsp) + movq %r11,TF_R11(%rsp) + movq %r12,TF_R12(%rsp) + movq %r13,TF_R13(%rsp) + movq %r14,TF_R14(%rsp) + movq %r15,TF_R15(%rsp) testb $SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */ jz 1f /* already running with kernel GS.base */ swapgs -1: call dblfault_handler +1: movq %rsp, %rdi + call dblfault_handler 2: hlt jmp 2b @@ -330,6 +356,9 @@ * execute the NMI handler with interrupts disabled to prevent a * nested interrupt from executing an 'iretq' instruction and * inadvertently taking the processor out of NMI mode. + * + * Third, the NMI handler runs on its own stack (tss_ist1), shared + * with the double fault handler. */ IDTVEC(nmi) @@ -368,6 +397,61 @@ movq %rsp, %rdi call trap MEXITCOUNT +#ifdef HWPMC_HOOKS + /* + * Check if the current trap was from user mode and if so + * whether the current thread needs a user call chain to be + * captured. We are still in NMI mode at this point. + */ + testb $SEL_RPL_MASK,TF_CS(%rsp) + jz nocallchain + movq PCPU(CURTHREAD),%rax /* curthread present? */ + orq %rax,%rax + jz nocallchain + testl $TDP_CALLCHAIN,TD_PFLAGS(%rax) /* flagged for capture? */ + jz nocallchain + /* + * A user callchain is to be captured, so: + * - Move execution to the regular kernel stack, to allow for + * nested NMI interrupts. + * - Take the processor out of "NMI" mode by faking an "iret". + * - Enable interrupts, so that copyin() can work. + */ + movq %rsp,%rsi /* source stack pointer */ + movq $TF_SIZE,%rcx + movq PCPU(RSP0),%rbx + subq %rcx,%rbx + movq %rbx,%rdi /* destination stack pointer */ + + shrq $3,%rcx /* trap frame size in long words */ + cld + rep + movsq /* copy trapframe */ + + movl %ss,%eax + pushq %rax /* tf_ss */ + pushq %rbx /* tf_rsp (on kernel stack) */ + pushfq /* tf_rflags */ + movl %cs,%eax + pushq %rax /* tf_cs */ + pushq $outofnmi /* tf_rip */ + iretq +outofnmi: + /* + * At this point the processor has exited NMI mode and is running + * with interrupts turned off on the normal kernel stack. + * We turn interrupts back on, and take the usual 'doreti' exit + * path. + * + * If a pending NMI gets recognized at or after this point, it + * will cause a kernel callchain to be traced. Since this path + * is only taken for NMI interrupts from user space, our `swapgs' + * state is correct for taking the doreti path. + */ + sti + jmp doreti +nocallchain: +#endif testl %ebx,%ebx jz nmi_restoreregs swapgs @@ -538,3 +622,6 @@ movq $0,TF_ADDR(%rsp) FAKE_MCOUNT(TF_RIP(%rsp)) jmp calltrap +#ifdef HWPMC_HOOKS + ENTRY(end_exceptions) +#endif ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/genassym.c#5 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.165 2007/09/17 21:55:28 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.166 2007/11/23 03:03:29 jkoshy Exp $"); #include "opt_compat.h" #include "opt_kstack_pages.h" @@ -78,12 +78,15 @@ ASSYM(TD_LOCK, offsetof(struct thread, td_lock)); ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); +ASSYM(TD_PFLAGS, offsetof(struct thread, td_pflags)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); ASSYM(TD_TID, offsetof(struct thread, td_tid)); ASSYM(TDF_ASTPENDING, TDF_ASTPENDING); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 00:24:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C6B5216A41B; Wed, 19 Dec 2007 00:24:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6EEED16A421 for ; Wed, 19 Dec 2007 00:24:51 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4FF6F13C47E for ; Wed, 19 Dec 2007 00:24:51 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ0Op44085536 for ; Wed, 19 Dec 2007 00:24:51 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ0OiLk085533 for perforce@freebsd.org; Wed, 19 Dec 2007 00:24:44 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 19 Dec 2007 00:24:44 GMT Message-Id: <200712190024.lBJ0OiLk085533@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131187 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 00:24:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131187 Change 131187 by kmacy@kmacy:storage:toehead on 2007/12/19 00:24:04 IFC 131186 Affected files ... .. //depot/projects/toehead/Makefile#3 integrate .. //depot/projects/toehead/bin/mv/mv.c#2 integrate .. //depot/projects/toehead/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/toehead/contrib/gdtoa/hexnan.c#2 integrate .. //depot/projects/toehead/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/toehead/contrib/gdtoa/strtof.c#2 integrate .. //depot/projects/toehead/contrib/gdtoa/strtorQ.c#2 integrate .. //depot/projects/toehead/contrib/gdtoa/strtorx.c#2 integrate .. //depot/projects/toehead/etc/rc.d/ldconfig#2 integrate .. //depot/projects/toehead/games/fortune/datfiles/fortunes#2 integrate .. //depot/projects/toehead/games/fortune/datfiles/fortunes-o.real#2 integrate .. //depot/projects/toehead/include/complex.h#2 integrate .. //depot/projects/toehead/include/pthread_np.h#2 integrate .. //depot/projects/toehead/lib/libc/Versions.def#2 integrate .. //depot/projects/toehead/lib/libc/amd64/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/toehead/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/toehead/lib/libc/gdtoa/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/i386/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/toehead/lib/libc/ia64/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/toehead/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/toehead/lib/libc/sparc64/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/toehead/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/toehead/lib/libc/stdlib/grantpt.c#2 integrate .. //depot/projects/toehead/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/toehead/lib/libc/stdlib/strtod.3#2 integrate .. //depot/projects/toehead/lib/libfetch/Makefile#2 integrate .. //depot/projects/toehead/lib/libfetch/common.c#2 integrate .. //depot/projects/toehead/lib/libfetch/common.h#2 integrate .. //depot/projects/toehead/lib/libfetch/fetch.3#2 integrate .. //depot/projects/toehead/lib/libfetch/fetch.c#2 integrate .. //depot/projects/toehead/lib/libfetch/file.c#2 integrate .. //depot/projects/toehead/lib/libfetch/ftp.c#2 integrate .. //depot/projects/toehead/lib/libfetch/http.c#2 integrate .. //depot/projects/toehead/lib/libkse/sys/thr_error.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_accept.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_aio_suspend.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_atfork.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_destroy.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_get_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getdetachstate.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getguardsize.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getinheritsched.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getschedparam.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getschedpolicy.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getscope.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getstack.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getstackaddr.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_getstacksize.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_init.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setdetachstate.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setguardsize.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setinheritsched.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setschedparam.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setschedpolicy.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setscope.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setstack.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setstackaddr.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_attr_setstacksize.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_barrier.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_barrierattr.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_cancel.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_clean.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_close.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_concurrency.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_cond.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_condattr_destroy.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_condattr_init.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_connect.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_creat.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_create.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_detach.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_equal.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_execve.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_exit.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_fcntl.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_fork.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_fsync.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_getschedparam.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_info.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_init.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_join.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_kill.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_main_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mattr_init.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mattr_kind_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_msync.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_multi_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mutex.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mutex_prioceiling.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mutex_protocol.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_mutexattr_destroy.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_nanosleep.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_once.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_open.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_pause.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_poll.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_private.h#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_pselect.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_pspinlock.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_raise.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_read.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_readv.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_resume_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_rwlock.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_rwlockattr.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_select.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_self.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_setprio.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_setschedparam.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigaction.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigaltstack.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigmask.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigpending.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigprocmask.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigsuspend.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sigwait.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_single_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_sleep.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_spec.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_spinlock.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_suspend_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_switch_np.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_symbols.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_system.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_tcdrain.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_vfork.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_wait.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_wait4.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_waitpid.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_write.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_writev.c#2 integrate .. //depot/projects/toehead/lib/libkse/thread/thr_yield.c#2 integrate .. //depot/projects/toehead/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/toehead/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/toehead/lib/libthr/pthread.map#2 integrate .. //depot/projects/toehead/lib/libthr/thread/thr_mutex.c#3 integrate .. //depot/projects/toehead/lib/libthr/thread/thr_private.h#2 integrate .. //depot/projects/toehead/lib/libufs/Makefile#2 integrate .. //depot/projects/toehead/lib/libufs/block.c#2 integrate .. //depot/projects/toehead/lib/libufs/bread.3#2 integrate .. //depot/projects/toehead/lib/libufs/libufs.h#2 integrate .. //depot/projects/toehead/lib/msun/Makefile#2 integrate .. //depot/projects/toehead/lib/msun/Symbol.map#2 integrate .. //depot/projects/toehead/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/toehead/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/toehead/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/toehead/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/toehead/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/toehead/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/toehead/lib/msun/man/atan2.3#2 integrate .. //depot/projects/toehead/lib/msun/man/csqrt.3#1 branch .. //depot/projects/toehead/lib/msun/man/hypot.3#2 integrate .. //depot/projects/toehead/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/toehead/lib/msun/man/math.3#2 integrate .. //depot/projects/toehead/lib/msun/man/nan.3#1 branch .. //depot/projects/toehead/lib/msun/man/sqrt.3#2 integrate .. //depot/projects/toehead/lib/msun/src/math.h#2 integrate .. //depot/projects/toehead/lib/msun/src/s_carg.c#1 branch .. //depot/projects/toehead/lib/msun/src/s_cargf.c#1 branch .. //depot/projects/toehead/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/toehead/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/toehead/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/toehead/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/toehead/lib/msun/src/s_nan.c#1 branch .. //depot/projects/toehead/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/toehead/release/doc/en_US.ISO8859-1/hardware/article.sgml#2 integrate .. //depot/projects/toehead/release/doc/share/misc/dev.archlist.txt#2 integrate .. //depot/projects/toehead/sbin/atacontrol/atacontrol.c#2 integrate .. //depot/projects/toehead/sbin/growfs/growfs.c#2 integrate .. //depot/projects/toehead/sbin/ipfw/ipfw2.c#2 integrate .. //depot/projects/toehead/sbin/natd/natd.8#3 integrate .. //depot/projects/toehead/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/toehead/sbin/newfs/newfs.8#2 integrate .. //depot/projects/toehead/sbin/newfs/newfs.c#2 integrate .. //depot/projects/toehead/sbin/newfs/newfs.h#2 integrate .. //depot/projects/toehead/share/man/man3/tgmath.3#2 integrate .. //depot/projects/toehead/share/man/man4/Makefile#2 integrate .. //depot/projects/toehead/share/man/man4/hptrr.4#1 branch .. //depot/projects/toehead/share/man/man7/build.7#3 integrate .. //depot/projects/toehead/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/toehead/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/toehead/sys/amd64/conf/NOTES#2 integrate .. //depot/projects/toehead/sys/arm/at91/at91.c#2 integrate .. //depot/projects/toehead/sys/arm/at91/if_ate.c#2 integrate .. //depot/projects/toehead/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/toehead/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/toehead/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/toehead/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/toehead/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/toehead/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/toehead/sys/conf/NOTES#2 integrate .. //depot/projects/toehead/sys/conf/files#3 integrate .. //depot/projects/toehead/sys/conf/files.amd64#2 integrate .. //depot/projects/toehead/sys/conf/files.i386#2 integrate .. //depot/projects/toehead/sys/conf/files.powerpc#2 integrate .. //depot/projects/toehead/sys/conf/options#2 integrate .. //depot/projects/toehead/sys/conf/options.powerpc#2 integrate .. //depot/projects/toehead/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/toehead/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/toehead/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/toehead/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_adapter.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_include.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_l2t.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_l2t.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_main.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_offload.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_offload.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_osdep.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/cxgb_sge.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/sys/mvec.h#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/sys/uipc_mvec.c#2 integrate .. //depot/projects/toehead/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/toehead/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/toehead/sys/dev/hptrr/array.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/him.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/toehead/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/toehead/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/toehead/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/toehead/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/list.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/toehead/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/toehead/sys/dev/sound/pci/hda/hdac.c#2 integrate .. //depot/projects/toehead/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/toehead/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/toehead/sys/geom/geom_dev.c#2 integrate .. //depot/projects/toehead/sys/geom/geom_io.c#2 integrate .. //depot/projects/toehead/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/toehead/sys/i386/conf/NOTES#2 integrate .. //depot/projects/toehead/sys/i386/conf/PAE#2 integrate .. //depot/projects/toehead/sys/i386/i386/machdep.c#2 integrate .. //depot/projects/toehead/sys/kern/Makefile#2 integrate .. //depot/projects/toehead/sys/kern/kern_event.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_mbuf.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_mutex.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_rwlock.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_sig.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_sx.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_thread.c#2 integrate .. //depot/projects/toehead/sys/kern/kern_umtx.c#2 integrate .. //depot/projects/toehead/sys/kern/sched_4bsd.c#3 integrate .. //depot/projects/toehead/sys/kern/sched_ule.c#3 integrate .. //depot/projects/toehead/sys/kern/subr_lock.c#2 integrate .. //depot/projects/toehead/sys/kern/sys_generic.c#2 integrate .. //depot/projects/toehead/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/toehead/sys/kern/uipc_sockbuf.c#2 integrate .. //depot/projects/toehead/sys/modules/Makefile#2 integrate .. //depot/projects/toehead/sys/modules/cxgb/Makefile#2 integrate .. //depot/projects/toehead/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/toehead/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/toehead/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/toehead/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/toehead/sys/net/if.h#2 integrate .. //depot/projects/toehead/sys/net/if_bridge.c#2 integrate .. //depot/projects/toehead/sys/net/if_lagg.c#2 integrate .. //depot/projects/toehead/sys/net/route.c#4 integrate .. //depot/projects/toehead/sys/net/route.h#3 integrate .. //depot/projects/toehead/sys/net80211/ieee80211_radiotap.h#2 integrate .. //depot/projects/toehead/sys/netinet/if_ether.c#3 integrate .. //depot/projects/toehead/sys/netinet/if_ether.h#2 integrate .. //depot/projects/toehead/sys/netinet/sctp_bsd_addr.c#2 integrate .. //depot/projects/toehead/sys/netinet/tcp.h#2 integrate .. //depot/projects/toehead/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/toehead/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/toehead/sys/netinet/tcp_subr.c#3 integrate .. //depot/projects/toehead/sys/netinet/tcp_syncache.c#4 integrate .. //depot/projects/toehead/sys/netinet/tcp_syncache.h#3 integrate .. //depot/projects/toehead/sys/netinet/tcp_usrreq.c#3 edit .. //depot/projects/toehead/sys/netinet/tcp_var.h#3 integrate .. //depot/projects/toehead/sys/netinet6/in6_pcb.c#3 integrate .. //depot/projects/toehead/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/toehead/sys/netncp/ncp_sock.c#2 integrate .. //depot/projects/toehead/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/toehead/sys/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/toehead/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/toehead/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/toehead/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/toehead/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/toehead/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/conf/GENERIC#2 integrate .. //depot/projects/toehead/sys/powerpc/conf/NOTES#2 integrate .. //depot/projects/toehead/sys/powerpc/include/fpu.h#2 integrate .. //depot/projects/toehead/sys/powerpc/powerpc/clock.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/interrupt.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/locore.S#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/machdep.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/mmu_oea.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/nexus.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/swtch.S#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/trap.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/uio_machdep.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/uma_machdep.c#2 delete .. //depot/projects/toehead/sys/powerpc/powerpc/vm_machdep.c#2 delete .. //depot/projects/toehead/sys/security/mac/mac_posix_sem.c#2 integrate .. //depot/projects/toehead/sys/sys/_lock.h#2 integrate .. //depot/projects/toehead/sys/sys/ata.h#2 integrate .. //depot/projects/toehead/sys/sys/kerneldump.h#2 integrate .. //depot/projects/toehead/sys/sys/lock_profile.h#2 integrate .. //depot/projects/toehead/sys/sys/pcpu.h#2 integrate .. //depot/projects/toehead/sys/sys/proc.h#2 integrate .. //depot/projects/toehead/sys/sys/selinfo.h#2 integrate .. //depot/projects/toehead/sys/sys/socket.h#3 integrate .. //depot/projects/toehead/sys/sys/socketvar.h#2 integrate .. //depot/projects/toehead/sys/sys/sx.h#2 integrate .. //depot/projects/toehead/sys/sys/systm.h#2 integrate .. //depot/projects/toehead/sys/sys/tty.h#2 integrate .. //depot/projects/toehead/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/toehead/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/toehead/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/toehead/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/toehead/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/toehead/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/toehead/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/toehead/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/toehead/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/toehead/tools/regression/lib/msun/test-next.c#2 integrate .. //depot/projects/toehead/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/toehead/tools/regression/usr.bin/sed/regress.sh#2 integrate .. //depot/projects/toehead/tools/tools/ath/athdebug/athdebug.c#2 integrate .. //depot/projects/toehead/tools/tools/ath/athstats/Makefile#2 integrate .. //depot/projects/toehead/tools/tools/ath/athstats/athstats.c#2 integrate .. //depot/projects/toehead/tools/tools/ath/athstats/main.c#2 integrate .. //depot/projects/toehead/tools/tools/ath/athstats/statfoo.c#2 integrate .. //depot/projects/toehead/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/toehead/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/toehead/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/toehead/usr.bin/netstat/inet.c#2 integrate .. //depot/projects/toehead/usr.bin/vmstat/Makefile#2 integrate .. //depot/projects/toehead/usr.bin/vmstat/vmstat.8#2 integrate .. //depot/projects/toehead/usr.bin/vmstat/vmstat.c#2 integrate .. //depot/projects/toehead/usr.bin/xinstall/xinstall.c#2 integrate .. //depot/projects/toehead/usr.sbin/iostat/iostat.c#2 integrate .. //depot/projects/toehead/usr.sbin/sysinstall/dist.c#2 integrate .. //depot/projects/toehead/usr.sbin/sysinstall/dist.h#2 integrate Differences ... ==== //depot/projects/toehead/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.343 2007/12/11 20:00:55 imp Exp $ +# $FreeBSD: src/Makefile,v 1.344 2007/12/13 00:08:02 imp Exp $ # # The user-driven targets are: # @@ -234,7 +234,7 @@ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ then \ - (cd ${.CURDIR} && ${BSDMAKE} make); \ + (cd ${.CURDIR} && ${MAKE} make); \ fi # @@ -242,11 +242,10 @@ # headers, libraries and tools. Also, allow the location of # the system bsdmake-like utility to be overridden. # -BSDMAKE?=make MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -MMAKE= ${MMAKEENV} ${BSDMAKE} \ +MMAKE= ${MMAKEENV} ${MAKE} \ -D_UPGRADING \ -DNOMAN -DNO_MAN -DNOSHARED -DNO_SHARED \ -DNO_CPU_CFLAGS -DNO_WERROR ==== //depot/projects/toehead/bin/mv/mv.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,77 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + _exit(EX_OSERR); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/toehead/contrib/gdtoa/gdtoaimp.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/toehead/contrib/gdtoa/hexnan.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/toehead/contrib/gdtoa/strtod.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/toehead/contrib/gdtoa/strtof.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; + break; + case STRTOG_Denormal: u.L[0] = bits[0]; break; ==== //depot/projects/toehead/contrib/gdtoa/strtorQ.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorQ.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -63,11 +65,18 @@ break; case STRTOG_Normal: + L[_3] = bits[0]; + L[_2] = bits[1]; + L[_1] = bits[2]; + L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + break; + case STRTOG_NaNbits: L[_3] = bits[0]; L[_2] = bits[1]; L[_1] = bits[2]; - L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + L[_0] = (bits[3] & ~0x10000) + | (((exp + 0x3fff + 112) << 16) | (1 << 15)); break; case STRTOG_Denormal: ==== //depot/projects/toehead/contrib/gdtoa/strtorx.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorx.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -69,7 +71,6 @@ goto normal_bits; case STRTOG_Normal: - case STRTOG_NaNbits: L[_0] = exp + 0x3fff + 63; normal_bits: L[_4] = (UShort)bits[0]; @@ -78,6 +79,14 @@ L[_1] = (UShort)(bits[1] >> 16); break; + case STRTOG_NaNbits: + L[_0] = exp + 0x3fff + 63; + L[_4] = (UShort)bits[0]; + L[_3] = (UShort)(bits[0] >> 16); + L[_2] = (UShort)bits[1]; + L[_1] = (UShort)((bits[1] >> 16) | (3 << 14)); + break; + case STRTOG_Infinite: L[_0] = 0x7fff; L[_1] = L[_2] = L[_3] = L[_4] = 0; ==== //depot/projects/toehead/etc/rc.d/ldconfig#2 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/ldconfig,v 1.18 2007/12/08 07:20:22 dougb Exp $ +# $FreeBSD: src/etc/rc.d/ldconfig,v 1.19 2007/12/13 00:51:01 jhb Exp $ # # PROVIDE: ldconfig @@ -49,8 +49,14 @@ fi fi done - echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} - ${ldconfig} -32 -m ${_ins} ${ldconfig32_paths} + _LDC="" + for i in ${ldconfig32_paths}; do + if [ -r "${i}" ]; then + _LDC="${_LDC} ${i}" + fi + done + echo '32-bit compatibility ldconfig path:' ${_LDC} + ${ldconfig} -32 -m ${_ins} ${_LDC} ;; esac ==== //depot/projects/toehead/games/fortune/datfiles/fortunes#2 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.249 2007/12/09 01:00:11 dougb Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.250 2007/12/14 01:47:11 wes Exp $ % ======================================================================= || || @@ -56259,6 +56259,9 @@ % Where am I? Who am I? Am I? I % +Where am I, and what am I doing in this handbasket? + -- Mark A. Matthews, to Wes Peters, circa 1996 +% Where are the calculations that go with a calculated risk? % WHERE CAN THE MATTER BE ==== //depot/projects/toehead/games/fortune/datfiles/fortunes-o.real#2 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.28 2007/12/09 01:00:11 dougb Exp $ +%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.29 2007/12/14 21:58:58 des Exp $ % PLAYGIRL, Inc. Philadelphia, Pa. 19369 @@ -755,7 +755,7 @@ "What is amiss, my friend?" asked the king. "My lord," gasped Lancelot, "you have given me the wrong key!" % - "Before we get married," said the young woman to her fiancee, + "Before we get married," said the young woman to her fiance, "I want to confess some affairs that I've had in the past." "But you told me all about those a few weeks ago," her young man replied. ==== //depot/projects/toehead/include/complex.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2001 The FreeBSD Project. + * Copyright (c) 2001-2007 The FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/complex.h,v 1.6 2004/08/14 18:03:21 stefanf Exp $ + * $FreeBSD: src/include/complex.h,v 1.8 2007/12/15 08:38:44 das Exp $ */ #ifndef _COMPLEX_H @@ -45,6 +45,8 @@ double cabs(double complex); float cabsf(float complex); +double carg(double complex); +float cargf(float complex); double cimag(double complex); float cimagf(float complex); long double cimagl(long double complex); @@ -55,6 +57,8 @@ double creal(double complex); float crealf(float complex); long double creall(long double complex); +double complex csqrt(double complex); +float complex csqrtf(float complex); __END_DECLS ==== //depot/projects/toehead/include/pthread_np.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread_np.h,v 1.17 2007/10/29 00:31:54 imp Exp $ + * $FreeBSD: src/include/pthread_np.h,v 1.18 2007/12/14 06:25:56 davidxu Exp $ */ #ifndef _PTHREAD_NP_H_ #define _PTHREAD_NP_H_ @@ -49,6 +49,10 @@ void pthread_resume_all_np(void); int pthread_resume_np(pthread_t); void pthread_set_name_np(pthread_t, const char *); +int pthread_mutex_getspinloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setspinloops_np(pthread_mutex_t *mutex, int count); +int pthread_mutex_getyieldloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setyieldloops_np(pthread_mutex_t *mutex, int count); int pthread_single_np(void); void pthread_suspend_all_np(void); int pthread_suspend_np(pthread_t); ==== //depot/projects/toehead/lib/libc/Versions.def#2 (text) ==== @@ -1,9 +1,14 @@ -# $FreeBSD: src/lib/libc/Versions.def,v 1.3 2007/04/29 16:14:17 kan Exp $ +# $FreeBSD: src/lib/libc/Versions.def,v 1.4 2007/12/14 20:49:06 deischen Exp $ # This is our first version; it depends on no other. +# This version was first added to 7.0-current. FBSD_1.0 { }; +# This version was first added to 8.0-current. +FBSD_1.1 { +} FBSD_1.0; + # This is our private namespace. Any global interfaces that are # strictly for use only by other FreeBSD applications and libraries # are listed here. We use a separate namespace so we can write ==== //depot/projects/toehead/lib/libc/amd64/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.4 2007/05/31 13:01:32 deischen Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ */ /* @@ -71,4 +71,7 @@ _end; __sys_vfork; _vfork; + + /* used in libm */ + __ULtox_D2A; }; ==== //depot/projects/toehead/lib/libc/amd64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/toehead/lib/libc/arm/gd_qnan.h#2 (text+ko) ==== @@ -6,18 +6,18 @@ * * XXX I don't have ARM hardware, so I just guessed. --das * - * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:07:38 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4120116A420; Wed, 19 Dec 2007 01:07:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EC2E616A419 for ; Wed, 19 Dec 2007 01:07:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D8DBE13C447 for ; Wed, 19 Dec 2007 01:07:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ17b1w002093 for ; Wed, 19 Dec 2007 01:07:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ17btC002090 for perforce@freebsd.org; Wed, 19 Dec 2007 01:07:37 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 01:07:37 GMT Message-Id: <200712190107.lBJ17btC002090@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131189 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:07:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=131189 Change 131189 by jb@jb_freebsd1 on 2007/12/19 01:07:35 Add a knob to allow just the kernels to be (re)built during a "make universe". This is intended for use with NOCLEAN when trying to find a fix for the "chase the variable type tango". Having to trudge through a buildworld that you know has already succeeded is a pain in the bottom. Affected files ... .. //depot/projects/dtrace/src/Makefile#17 edit Differences ... ==== //depot/projects/dtrace/src/Makefile#17 (text+ko) ==== @@ -284,12 +284,14 @@ universe: universe_${target} .ORDER: universe_prologue universe_${target} universe_epilogue universe_${target}: +.if !defined(MAKE_JUST_KERNELS) @echo ">> ${target} started on `LC_ALL=C date`" -cd ${.CURDIR} && ${MAKE} ${JFLAG} buildworld \ TARGET=${target} \ __MAKE_CONF=/dev/null \ > _.${target}.buildworld 2>&1 @echo ">> ${target} buildworld completed on `LC_ALL=C date`" +.endif .if exists(${.CURDIR}/sys/${target}/conf/NOTES) -cd ${.CURDIR}/sys/${target}/conf && ${MAKE} LINT \ > ${.CURDIR}/_.${target}.makeLINT 2>&1 From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:30:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08E7616A420; Wed, 19 Dec 2007 01:30:02 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7981D16A41A for ; Wed, 19 Dec 2007 01:30:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6A63B13C4EC for ; Wed, 19 Dec 2007 01:30:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1U18v005204 for ; Wed, 19 Dec 2007 01:30:01 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1U1sN005197 for perforce@freebsd.org; Wed, 19 Dec 2007 01:30:01 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:30:01 GMT Message-Id: <200712190130.lBJ1U1sN005197@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131190 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:30:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=131190 Change 131190 by hselasky@hselasky_laptop001 on 2007/12/19 01:29:21 This commit is related to USB Device Side support. Bring in the AT91 probe, attach and detach routines. A small fix to at91.c and ohci_atmelarm.c Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91.c#6 edit .. //depot/projects/usb/src/sys/arm/at91/at91_udp.c#1 add .. //depot/projects/usb/src/sys/arm/at91/ohci_atmelarm.c#15 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91.c#6 (text) ==== @@ -301,7 +301,7 @@ { "at91_udp", 0, AT91RM92_BASE + AT91RM92_UDP_BASE, AT91RM92_UDP_SIZE, - AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOC + AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOD }, { "at91_mci", 0, ==== //depot/projects/usb/src/sys/arm/at91/ohci_atmelarm.c#15 (text) ==== @@ -121,10 +121,10 @@ } #if (__FreeBSD_version >= 700031) err = bus_setup_intr(dev, sc->sc_ohci.sc_irq_res, INTR_TYPE_BIO | INTR_MPSAFE, - NULL, (void *)(void *)ohci_interrupt, sc, &(sc->sc_ohci.sc_intr_hdl)); + NULL, (void *)ohci_interrupt, sc, &(sc->sc_ohci.sc_intr_hdl)); #else err = bus_setup_intr(dev, sc->sc_ohci.sc_irq_res, INTR_TYPE_BIO | INTR_MPSAFE, - (void *)(void *)ohci_interrupt, sc, &(sc->sc_ohci.sc_intr_hdl)); + (void *)ohci_interrupt, sc, &(sc->sc_ohci.sc_intr_hdl)); #endif if (err) { sc->sc_ohci.sc_intr_hdl = NULL; From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:37:09 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AD30616A41A; Wed, 19 Dec 2007 01:37:09 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0BAE016A418 for ; Wed, 19 Dec 2007 01:37:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F232013C478 for ; Wed, 19 Dec 2007 01:37:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1b8Bo006589 for ; Wed, 19 Dec 2007 01:37:08 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1b8sJ006586 for perforce@freebsd.org; Wed, 19 Dec 2007 01:37:08 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:37:08 GMT Message-Id: <200712190137.lBJ1b8sJ006586@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131191 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:37:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131191 Change 131191 by hselasky@hselasky_laptop001 on 2007/12/19 01:36:11 Bugfix: It looks like you need to call "intr_event_destroy" and not just "swi_remove". This was not well documented. Else you get a memory leak. Looked through the sources and I think others have made the same mistake aswell. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#76 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#76 (text+ko) ==== @@ -835,9 +835,11 @@ LIST_INIT(&(info->done_head)); /* create our interrupt thread */ - if (swi_add(NULL, "usbcb", &usbd_callback_intr_td, - info, SWI_CAMBIO, INTR_MPSAFE, &(info->done_cookie))) { + if (swi_add(&(info->done_event), "usbcb", + &usbd_callback_intr_td, info, SWI_CAMBIO, + INTR_MPSAFE, &(info->done_cookie))) { info->done_cookie = NULL; + info->done_event = NULL; parm.err = USBD_NO_INTR_THREAD; goto done; } @@ -1073,6 +1075,7 @@ /* teardown the interrupt thread, if any */ if (info->done_cookie) { swi_remove(info->done_cookie); + intr_event_destroy(info->done_event); } /* * free the "memory_base" last, @@ -2434,7 +2437,7 @@ type = (xfer->pipe->edesc->bmAttributes & UE_XFERTYPE); if (type != UE_ISOCHRONOUS) { xfer->pipe->is_stalled = 1; - (xfer->pipe->methods->set_stall) ( + (xfer->udev->bus->methods->set_stall) ( xfer->udev, NULL, xfer->pipe); goto done; } @@ -2823,11 +2826,11 @@ * complete the USB transfer like in case of a timeout * setting the error code "USBD_STALLED". */ - (pipe->methods->set_stall) (udev, xfer, pipe); + (udev->bus->methods->set_stall) (udev, xfer, pipe); } else { pipe->toggle_next = 0; /* reset data toggle */ - (pipe->methods->clear_stall) (udev, pipe); + (udev->bus->methods->clear_stall) (udev, pipe); /* start up the first transfer, if any */ if (xfer) { From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:39:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1C3AB16A468; Wed, 19 Dec 2007 01:39:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B20F116A418 for ; Wed, 19 Dec 2007 01:39:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A392713C4D1 for ; Wed, 19 Dec 2007 01:39:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1dBLx006676 for ; Wed, 19 Dec 2007 01:39:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1dBb0006673 for perforce@freebsd.org; Wed, 19 Dec 2007 01:39:11 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:39:11 GMT Message-Id: <200712190139.lBJ1dBb0006673@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131192 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:39:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131192 Change 131192 by hselasky@hselasky_laptop001 on 2007/12/19 01:38:19 This commit is USB device side related. Bring in the first complete version of the AT91 USB Device Controller Interface driver. There are still some things left to do before it is fully functional, but most things are in place. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#2 edit .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.h#2 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#2 (text+ko) ==== @@ -31,6 +31,17 @@ * This file contains the driver for the AT91 series USB Device * Controller */ + +/* + * Thanks to "David Brownell" for helping out regarding the hardware + * endpoint profiles. + */ + +/* + * NOTE: the "fifo_bank" is not reset in hardware when the endpoint is + * reset ! + */ + #include #include #include @@ -71,10 +82,26 @@ /* prototypes */ +struct usbd_bus_methods at9100_dci_bus_methods; +struct usbd_pipe_methods at9100_dci_device_bulk_methods; +struct usbd_pipe_methods at9100_dci_device_ctrl_methods; +struct usbd_pipe_methods at9100_dci_device_intr_methods; +struct usbd_pipe_methods at9100_dci_device_isoc_fs_methods; +struct usbd_pipe_methods at9100_dci_root_ctrl_methods; +struct usbd_pipe_methods at9100_dci_root_intr_methods; + static at9100_dci_cmd_t at9100_dci_setup_rx; static at9100_dci_cmd_t at9100_dci_data_rx; static at9100_dci_cmd_t at9100_dci_data_tx; static at9100_dci_cmd_t at9100_dci_data_tx_sync; +static void at9100_dci_device_done(struct usbd_xfer *xfer, usbd_status_t error); +static void at9100_dci_do_poll(struct usbd_bus *bus); +static void at9100_dci_root_ctrl_poll(struct at9100_dci_softc *sc); +static void at9100_dci_standard_done(struct usbd_xfer *xfer); + +static usbd_std_root_transfer_func_t at9100_dci_root_intr_done; +static usbd_std_root_transfer_func_t at9100_dci_root_ctrl_done; +static usbd_config_td_command_t at9100_dci_root_ctrl_task; /* * NOTE: Some of the bits in the CSR register have inverse meaning so @@ -86,12 +113,162 @@ (csr) |= ((AT91_UDP_CSR_RX_DATA_BK0| \ AT91_UDP_CSR_RX_DATA_BK1| \ AT91_UDP_CSR_TXCOMP| \ - AT91_UDP_CSR_RXSETUP) ^ (what)); \ + AT91_UDP_CSR_RXSETUP| \ + AT91_UDP_CSR_STALLSENT) ^ (what)); \ } while (0) +/* + * Here is a list of what the chip supports. + * Probably it supports more than listed here! + */ +static const struct usbd_hw_ep_profile + at9100_dci_ep_profile[AT91_UDP_EP_MAX] = { + + [0] = { + .max_frame_size = 8, + .is_simplex = 1, + .support_control = 1, + }, + [1] = { + .max_frame_size = 64, + .is_simplex = 1, + .support_multi_buffer = 1, + .support_bulk = 1, + .support_interrupt = 1, + .support_isochronous = 1, + .support_in = 1, + .support_out = 1, + }, + [2] = { + .max_frame_size = 64, + .is_simplex = 1, + .support_multi_buffer = 1, + .support_bulk = 1, + .support_interrupt = 1, + .support_isochronous = 1, + .support_in = 1, + .support_out = 1, + }, + [3] = { + /* can also do BULK */ + .max_frame_size = 8, + .is_simplex = 1, + .support_interrupt = 1, + .support_in = 1, + .support_out = 1, + }, + [4] = { + .max_frame_size = 256, + .is_simplex = 1, + .support_multi_buffer = 1, + .support_bulk = 1, + .support_interrupt = 1, + .support_isochronous = 1, + .support_in = 1, + .support_out = 1, + }, + [5] = { + .max_frame_size = 256, + .is_simplex = 1, + .support_multi_buffer = 1, + .support_bulk = 1, + .support_interrupt = 1, + .support_isochronous = 1, + .support_in = 1, + .support_out = 1, + }, +}; + +static void +at9100_dci_get_hw_ep_profile(struct usbd_device *udev, + const struct usbd_hw_ep_profile **ppf, uint8_t ep_addr) +{ + if (ep_addr < AT91_UDP_EP_MAX) { + *ppf = (at9100_dci_ep_profile + ep_addr); + } else { + *ppf = NULL; + } + return; +} + +static void +at9100_dci_clocks_on(struct at9100_dci_softc *sc) +{ + if (sc->sc_flags.clocks_off && + sc->sc_flags.port_powered) { + + if (sc->sc_clocks_on) { + (sc->sc_clocks_on) (sc->sc_clocks_arg); + } + sc->sc_flags.clocks_off = 0; + + /* enable Transceiver */ + AT91_UDP_WRITE_4(sc, AT91_UDP_TXVC, 0); + } + return; +} + +static void +at9100_dci_clocks_off(struct at9100_dci_softc *sc) +{ + if (!sc->sc_flags.clocks_off) { + + /* disable Transceiver */ + AT91_UDP_WRITE_4(sc, AT91_UDP_TXVC, AT91_UDP_TXVC_DIS); + + if (sc->sc_clocks_off) { + (sc->sc_clocks_off) (sc->sc_clocks_arg); + } + sc->sc_flags.clocks_off = 1; + } + return; +} + +static void +at9100_dci_pull_up(struct at9100_dci_softc *sc) +{ + if (!sc->sc_flags.d_pulled_up && + sc->sc_flags.port_powered) { + sc->sc_flags.d_pulled_up = 1; + (sc->sc_pull_up) (sc->sc_pull_arg); + } + return; +} + +static void +at9100_dci_pull_down(struct at9100_dci_softc *sc) +{ + if (sc->sc_flags.d_pulled_up) { + sc->sc_flags.d_pulled_up = 0; + (sc->sc_pull_down) (sc->sc_pull_arg); + } + return; +} + +static void +at9100_dci_wakeup_peer(struct at9100_dci_softc *sc) +{ + uint32_t temp; + + if (!(sc->sc_flags.status_suspend)) { + return; + } + temp = AT91_UDP_READ_4(sc, AT91_UDP_GSTATE); + + if (!(temp & AT91_UDP_GSTATE_ESR)) { + return; + } + temp |= AT91_UDP_GSTATE_ESR; + + AT91_UDP_WRITE_4(sc, AT91_UDP_GSTATE, temp); + + return; +} + static uint8_t at9100_dci_setup_rx(struct at9100_dci_td *td) { + struct usbd_page_search buf_res; uint32_t csr; uint16_t count; @@ -109,26 +286,40 @@ count = (csr & AT91_UDP_CSR_RXBYTECNT) >> 16; /* verify data length */ - if (count != 8) { + if (count != td->remainder) { DPRINTFN(0, "Invalid SETUP packet " "length, %d bytes\n", count); td->error = 1; return (0); /* we are complete */ } - /* receive data */ - bus_space_read_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, td->buffer, count); + while (count > 0) { + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* receive data */ + bus_space_read_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, buf_res.buffer, buf_res.length); + + if (td->offset == 0) { + /* sneak peek the endpoint direction */ + if ((*(uint8_t *)(buf_res.buffer)) & UE_DIR_IN) { + csr |= AT91_UDP_CSR_DIR; + } else { + csr &= ~AT91_UDP_CSR_DIR; + } + } + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } /* clear RXSETUP */ AT91_CSR_ACK(csr, AT91_UDP_CSR_RXSETUP); - /* sneak peek the endpoint direction */ - if ((*(uint8_t *)(td->buffer)) & UE_DIR_IN) { - csr |= AT91_UDP_CSR_DIR; - } else { - csr &= ~AT91_UDP_CSR_DIR; - } - /* write command */ bus_space_write_4(td->io_tag, td->io_hdl, td->status_reg, csr); @@ -139,6 +330,7 @@ static uint8_t at9100_dci_data_rx(struct at9100_dci_td *td) { + struct usbd_page_search buf_res; uint32_t csr; uint16_t count; uint8_t to; @@ -164,7 +356,7 @@ /* verify the packet byte count */ if (count != td->max_packet_size) { if (count < td->max_packet_size) { - /* short packet */ + /* we have a short packet */ td->short_pkt = 1; } else { /* invalid USB packet */ @@ -178,16 +370,25 @@ td->error = 1; return (0); /* we are complete */ } - /* receive data */ - bus_space_read_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, td->buffer, count); + while (count > 0) { + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* receive data */ + bus_space_read_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, buf_res.buffer, buf_res.length); - /* update counters */ - td->remainder -= count; - td->buffer = USBD_ADD_BYTES(td->buffer, count); + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } /* clear status bits */ - if (td->double_buffer) { + if (td->support_multi_buffer) { if (td->fifo_bank) { td->fifo_bank = 0; AT91_CSR_ACK(csr, AT91_UDP_CSR_RX_DATA_BK1); @@ -208,6 +409,15 @@ * NOTE: We may have to delay a little bit before * proceeding after clearing the DATA_BK bits. */ + + /* check if we are complete */ + if (td->remainder == 0) { + if (td->short_pkt) { + /* we are complete */ + return (0); + } + /* else need to receive a zero length packet */ + } } while (--to); return (1); /* not complete */ } @@ -215,6 +425,7 @@ static uint8_t at9100_dci_data_tx(struct at9100_dci_td *td) { + struct usbd_page_search buf_res; uint32_t csr; uint16_t count; @@ -236,17 +447,26 @@ count = td->max_packet_size; if (td->remainder < count) { /* we have a short packet */ - td->short_pkt = 0; - + td->short_pkt = 1; count = td->remainder; } - /* transmit data */ - bus_space_write_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, td->buffer, count); + while (count > 0) { + + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* transmit data */ + bus_space_write_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, buf_res.buffer, buf_res.length); - /* update counters */ - td->remainder -= count; - td->buffer = USBD_ADD_BYTES(td->buffer, count); + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } /* write command */ bus_space_write_4(td->io_tag, td->io_hdl, @@ -254,15 +474,20 @@ /* check remainder */ if (td->remainder == 0) { - if (!td->short_pkt) { + if (td->short_pkt) { return (0); /* complete */ } + /* else we need to transmit a short packet */ } /* check for double buffering */ - if (!td->double_buffer) { + if (!td->support_multi_buffer) { + break; + } + /* check if we can do a multi buffer */ + if (td->did_multi_buffer) { break; } - td->double_buffer = 0; + td->did_multi_buffer = 1; /* only set TXPKTRDY next time */ AT91_CSR_ACK(csr, AT91_UDP_CSR_TXPKTRDY); @@ -273,6 +498,7 @@ static uint8_t at9100_dci_data_tx_sync(struct at9100_dci_td *td) { + struct usbd_xfer *xfer; uint32_t csr; /* read out FIFO status */ @@ -294,11 +520,13 @@ bus_space_write_4(td->io_tag, td->io_hdl, td->status_reg, csr); - if (!td->double_buffer) { + if (!td->did_multi_buffer) { + /* restore double buffer flag */ + xfer = td->pc->xfer; return (0); /* complete */ } /* wait for the second and final interrupt */ - td->double_buffer = 0; + td->did_multi_buffer = 0; } return (1); /* not complete */ } @@ -306,8 +534,8 @@ static uint8_t at9100_dci_xfer_do_fifo(struct usbd_xfer *xfer) { + struct at9100_dci_softc *sc; struct at9100_dci_td *td; - struct at9100_dci_td *td_next; uint8_t temp; td = xfer->td_transfer_cache; @@ -321,93 +549,1753 @@ } if (td->error) { goto done; - } else if (td->short_pkt) { + } else if (td->remainder > 0) { + /* + * We had a short transfer. If there is no alternate + * next, stop processing ! + */ if (!td->alt_next) { goto done; } - td_next = td->alt_next; - } else { - td_next = td->next; } - /* - * Fetch the next transfer descriptor and transfer the - * "fifo_bank" value to the next transfer descriptor + * Fetch the next transfer descriptor and transfer + * some flags to the next transfer descriptor */ - temp = td->fifo_bank; - td = td_next; + temp = 0; + if (td->fifo_bank) + temp |= 1; + if (td->did_multi_buffer) + temp |= 2; + td = td->obj_next; xfer->td_transfer_cache = td; - td->fifo_bank = temp; + if (temp & 1) + td->fifo_bank = 1; + if (temp & 2) + td->did_multi_buffer = 1; } return (1); /* not complete */ done: - /* update the "fifo_bank" shadow */ - xfer->flags_int.custom_00 = td->fifo_bank; + sc = xfer->usb_sc; + temp = (xfer->pipe->edesc->bEndpointAddress & UE_ADDR); + + /* update FIFO bank flag and multi buffer */ + if (td->fifo_bank) { + sc->sc_ep_flags[temp].fifo_bank = 1; + } else { + sc->sc_ep_flags[temp].fifo_bank = 0; + } + + /* update multi buffer flag */ + if (td->did_multi_buffer) { + sc->sc_ep_flags[temp].did_multi_buffer = 1; + } else { + sc->sc_ep_flags[temp].did_multi_buffer = 0; + } + + /* compute all actual lengths */ + + at9100_dci_standard_done(xfer); + return (0); /* complete */ } static void -at9100_dci_interrupt_td(struct at9100_dci_softc *sc, struct thread *ctd) +at9100_dci_interrupt_poll(struct at9100_dci_softc *sc) { - struct usbd_xfer *xlist[AT91_UDP_EP_MAX + 1]; - struct usbd_xfer **xptr; struct usbd_xfer *xfer; - struct thread *td; + + LIST_FOREACH(xfer, &sc->sc_bus.intr_list_head, interrupt_list) { + if (!at9100_dci_xfer_do_fifo(xfer)) { + /* queue callback for execution */ + usbd_callback_wrapper(xfer, NULL, + USBD_CONTEXT_CALLBACK); + } + } + return; +} + +static void +at9100_dci_vbus_interrupt(struct usbd_bus *bus, uint8_t is_on) +{ + struct at9100_dci_softc *sc = AT9100_DCI_BUS2SC(bus); + + DPRINTFN(4, "vbus = %u\n", is_on); + + mtx_lock(&(sc->sc_bus.mtx)); + if (is_on) { + if (!sc->sc_flags.status_vbus) { + sc->sc_flags.status_vbus = 1; + + /* complete root HUB interrupt endpoint */ + + usbd_std_root_transfer(&(sc->sc_root_intr), + &at9100_dci_root_intr_done); + } + } else { + if (sc->sc_flags.status_vbus) { + sc->sc_flags.status_vbus = 0; + sc->sc_flags.status_bus_reset = 0; + sc->sc_flags.status_suspend = 0; + sc->sc_flags.change_suspend = 0; + sc->sc_flags.change_connect = 1; + + /* complete root HUB interrupt endpoint */ + + usbd_std_root_transfer(&(sc->sc_root_intr), + &at9100_dci_root_intr_done); + } + } + + mtx_unlock(&(sc->sc_bus.mtx)); + + return; +} - xptr = xlist; - td = ctd; +void +at9100_dci_interrupt(struct at9100_dci_softc *sc) +{ + uint32_t status; mtx_lock(&(sc->sc_bus.mtx)); - if (td) { + status = AT91_UDP_READ_4(sc, AT91_UDP_ISR); + + /* check for any bus state change interrupts */ + + if (status & AT91_UDP_INT_BUS) { + + DPRINTFN(4, "real bus interrupt 0x%08x\n", status); + + /* acknowledge interrupts */ + + AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, status & AT91_UDP_INT_BUS); + + if (status & AT91_UDP_INT_END_BR) { + sc->sc_flags.status_bus_reset = 1; + sc->sc_flags.status_suspend = 0; + sc->sc_flags.change_suspend = 0; + sc->sc_flags.change_connect = 1; + } + /* + * If RXRSM and RXSUSP is set at the same time we interpret + * that like RESUME. Resume is set when there is at least 3 + * milliseconds of inactivity on the USB BUS. + */ + if (status & AT91_UDP_INT_RXRSM) { + if (sc->sc_flags.status_suspend) { + sc->sc_flags.status_suspend = 0; + sc->sc_flags.change_suspend = 1; + } + } else if (status & AT91_UDP_INT_RXSUSP) { + if (!sc->sc_flags.status_suspend) { + sc->sc_flags.status_suspend = 1; + sc->sc_flags.change_suspend = 1; + } + } + /* complete root HUB interrupt endpoint */ + + usbd_std_root_transfer(&(sc->sc_root_intr), + &at9100_dci_root_intr_done); + } + /* check for any endpoint interrupts */ + + if (status & AT91_UDP_INT_EPS) { + + DPRINTFN(4, "real endpoint interrupt 0x%08x\n", status); + + at9100_dci_interrupt_poll(sc); + } + mtx_unlock(&(sc->sc_bus.mtx)); + + return; +} + +static void +at9100_dci_setup_standard_chain_sub(struct at9100_std_temp *temp) +{ + struct at9100_dci_td *td; + + /* get current Transfer Descriptor */ + td = temp->td_next; + temp->td = td; + + /* prepare for next TD */ + temp->td_next = td->obj_next; + + /* fill out the Transfer Descriptor */ + td->func = temp->func; + td->pc = temp->pc; + td->offset = temp->offset; + td->remainder = temp->len; + td->fifo_bank = 0; + td->error = 0; + td->did_multi_buffer = 0; + td->short_pkt = temp->short_pkt; + td->alt_next = temp->setup_alt_next; + return; +} + +static void +at9100_dci_setup_standard_chain(struct usbd_xfer *xfer) +{ + struct at9100_std_temp temp; + struct at9100_dci_softc *sc; + struct at9100_dci_td *td; + uint32_t x; + uint8_t need_sync; + uint8_t ep_no; + + DPRINTFN(8, "addr=%d endpt=%d sumlen=%d speed=%d\n", + xfer->address, UE_GET_ADDR(xfer->endpoint), + xfer->sumlen, usbd_get_speed(xfer->udev)); + + temp.max_frame_size = xfer->max_frame_size; + + xfer->td_transfer_first = xfer->td_start; + xfer->td_transfer_cache = xfer->td_start; + + /* setup temp */ + + temp.td = NULL; + temp.td_next = xfer->td_start; + temp.setup_alt_next = xfer->flags_int.short_frames_ok; + temp.offset = 0; + temp.pc = NULL; + + need_sync = 0; + + /* check if we should prepend a setup message */ + + if (xfer->flags_int.control_xfr) { + if (xfer->flags_int.control_hdr) { + + temp.func = &at9100_dci_setup_rx; + temp.len = xfer->frlengths[0]; + temp.pc = xfer->frbuffers + 0; + temp.short_pkt = temp.len ? 1 : 0; + + at9100_dci_setup_standard_chain_sub(&temp); + } + x = 1; + } else { + x = 0; + } + + if (x != xfer->nframes) { + if (xfer->endpoint & UE_DIR_IN) { + temp.func = &at9100_dci_data_tx; + need_sync = 1; + } else { + temp.func = &at9100_dci_data_rx; + } + } + /* always setup a valid "pc" pointer */ + temp.pc = xfer->frbuffers + x; + + while (x != xfer->nframes) { + + /* DATA0 / DATA1 message */ + + temp.len = xfer->frlengths[x]; + + x++; + + if (x == xfer->nframes) { + temp.setup_alt_next = 0; + } + if (temp.len == 0) { + + /* make sure that we send an USB packet */ + + temp.short_pkt = 0; + + } else { + + /* regular data transfer */ + + temp.short_pkt = (xfer->flags.force_short_xfer) ? 0 : 1; + } + + at9100_dci_setup_standard_chain_sub(&temp); + + if (xfer->flags_int.isochronous_xfr) { + temp.offset += temp.len; + } else { + /* get next Page Cache pointer */ + temp.pc = xfer->frbuffers + x; + } + } + + /* check if we should append a status stage */ + + if (xfer->flags_int.control_xfr && + !xfer->flags_int.control_act) { + /* - * The poll thread should not read any status - * registers that will clear interrupts! + * Send a DATA1 message and invert the current + * endpoint direction. */ - goto check_fifo; + if (xfer->endpoint & UE_DIR_IN) { + temp.func = &at9100_dci_data_rx; + } else { + temp.func = &at9100_dci_data_tx; + need_sync = 1; + } + temp.len = 0; + temp.short_pkt = 0; + + at9100_dci_setup_standard_chain_sub(&temp); + } + if (need_sync && !xfer->flags_int.isochronous_xfr) { + + /* we need a SYNC point */ + temp.func = &at9100_dci_data_tx_sync; + temp.len = 0; + temp.short_pkt = 0; + + at9100_dci_setup_standard_chain_sub(&temp); + + td = temp.td; + } else { + td = temp.td; + } + + /* must have at least one frame! */ + xfer->td_transfer_last = td; + + sc = xfer->usb_sc; + ep_no = (xfer->pipe->edesc->bEndpointAddress & UE_ADDR); + + /* setup the correct fifo bank */ + if (sc->sc_ep_flags[ep_no].fifo_bank) { + td = xfer->td_transfer_first; + td->fifo_bank = 1; + } + /* setup the correct multi buffer flag */ + if (sc->sc_ep_flags[ep_no].did_multi_buffer) { + td = xfer->td_transfer_first; + td->did_multi_buffer = 1; + } + return; +} + +static void +at9100_dci_timeout(struct usbd_xfer *xfer) +{ + struct at9100_dci_softc *sc = xfer->usb_sc; + + DPRINTFN(0, "xfer=%p\n", xfer); + + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); + + /* transfer is transferred */ + at9100_dci_device_done(xfer, USBD_TIMEOUT); + + /* queue callback for execution */ + usbd_callback_wrapper(xfer, NULL, USBD_CONTEXT_CALLBACK); + + mtx_unlock(&sc->sc_bus.mtx); + + return; +} + +static void +at9100_dci_start_standard_chain(struct usbd_xfer *xfer) +{ + /* poll one time */ + if (at9100_dci_xfer_do_fifo(xfer)) { + /* queue up transfer on interrupt list */ + usbd_transfer_intr_enqueue(xfer); + + /* setup a timeout, if any */ + if (xfer->timeout && (!xfer->flags.use_polling)) { + usb_callout_reset(&xfer->timeout_handle, + USBD_MS_TO_TICKS(xfer->timeout), + (void *)&at9100_dci_timeout, xfer); + } } else { - /* NULL is not a valid thread */ - td = curthread; + /* queue callback for execution */ + usbd_callback_wrapper(xfer, NULL, + USBD_CONTEXT_CALLBACK); + } + return; +} + +static void +at9100_dci_root_intr_done(struct usbd_xfer *xfer, + struct usbd_std_root_transfer *std) +{ + struct at9100_dci_softc *sc = xfer->usb_sc; + + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); + + if (std->state != USBD_STD_ROOT_TR_PRE_DATA) { + if (std->state == USBD_STD_ROOT_TR_PRE_CALLBACK) { + /* transfer transferred */ + at9100_dci_device_done(xfer, std->err); + } + goto done; + } + /* setup buffer */ + std->ptr = sc->sc_hub_idata; + std->len = sizeof(sc->sc_hub_idata); + + /* set port bit */ + sc->sc_hub_idata[0] = 0x02; /* we only have one port */ + +done: + return; +} + +static usbd_status_t +at9100_dci_standard_done_sub(struct usbd_xfer *xfer) +{ + struct at9100_dci_td *td; + uint32_t len; + uint8_t error; + + td = xfer->td_transfer_cache; + + do { + len = td->remainder; + + if (xfer->aframes != xfer->nframes) { + /* + * Verify the length and subtract + * the remainder from "frlengths[]": + */ + if (len > xfer->frlengths[xfer->aframes]) { + td->error = 1; + } else { + xfer->frlengths[xfer->aframes] -= len; + } + } + /* Check for transfer error */ + if (td->error) { + /* the transfer is finished */ + error = 1; + td = NULL; + break; + } + /* Check for short transfer */ + if (len > 0) { + if (xfer->flags_int.short_frames_ok) { + /* follow alt next */ + if (td->alt_next) { + td = td->obj_next; + } else { + td = NULL; + } + } else { + /* the transfer is finished */ + td = NULL; + } + error = 0; + break; + } + td = td->obj_next; + + /* this USB frame is complete */ + error = 0; + break; + + } while (0); + + /* update transfer cache */ + + xfer->td_transfer_cache = td; + + return (error ? + USBD_STALLED : USBD_NORMAL_COMPLETION); +} + +static void +at9100_dci_standard_done(struct usbd_xfer *xfer) +{ + usbd_status_t err = 0; + + DPRINTFN(12, "xfer=%p pipe=%p transfer done\n", + xfer, xfer->pipe); + + /* reset scanner */ + + xfer->td_transfer_cache = xfer->td_transfer_first; + + if (xfer->flags_int.control_xfr) { + + if (xfer->flags_int.control_hdr) { + + err = at9100_dci_standard_done_sub(xfer); + } + xfer->aframes = 1; + + if (xfer->td_transfer_cache == NULL) { + goto done; + } + } + while (xfer->aframes != xfer->nframes) { + + err = at9100_dci_standard_done_sub(xfer); + xfer->aframes++; + + if (xfer->td_transfer_cache == NULL) { + goto done; + } + } + + if (xfer->flags_int.control_xfr && + !xfer->flags_int.control_act) { + + err = at9100_dci_standard_done_sub(xfer); + } +done: + at9100_dci_device_done(xfer, err); + return; +} + +/*------------------------------------------------------------------------* + * at9100_dci_device_done + * + * NOTE: this function can be called more than one time on the + * same USB transfer! + *------------------------------------------------------------------------*/ +static void +at9100_dci_device_done(struct usbd_xfer *xfer, usbd_status_t error) +{ + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); + + DPRINTFN(1, "xfer=%p, pipe=%p, error=%d\n", + xfer, xfer->pipe, error); + + /* dequeue transfer and start next transfer */ + usbd_transfer_dequeue(xfer, error); + return; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:39:13 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E742B16A51C; Wed, 19 Dec 2007 01:39:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DA17416A41B for ; Wed, 19 Dec 2007 01:39:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B4D4E13C4DB for ; Wed, 19 Dec 2007 01:39:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1dBgB006682 for ; Wed, 19 Dec 2007 01:39:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1dB10006679 for perforce@freebsd.org; Wed, 19 Dec 2007 01:39:11 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:39:11 GMT Message-Id: <200712190139.lBJ1dB10006679@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131193 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:39:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=131193 Change 131193 by hselasky@hselasky_laptop001 on 2007/12/19 01:39:10 Structure field spelling fix. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_cdc.h#6 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_cdc.h#6 (text+ko) ==== @@ -102,7 +102,7 @@ uByte iMacAddress; uDWord bmEthernetStatistics; uWord wMaxSegmentSize; - uWord wNumberMCFikters; + uWord wNumberMCFilters; uByte bNumberPowerFilters; } __packed usb_cdc_ethernet_descriptor_t; From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:40:13 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5505A16A46C; Wed, 19 Dec 2007 01:40:13 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1AA6416A420 for ; Wed, 19 Dec 2007 01:40:13 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0E38513C500 for ; Wed, 19 Dec 2007 01:40:13 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1eCXe006792 for ; Wed, 19 Dec 2007 01:40:12 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1eCmY006789 for perforce@freebsd.org; Wed, 19 Dec 2007 01:40:12 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:40:12 GMT Message-Id: <200712190140.lBJ1eCmY006789@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131194 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:40:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=131194 Change 131194 by hselasky@hselasky_laptop001 on 2007/12/19 01:40:07 Add new macro that can be used to build up USB strings. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb.h#26 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb.h#26 (text+ko) ==== @@ -287,6 +287,18 @@ uByte bUnused; } __packed usb_string_descriptor_t; +#define USB_MAKE_STRING_DESC(m,name) \ +struct name { \ + uByte bLength; \ + uByte bDescriptorType; \ + uByte bData[sizeof((uint8_t []){m})]; \ +} __packed; \ +static const struct name name = { \ + .bLength = sizeof(struct name), \ + .bDescriptorType = UDESC_STRING, \ + .bData = { m }, \ +} + #define USB_STRING_DESC_LEN(len) ((2*(len)) + 2) #define USB_LANGUAGE_TABLE 0 /* # of the string language id table */ From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:43:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BDDBB16A41A; Wed, 19 Dec 2007 01:43:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5900116A419 for ; Wed, 19 Dec 2007 01:43:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4CE8D13C474 for ; Wed, 19 Dec 2007 01:43:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1hGbv007556 for ; Wed, 19 Dec 2007 01:43:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1hGex007552 for perforce@freebsd.org; Wed, 19 Dec 2007 01:43:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:43:16 GMT Message-Id: <200712190143.lBJ1hGex007552@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131195 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:43:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131195 Change 131195 by hselasky@hselasky_laptop001 on 2007/12/19 01:42:52 This commit is device side related. Add call to new "set_config" method that is used to configure the hardware for a specific configuration. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_requests.c#14 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_requests.c#14 (text+ko) ==== @@ -652,6 +652,16 @@ PRINTF(("setting config %d\n", conf)); + /* If we have a "set_config" method then call it */ + + if (udev->bus->methods->set_config) { + (udev->bus->methods->set_config) + (udev, (conf == USB_UNCONFIG_NO) ? + NULL : udev->cdesc); + } + if (udev->flags.usb_mode == USB_MODE_DEVICE) { + return (0); /* success */ + } req.bmRequestType = UT_WRITE_DEVICE; req.bRequest = UR_SET_CONFIG; req.wValue[0] = conf; From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:45:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C36AC16A420; Wed, 19 Dec 2007 01:45:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 88E9316A419 for ; Wed, 19 Dec 2007 01:45:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7D1CB13C4D5 for ; Wed, 19 Dec 2007 01:45:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1jJaM008039 for ; Wed, 19 Dec 2007 01:45:19 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1jJAk008036 for perforce@freebsd.org; Wed, 19 Dec 2007 01:45:19 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:45:19 GMT Message-Id: <200712190145.lBJ1jJAk008036@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131196 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:45:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131196 Change 131196 by hselasky@hselasky_laptop001 on 2007/12/19 01:44:56 Some small updates to the USB bus methods and the USB template system. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#79 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#4 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.h#5 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#79 (text+ko) ==== @@ -113,6 +113,7 @@ struct proc; struct usb_device; /* Linux compat */ struct cdev; +struct intr_event; typedef uint8_t usbd_status_t; @@ -120,8 +121,6 @@ typedef void (usbd_std_root_transfer_func_t)(struct usbd_xfer *, struct usbd_std_root_transfer *); -typedef struct usbd_hw_ep_profile * (usbd_get_hw_ep_profile_t)(struct usbd_device *udev, uint8_t ep_addr); - /* USB modes */ enum { @@ -161,11 +160,27 @@ }; struct usbd_bus_methods { + + /* USB Device and Host mode - Mandatory */ + void (*pipe_init) (struct usbd_device *udev, usb_endpoint_descriptor_t *edesc, struct usbd_pipe *pipe); void (*do_poll) (struct usbd_bus *); void (*xfer_setup) (struct usbd_setup_params *parm); void (*xfer_unsetup) (struct usbd_xfer *xfer); - usbd_get_hw_ep_profile_t *get_hw_ep_profile; + + /* USB Device and Host mode - Optional */ + + void (*set_config) (struct usbd_device *udev, usb_config_descriptor_t *cd); + void (*set_address) (struct usbd_device *udev, uint8_t addr); + + /* USB Device mode only - Mandatory */ + + void (*get_hw_ep_profile)(struct usbd_device *udev, const struct usbd_hw_ep_profile **ppf, uint8_t ep_addr); + void (*set_stall) (struct usbd_device *udev, struct usbd_xfer *xfer, struct usbd_pipe *pipe); + void (*clear_stall) (struct usbd_device *udev, struct usbd_pipe *pipe); + + /* USB Device mode only - Optional */ + void (*vbus_interrupt) (struct usbd_bus *, uint8_t is_on); }; struct usbd_pipe_methods { @@ -176,11 +191,6 @@ void (*close) (struct usbd_xfer *xfer); void (*enter) (struct usbd_xfer *xfer); void (*start) (struct usbd_xfer *xfer); - - /* USB Device mode only: */ - - void (*set_stall) (struct usbd_device *udev, struct usbd_xfer *xfer, struct usbd_pipe *pipe); - void (*clear_stall) (struct usbd_device *udev, struct usbd_pipe *pipe); }; struct usbd_port { @@ -279,13 +289,13 @@ struct usbd_hw_ep_profile { uint16_t max_frame_size; uint8_t is_simplex:1; - uint8_t is_multi_buffer:1; + uint8_t support_multi_buffer:1; uint8_t support_bulk:1; uint8_t support_control:1; uint8_t support_interrupt:1; uint8_t support_isochronous:1; - uint8_t support_in:1; - uint8_t support_out:1; + uint8_t support_in:1; /* IN-token is supported */ + uint8_t support_out:1; /* OUT-token is supported */ }; struct usbd_sw_ep_scratch { @@ -303,7 +313,7 @@ struct usbd_sw_ep_scratch *ep_max; usb_config_descriptor_t *cd; struct usbd_device *udev; - usbd_get_hw_ep_profile_t *get_hw_ep_profile; + struct usbd_bus_methods *methods; uint8_t bmOutAlloc[(USB_MAX_ENDPOINTS+15)/16]; uint8_t bmInAlloc[(USB_MAX_ENDPOINTS+15)/16]; }; @@ -391,7 +401,8 @@ uint8_t toggle_next:1; /* next data toggle value */ uint8_t is_stalled:1; /* set if pipe is stalled */ - uint8_t unused:6; + uint8_t did_dma_delay:1; /* set if we waited for DMA */ + uint8_t unused:5; uint8_t iface_index; /* not used by "default pipe" */ }; @@ -617,6 +628,7 @@ LIST_HEAD(, usbd_xfer) dma_head; LIST_HEAD(, usbd_xfer) done_head; + struct intr_event *done_event; /* software interrupt event */ void *done_cookie; /* software interrupt thread cookie */ void *memory_base; struct mtx *priv_mtx; ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#4 (text+ko) ==== @@ -117,33 +117,41 @@ ed->bmAttributes = ted->bmAttributes; USETW(ed->wMaxPacketSize, mps); - switch (et) { - case UE_BULK: - case UE_CONTROL: - ed->bInterval = 0; /* not used */ - break; - case UE_INTERRUPT: - switch (temp->usb_speed) { - case USB_SPEED_LOW: - case USB_SPEED_FULL: - ed->bInterval = 1; /* 1 ms */ + /* setup bInterval parameter */ + + if (ted->pIntervals && + ted->pIntervals->bInterval[temp->usb_speed]) { + ed->bInterval = + ted->pIntervals->bInterval[temp->usb_speed]; + } else { + switch (et) { + case UE_BULK: + case UE_CONTROL: + ed->bInterval = 0; /* not used */ break; - default: - ed->bInterval = 8; /* 8*125 us */ + case UE_INTERRUPT: + switch (temp->usb_speed) { + case USB_SPEED_LOW: + case USB_SPEED_FULL: + ed->bInterval = 1; /* 1 ms */ + break; + default: + ed->bInterval = 8; /* 8*125 us */ + break; + } break; - } - break; - default: /* UE_ISOCHRONOUS */ - switch (temp->usb_speed) { - case USB_SPEED_LOW: - case USB_SPEED_FULL: - ed->bInterval = 1; /* 1 ms */ - break; - default: - ed->bInterval = 1; /* 125 us */ + default: /* UE_ISOCHRONOUS */ + switch (temp->usb_speed) { + case USB_SPEED_LOW: + case USB_SPEED_FULL: + ed->bInterval = 1; /* 1 ms */ + break; + default: + ed->bInterval = 1; /* 125 us */ + break; + } break; } - break; } } return; @@ -406,7 +414,7 @@ } } /* get HW endpoint profile */ - pf = (ues->get_hw_ep_profile) (ues->udev, n); + (ues->methods->get_hw_ep_profile) (ues->udev, &pf, n); if (pf == NULL) { /* end of profiles */ break; @@ -624,18 +632,18 @@ { struct usbd_hw_ep_scratch *ues; struct usbd_sw_ep_scratch *ep; - struct usbd_hw_ep_profile *pf; - struct usbd_bus *bus; + const struct usbd_hw_ep_profile *pf; + struct usbd_bus_methods *methods; usb_device_descriptor_t *dd; uint16_t mps; if (desc == NULL) { return (USBD_INVAL); } - /* get bus structure */ - bus = udev->bus; + /* get bus methods */ + methods = udev->bus->methods; - if (bus->methods->get_hw_ep_profile == NULL) { + if (methods->get_hw_ep_profile == NULL) { return (USBD_INVAL); } if (desc->bDescriptorType == UDESC_DEVICE) { @@ -646,7 +654,7 @@ dd = (void *)desc; /* get HW control endpoint 0 profile */ - pf = (bus->methods->get_hw_ep_profile) (ues->udev, 0); + (methods->get_hw_ep_profile) (ues->udev, &pf, 0); if (pf == NULL) { return (USBD_INVAL); } @@ -700,7 +708,7 @@ ues->ep_max = ues->ep; ues->cd = (void *)desc; - ues->get_hw_ep_profile = bus->methods->get_hw_ep_profile; + ues->methods = methods; ues->udev = udev; /* Get all the endpoints we need */ ==== //depot/projects/usb/src/sys/dev/usb/usb_template.h#5 (text+ko) ==== @@ -37,9 +37,14 @@ uint16_t mps[USB_SPEED_MAX]; }; +struct usb_temp_interval { + uint8_t bInterval[USB_SPEED_MAX]; +}; + struct usb_temp_endpoint_desc { const void **ppRawDesc; const struct usb_temp_packet_size *pPacketSize; + const struct usb_temp_interval *pIntervals; uint8_t direction; /* UE_DIR_IN or UE_DIR_OUT */ uint8_t bmAttributes; }; From owner-p4-projects@FreeBSD.ORG Wed Dec 19 01:52:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D70B616A418; Wed, 19 Dec 2007 01:52:27 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 748E616A46C for ; Wed, 19 Dec 2007 01:52:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6A08F13C465 for ; Wed, 19 Dec 2007 01:52:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ1qRfW008862 for ; Wed, 19 Dec 2007 01:52:27 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ1qRI9008859 for perforce@freebsd.org; Wed, 19 Dec 2007 01:52:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 01:52:27 GMT Message-Id: <200712190152.lBJ1qRI9008859@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131197 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 01:52:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131197 Change 131197 by hselasky@hselasky_laptop001 on 2007/12/19 01:52:23 Add new control request flag, "USBD_DELAY_STATUS_STAGE", that can be used for USB testing and verification. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb.h#27 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#77 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb.h#27 (text+ko) ==== @@ -577,6 +577,7 @@ int ucr_flags; #define USBD_USE_POLLING 0x0001 /* internal flag */ #define USBD_SHORT_XFER_OK 0x0004 /* allow short reads */ +#define USBD_DELAY_STATUS_STAGE 0x0010 /* insert delay before STATUS stage */ int ucr_actlen; /* actual length transferred */ }; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#77 (text+ko) ==== @@ -3420,6 +3420,12 @@ xfer->flags.use_polling = 0; } + if (flags & USBD_DELAY_STATUS_STAGE) { + xfer->flags.manual_status = 1; + } else { + xfer->flags.manual_status = 0; + } + xfer->timeout = timeout; start_ticks = ticks; @@ -3445,7 +3451,17 @@ xfer->nframes = 2; } else { if (xfer->frlengths[0] == 0) { - break; + if (xfer->flags.manual_status) { + /* + * Delay 70 milliseconds + * before doing the status + * stage: + */ + usbd_pause_mtx(xfer->priv_mtx, 70); + xfer->flags.manual_status = 0; + } else { + break; + } } xfer->nframes = 1; } From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:08:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A44216A41B; Wed, 19 Dec 2007 03:08:10 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CB12F16A417 for ; Wed, 19 Dec 2007 03:08:09 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CC58A13C442 for ; Wed, 19 Dec 2007 03:08:09 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3893r004991 for ; Wed, 19 Dec 2007 03:08:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ389QE004988 for perforce@freebsd.org; Wed, 19 Dec 2007 03:08:09 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:08:09 GMT Message-Id: <200712190308.lBJ389QE004988@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131199 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:08:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131199 Change 131199 by jb@jb_freebsd1 on 2007/12/19 03:07:20 Let's keep all the DTrace hook definitions in one file: dtrace_bsd.h These *MUST* be BSD licensed to keep CDDL code quarantined. Even so, the KDTRACE_HOOKS option lets embedded developers ignore all things DTrace related. I just hope that _everyone_ will have KDTRACE_HOOKS defined. Affected files ... .. //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#3 edit .. //depot/projects/dtrace/src/sys/sys/systm.h#16 edit Differences ... ==== //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#3 (text+ko) ==== @@ -31,6 +31,12 @@ #ifndef _SYS_DTRACE_BSD_H #define _SYS_DTRACE_BSD_H +/* + * Cyclic clock function type definition used to hook the cyclic + * subsystem into the appropriate timer interrupt. + */ +typedef void (*cyclic_clock_func_t)(void); + /* Used by the machine dependent trap() code. */ typedef int (*dtrace_invop_func_t)(uintptr_t, uintptr_t *, uintptr_t); ==== //depot/projects/dtrace/src/sys/sys/systm.h#16 (text+ko) ==== @@ -217,12 +217,6 @@ void realitexpire(void *); -/* - * Cyclic clock function type definition used to hook the cyclic - * subsystem into the appropriate timer interrupt. - */ -typedef void (*cyclic_clock_func_t)(void); - void hardclock(int usermode, uintfptr_t pc); void hardclock_cpu(int usermode); void softclock(void *); From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:10:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C7DF16A419; Wed, 19 Dec 2007 03:10:12 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1220916A417 for ; Wed, 19 Dec 2007 03:10:12 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1388613C46E for ; Wed, 19 Dec 2007 03:10:12 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3ABTo005129 for ; Wed, 19 Dec 2007 03:10:11 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3ABIc005126 for perforce@freebsd.org; Wed, 19 Dec 2007 03:10:11 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:10:11 GMT Message-Id: <200712190310.lBJ3ABIc005126@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131200 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:10:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131200 Change 131200 by jb@jb_freebsd1 on 2007/12/19 03:09:14 Update to reflect the latest DTrace hooks strategy and the realisation that the cyclic timer subsystem will never come out of the CDDL cold. Affected files ... .. //depot/projects/dtrace/src/sys/i386/i386/local_apic.c#14 edit Differences ... ==== //depot/projects/dtrace/src/sys/i386/i386/local_apic.c#14 (text+ko) ==== @@ -35,8 +35,8 @@ __FBSDID("$FreeBSD: src/sys/i386/i386/local_apic.c,v 1.44 2007/09/11 22:54:09 attilio Exp $"); #include "opt_hwpmc_hooks.h" +#include "opt_kdtrace.h" -#include "opt_cyclic.h" #include "opt_ddb.h" #include @@ -66,7 +66,10 @@ #include #endif +#ifdef KDTRACE_HOOKS +#include cyclic_clock_func_t lapic_cyclic_clock_func; +#endif /* Sanity checks on IDT vectors. */ CTASSERT(APIC_IO_INTS + APIC_NUM_IOINTS == APIC_TIMER_INT); @@ -682,8 +685,9 @@ else hardclock_cpu(TRAPF_USERMODE(frame)); +#ifdef KDTRACE_HOOKS /* - * If the cyclic subsystem is configured and a callback + * If the DTrace hooks are configured and a callback * function has been registered, then call it to process * the high speed timers. If this function is registered * here, then there mustn't be a High Performance Event @@ -692,6 +696,7 @@ */ if (lapic_cyclic_clock_func != NULL) (*lapic_cyclic_clock_func)(); +#endif } /* Fire statclock at stathz. */ From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:12:15 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 736B416A418; Wed, 19 Dec 2007 03:12:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AA13616A419 for ; Wed, 19 Dec 2007 03:12:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AB4C613C4E5 for ; Wed, 19 Dec 2007 03:12:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3CE69005741 for ; Wed, 19 Dec 2007 03:12:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3CEqg005738 for perforce@freebsd.org; Wed, 19 Dec 2007 03:12:14 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:12:14 GMT Message-Id: <200712190312.lBJ3CEqg005738@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131201 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:12:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=131201 Change 131201 by jb@jb_freebsd1 on 2007/12/19 03:11:46 There is a whole lot of architecture specific code here. It's all about stuff that I haven't ported yet, so most of it s stubbed out. For the time being, add #ifdefs for each of the current FreeBSD supported architectures so that buildworlds across all don't fail. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_link.c#12 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_link.c#12 (text) ==== @@ -224,11 +224,23 @@ s = &dofs[dofrh->dofr_tgtsec]; for (j = 0; j < nrel; j++) { -#if defined(__i386) || defined(__amd64) +#if defined(__arm__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__ia64__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__i386) || defined(__amd64) rel->r_offset = s->dofs_offset + dofr[j].dofr_offset; rel->r_info = ELF32_R_INFO(count + dep->de_global, R_386_32); +#elif defined(__mips__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__powerpc__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); #elif defined(__sparc) /* * Add 4 bytes to hit the low half of this 64-bit @@ -402,7 +414,15 @@ for (j = 0; j < nrel; j++) { printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); #ifdef DOODAD -#if defined(__i386) || defined(__amd64) +#if defined(__arm__) +/* XXX */ +#elif defined(__ia64__) +/* XXX */ +#elif defined(__mips__) +/* XXX */ +#elif defined(__powerpc__) +/* XXX */ +#elif defined(__i386) || defined(__amd64) rel->r_offset = s->dofs_offset + dofr[j].dofr_offset; rel->r_info = ELF64_R_INFO(count + dep->de_global, @@ -499,7 +519,19 @@ elf_file.ehdr.e_ident[EI_DATA] = ELFDATA2LSB; #endif elf_file.ehdr.e_type = ET_REL; -#if defined(__sparc) +#if defined(__arm__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__ia64__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__mips__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__powerpc__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__sparc) elf_file.ehdr.e_machine = EM_SPARC; #elif defined(__i386) || defined(__amd64) elf_file.ehdr.e_machine = EM_386; @@ -636,7 +668,19 @@ elf_file.ehdr.e_ident[EI_DATA] = ELFDATA2LSB; #endif elf_file.ehdr.e_type = ET_REL; -#if defined(__sparc) +#if defined(__arm__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__ia64__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__mips__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__powerpc__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__sparc) elf_file.ehdr.e_machine = EM_SPARCV9; #elif defined(__i386) || defined(__amd64) elf_file.ehdr.e_machine = EM_AMD64; @@ -752,7 +796,44 @@ return (ret); } -#if defined(__sparc) +#if defined(__arm__) +/* XXX */ +static int +dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela, + uint32_t *off) +{ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); + return (0); +} +#elif defined(__ia64__) +/* XXX */ +static int +dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela, + uint32_t *off) +{ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); + return (0); +} +#elif defined(__mips__) +/* XXX */ +static int +dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela, + uint32_t *off) +{ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); + return (0); +} +#elif defined(__powerpc__) +/* XXX */ +static int +dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela, + uint32_t *off) +{ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); + return (0); +} + +#elif defined(__sparc) #define DT_OP_RET 0x81c7e008 #define DT_OP_NOP 0x01000000 @@ -1046,7 +1127,19 @@ if (dtp->dt_oflags & DTRACE_O_LP64) { eclass = ELFCLASS64; -#if defined(__sparc) +#if defined(__arm__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__ia64__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__mips__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__powerpc__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__sparc) emachine1 = emachine2 = EM_SPARCV9; #elif defined(__i386) || defined(__amd64) emachine1 = emachine2 = EM_AMD64; @@ -1054,7 +1147,19 @@ symsize = sizeof (Elf64_Sym); } else { eclass = ELFCLASS32; -#if defined(__sparc) +#if defined(__arm__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__ia64__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__mips__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__powerpc__) +/* XXX */ +printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__); +#elif defined(__sparc) emachine1 = EM_SPARC; emachine2 = EM_SPARC32PLUS; #elif defined(__i386) || defined(__amd64) From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:13:16 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CEA916A46B; Wed, 19 Dec 2007 03:13:16 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D68B216A419 for ; Wed, 19 Dec 2007 03:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D860A13C447 for ; Wed, 19 Dec 2007 03:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3DFxG005987 for ; Wed, 19 Dec 2007 03:13:15 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3DFUh005984 for perforce@freebsd.org; Wed, 19 Dec 2007 03:13:15 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:13:15 GMT Message-Id: <200712190313.lBJ3DFUh005984@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131202 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:13:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=131202 Change 131202 by jb@jb_freebsd1 on 2007/12/19 03:12:18 WIP Affected files ... .. //depot/projects/dtrace/src/sys/modules/cyclic/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/modules/cyclic/Makefile#3 (text+ko) ==== @@ -1,19 +1,17 @@ # $FreeBSD# -.include "../dtrace/Makefile.inc" - -.PATH: ${.CURDIR}/../../cddl/kern -.PATH: ${.CURDIR}/../../cddl/${MACHINE_ARCH} +.PATH: ${.CURDIR}/../../contrib/opensolaris/uts/common/os KMOD= cyclic -SRCS= cyclic.c \ - cyclic_machdep.c \ - kern_cyclic.c +SRCS= cyclic.c SRCS+= bus_if.h device_if.h vnode_if.h -CFLAGS+= -I${.CURDIR}/../../cddl/dev/dtrace \ - -I${.CURDIR}/../../contrib/opensolaris/compat \ +CFLAGS+= -I${.CURDIR}/../../compat/opensolaris \ -I${.CURDIR}/../../contrib/opensolaris/uts/common \ -I${.CURDIR}/../.. +CFLAGS+= -DDEBUG=1 + +IGNORE_PRAGMA= 1 + .include From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:15:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5EC7416A41A; Wed, 19 Dec 2007 03:15:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A1DAE16A417 for ; Wed, 19 Dec 2007 03:15:18 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A3A8F13C44B for ; Wed, 19 Dec 2007 03:15:18 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3FI4C006510 for ; Wed, 19 Dec 2007 03:15:18 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3FIcS006507 for perforce@freebsd.org; Wed, 19 Dec 2007 03:15:18 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:15:18 GMT Message-Id: <200712190315.lBJ3FIcS006507@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131203 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:15:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131203 Change 131203 by jb@jb_freebsd1 on 2007/12/19 03:14:17 Add a temporary hack to allow all architectures to compile even if architecture-specific code hasn't been written. This causes all oether arches to be treated as though they are Intel based. Intel's gonna luv me 4 dis. :-) Affected files ... .. //depot/projects/dtrace/src/cddl/lib/libdtrace/Makefile#16 edit Differences ... ==== //depot/projects/dtrace/src/cddl/lib/libdtrace/Makefile#16 (text+ko) ==== @@ -69,6 +69,9 @@ CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel .elif ${MACHINE_ARCH} == "sparc64" CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc +.else +# temporary hack +CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel .endif LFLAGS+=-l From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:17:22 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F134D16A468; Wed, 19 Dec 2007 03:17:21 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7EE6716A420 for ; Wed, 19 Dec 2007 03:17:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 80E4E13C448 for ; Wed, 19 Dec 2007 03:17:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3HLef006628 for ; Wed, 19 Dec 2007 03:17:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3HLYT006625 for perforce@freebsd.org; Wed, 19 Dec 2007 03:17:21 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:17:21 GMT Message-Id: <200712190317.lBJ3HLYT006625@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131204 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:17:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=131204 Change 131204 by jb@jb_freebsd1 on 2007/12/19 03:17:12 getopt(3) returns an integer. Even on Solaris. The use of EOF is inappropriate. getopt(3) returns nothing associated with a stream file. On FreeBSD/arm, char is unsigned, so using the wrong variable type cases a valid compiler warning. This is a good example of why all code should compile cleanly. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/cmd/dtrace/dtrace.c#11 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/cmd/dtrace/dtrace.c#11 (text) ==== @@ -1202,8 +1202,8 @@ g_ofp = stdout; int done = 0, mode = 0; - int err, i; - char c, *p, **v; + int err, i, c; + char *p, **v; struct ps_prochandle *P; pid_t pid; @@ -1230,7 +1230,7 @@ * options into g_argv[], and abort if any invalid options are found. */ for (optind = 1; optind < argc; optind++) { - while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != EOF) { + while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != -1) { switch (c) { case '3': if (strcmp(optarg, "2") != 0) { @@ -1413,7 +1413,7 @@ * this time; these will compiled as part of the fourth processing pass. */ for (optind = 1; optind < argc; optind++) { - while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != EOF) { + while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != -1) { switch (c) { case 'a': if (dtrace_setopt(g_dtp, "grabanon", 0) != 0) @@ -1570,7 +1570,7 @@ * may been affected by any library options set by the second pass. */ for (optind = 1; optind < argc; optind++) { - while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != EOF) { + while ((c = getopt(argc, argv, DTRACE_OPTSTR)) != -1) { switch (c) { case 'c': if ((v = make_argv(optarg)) == NULL) From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:19:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 675AE16A46C; Wed, 19 Dec 2007 03:19:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E0AE316A468 for ; Wed, 19 Dec 2007 03:19:23 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CAA4A13C465 for ; Wed, 19 Dec 2007 03:19:23 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3JN9r006704 for ; Wed, 19 Dec 2007 03:19:23 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3JNWG006701 for perforce@freebsd.org; Wed, 19 Dec 2007 03:19:23 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:19:23 GMT Message-Id: <200712190319.lBJ3JNWG006701@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131205 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:19:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131205 Change 131205 by jb@jb_freebsd1 on 2007/12/19 03:18:23 Map Solaris' casptr to our atomic_cmpset_ptr. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/atomic.h#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/compat/opensolaris/sys/atomic.h#5 (text+ko) ==== @@ -32,6 +32,8 @@ #include #include +#define casptr atomic_cmpset_ptr + #ifndef __LP64__ extern void atomic_add_64(volatile uint64_t *target, int64_t delta); extern void *atomic_cas_ptr(volatile void *target, void *cmp, void *newval); From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:20:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4092B16A420; Wed, 19 Dec 2007 03:20:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0646016A419 for ; Wed, 19 Dec 2007 03:20:25 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 08B4913C468 for ; Wed, 19 Dec 2007 03:20:25 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3KOKQ006903 for ; Wed, 19 Dec 2007 03:20:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3KORI006899 for perforce@freebsd.org; Wed, 19 Dec 2007 03:20:24 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:20:24 GMT Message-Id: <200712190320.lBJ3KORI006899@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131206 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:20:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131206 Change 131206 by jb@jb_freebsd1 on 2007/12/19 03:20:19 Add some hacks to define the other architectures that FreeBSD supports. The definitions aren't expected to be accurate here. I just need the code to compile on all archs. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/isa_defs.h#11 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/isa_defs.h#11 (text) ==== @@ -216,7 +216,7 @@ * The following set of definitions characterize Solaris on AMD's * 64-bit systems. */ -#if defined(__x86_64) || defined(__amd64) +#if defined(__x86_64) || defined(__amd64) || defined(__ia64__) #if !defined(__amd64) #define __amd64 /* preferred guard */ @@ -336,6 +336,51 @@ #define _DONT_USE_1275_GENERIC_NAMES #define _HAVE_CPUID_INSN +#elif defined(__arm__) + +/* + * Define the appropriate "processor characteristics" + */ +#define _STACK_GROWS_DOWNWARD +#define _LONG_LONG_LTOH +#define _BIT_FIELDS_LTOH +#define _IEEE_754 +#define _CHAR_IS_SIGNED +#define _BOOL_ALIGNMENT 1 +#define _CHAR_ALIGNMENT 1 +#define _SHORT_ALIGNMENT 2 +#define _INT_ALIGNMENT 4 +#define _FLOAT_ALIGNMENT 4 +#define _FLOAT_COMPLEX_ALIGNMENT 4 +#define _LONG_ALIGNMENT 4 +#define _LONG_LONG_ALIGNMENT 4 +#define _DOUBLE_ALIGNMENT 4 +#define _DOUBLE_COMPLEX_ALIGNMENT 4 +#define _LONG_DOUBLE_ALIGNMENT 4 +#define _LONG_DOUBLE_COMPLEX_ALIGNMENT 4 +#define _POINTER_ALIGNMENT 4 +#define _MAX_ALIGNMENT 4 +#define _ALIGNMENT_REQUIRED 0 + +#define _LONG_LONG_ALIGNMENT_32 _LONG_LONG_ALIGNMENT + +/* + * Define the appropriate "implementation choices". + */ +#define _ILP32 +#if !defined(_I32LPx) && defined(_KERNEL) +#define _I32LPx +#endif +#define _SUNOS_VTOC_16 +#define _DMA_USES_PHYSADDR +#define _FIRMWARE_NEEDS_FDISK +#define _PSM_MODULES +#define _RTC_CONFIG +#define _DONT_USE_1275_GENERIC_NAMES +#define _HAVE_CPUID_INSN + +#elif defined(__powerpc__) + /* * The following set of definitions characterize the Solaris on SPARC systems. * From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:24:30 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E76CC16A469; Wed, 19 Dec 2007 03:24:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7BF0D16A41B for ; Wed, 19 Dec 2007 03:24:29 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7E4E813C4D5 for ; Wed, 19 Dec 2007 03:24:29 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3OT5O008006 for ; Wed, 19 Dec 2007 03:24:29 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3OTZl008003 for perforce@freebsd.org; Wed, 19 Dec 2007 03:24:29 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:24:29 GMT Message-Id: <200712190324.lBJ3OTZl008003@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131207 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:24:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=131207 Change 131207 by jb@jb_freebsd1 on 2007/12/19 03:24:25 Rather than just accepting compiler warnings given that the code has been linted, let's just code it cleanly. This is necessary for FreeBSD/arm. gcc 4.2 gets stroppy if it thinks we're dereferencing pointers that aren't 32-bit aligned. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/dump/dump.c#9 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/dump/dump.c#9 (text) ==== @@ -203,9 +203,8 @@ static int print_labeltable(const ctf_header_t *hp, const ctf_data_t *cd) { - /* LINTED - pointer alignment */ - const ctf_lblent_t *ctl = (ctf_lblent_t *)(cd->cd_ctfdata + - hp->cth_lbloff); + void *v = (void *) (cd->cd_ctfdata + hp->cth_lbloff); + const ctf_lblent_t *ctl = v; ulong_t i, n = (hp->cth_objtoff - hp->cth_lbloff) / sizeof (*ctl); print_line("- Label Table "); @@ -267,8 +266,8 @@ static int read_data(const ctf_header_t *hp, const ctf_data_t *cd) { - /* LINTED - pointer alignment */ - const ushort_t *idp = (ushort_t *)(cd->cd_ctfdata + hp->cth_objtoff); + void *v = (void *) (cd->cd_ctfdata + hp->cth_objtoff); + const ushort_t *idp = v; ulong_t n = (hp->cth_funcoff - hp->cth_objtoff) / sizeof (ushort_t); if (flags != F_STATS) @@ -311,11 +310,11 @@ static int read_funcs(const ctf_header_t *hp, const ctf_data_t *cd) { - /* LINTED - pointer alignment */ - const ushort_t *fp = (ushort_t *)(cd->cd_ctfdata + hp->cth_funcoff); + void *v = (void *) (cd->cd_ctfdata + hp->cth_funcoff); + const ushort_t *fp = v; - /* LINTED - pointer alignment */ - const ushort_t *end = (ushort_t *)(cd->cd_ctfdata + hp->cth_typeoff); + v = (void *) (cd->cd_ctfdata + hp->cth_typeoff); + const ushort_t *end = v; ulong_t id; int symidx; @@ -388,11 +387,11 @@ static int read_types(const ctf_header_t *hp, const ctf_data_t *cd) { - /* LINTED - pointer alignment */ - const ctf_type_t *tp = (ctf_type_t *)(cd->cd_ctfdata + hp->cth_typeoff); + void *v = (void *) (cd->cd_ctfdata + hp->cth_typeoff); + const ctf_type_t *tp = v; - /* LINTED - pointer alignment */ - const ctf_type_t *end = (ctf_type_t *)(cd->cd_ctfdata + hp->cth_stroff); + v = (void *) (cd->cd_ctfdata + hp->cth_stroff); + const ctf_type_t *end = v; ulong_t id; @@ -930,15 +929,15 @@ if (cd.cd_ctflen < sizeof (ctf_preamble_t)) die("%s does not contain a CTF preamble\n", filename); - /* LINTED - pointer alignment */ - pp = (const ctf_preamble_t *)cd.cd_ctfdata; + void *v = (void *) cd.cd_ctfdata; + pp = v; if (pp->ctp_magic != CTF_MAGIC) die("%s does not appear to contain CTF data\n", filename); if (pp->ctp_version == CTF_VERSION) { - /* LINTED - pointer alignment */ - hp = (ctf_header_t *)cd.cd_ctfdata; + v = (void *) cd.cd_ctfdata; + hp = v; cd.cd_ctfdata = (caddr_t)cd.cd_ctfdata + sizeof (ctf_header_t); if (cd.cd_ctflen < sizeof (ctf_header_t)) { From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:26:32 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A57616A419; Wed, 19 Dec 2007 03:26:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA09616A46B for ; Wed, 19 Dec 2007 03:26:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ED4E413C46A for ; Wed, 19 Dec 2007 03:26:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3QVDO008132 for ; Wed, 19 Dec 2007 03:26:31 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3QVnk008129 for perforce@freebsd.org; Wed, 19 Dec 2007 03:26:31 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:26:31 GMT Message-Id: <200712190326.lBJ3QVnk008129@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131208 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:26:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=131208 Change 131208 by jb@jb_freebsd1 on 2007/12/19 03:26:08 Sub out a bit more code that we don't use yet to avoid having to get a fasttrap.h for each of the other archs that FreeBSD supports. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_pid.c#9 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_pid.c#9 (text) ==== @@ -78,6 +78,7 @@ } #endif +#ifdef DOODAD static int dt_pid_error(dtrace_hdl_t *dtp, dt_pcb_t *pcb, dt_proc_t *dpr, fasttrap_probe_spec_t *ftp, dt_errtag_t tag, const char *fmt, ...) @@ -104,6 +105,7 @@ return (1); } +#endif #ifdef DOODAD static int @@ -637,8 +639,10 @@ } if (last == NULL || (*(++last) == '\0')) { +#ifdef DOODAD (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPROV, "'%s' is not a valid provider", pdp->dtpd_provider); +#endif return (-1); } @@ -646,8 +650,10 @@ pid = strtol(last, &end, 10); if (errno != 0 || end == last || end[0] != '\0' || pid <= 0) { +#ifdef DOODAD (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPID, "'%s' does not contain a valid pid", pdp->dtpd_provider); +#endif return (-1); } From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:27:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A15416A418; Wed, 19 Dec 2007 03:27:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3FE2616A41B for ; Wed, 19 Dec 2007 03:27:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4335213C45D for ; Wed, 19 Dec 2007 03:27:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3RX7S008202 for ; Wed, 19 Dec 2007 03:27:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3RXa8008199 for perforce@freebsd.org; Wed, 19 Dec 2007 03:27:33 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:27:33 GMT Message-Id: <200712190327.lBJ3RXa8008199@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131209 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:27:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131209 Change 131209 by jb@jb_freebsd1 on 2007/12/19 03:27:31 A couple of our arches have variables that are the same size, so we need to leave those out to avoid duplicate case entries. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_printf.c#8 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_printf.c#8 (text) ==== @@ -306,9 +306,11 @@ case sizeof (double): return (dt_printf(dtp, fp, format, *((double *)addr) / n)); +#if !defined(__arm__) && !defined(__powerpc__) case sizeof (long double): return (dt_printf(dtp, fp, format, *((long double *)addr) / ldn)); +#endif default: return (dt_set_errno(dtp, EDT_DMISMATCH)); } From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:28:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3436C16A420; Wed, 19 Dec 2007 03:28:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 92D7D16A419 for ; Wed, 19 Dec 2007 03:28:34 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 960B113C45A for ; Wed, 19 Dec 2007 03:28:34 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3SYsW008247 for ; Wed, 19 Dec 2007 03:28:34 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3SYp3008244 for perforce@freebsd.org; Wed, 19 Dec 2007 03:28:34 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:28:34 GMT Message-Id: <200712190328.lBJ3SYp3008244@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131210 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:28:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=131210 Change 131210 by jb@jb_freebsd1 on 2007/12/19 03:28:17 Fix more pointer alignment warnings. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/ctf.c#12 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/ctf.c#12 (text) ==== @@ -661,8 +661,8 @@ dptr = data + h->cth_typeoff; while (dptr < data + h->cth_stroff) { - /* LINTED - pointer alignment */ - ctf_type_t *ctt = (ctf_type_t *)dptr; + void *v = (void *) dptr; + ctf_type_t *ctt = v; size_t vlen = CTF_INFO_VLEN(ctt->ctt_info); size_t size, increment; @@ -733,9 +733,9 @@ int lastidx = 0, baseidx = -1; char *baselabel = NULL; ctf_lblent_t *ctl; + void *v = (void *) buf; - /* LINTED - pointer alignment */ - for (ctl = (ctf_lblent_t *)buf; (caddr_t)ctl < buf + bufsz; ctl++) { + for (ctl = v; (caddr_t)ctl < buf + bufsz; ctl++) { char *label = sbuf + ctl->ctl_label; lastidx = ctl->ctl_typeidx; @@ -779,8 +779,8 @@ symit_reset(si); for (dptr = buf; dptr < buf + bufsz; dptr += 2) { - /* LINTED - pointer alignment */ - ushort_t id = *((ushort_t *)dptr); + void *v = (void *) dptr; + ushort_t id = *((ushort_t *)v); iidesc_t *ii; GElf_Sym *sym; @@ -827,8 +827,8 @@ symit_reset(si); while (dptr < buf + bufsz) { - /* LINTED - pointer alignment */ - info = *((ushort_t *)dptr); + void *v = (void *) dptr; + info = *((ushort_t *)v); dptr += 2; if (!(sym = symit_next(si, STT_FUNC)) && info != 0) @@ -840,8 +840,8 @@ continue; } - /* LINTED - pointer alignment */ - retid = *((ushort_t *)dptr); + v = (void *) dptr; + retid = *((ushort_t *)v); dptr += 2; if (retid >= tdsize) @@ -860,8 +860,8 @@ xmalloc(sizeof (tdesc_t *) * ii->ii_nargs); for (i = 0; i < ii->ii_nargs; i++, dptr += 2) { - /* LINTED - pointer alignment */ - ushort_t id = *((ushort_t *)dptr); + v = (void *) dptr; + ushort_t id = *((ushort_t *)v); if (id >= tdsize) parseterminate("Reference to invalid type %d", id); @@ -921,8 +921,8 @@ if (tid >= tdsize) parseterminate("Reference to invalid type %d", tid); - /* LINTED - pointer alignment */ - ctt = (ctf_type_t *)dptr; + void *v = (void *) dptr; + ctt = v; get_ctt_size(ctt, &size, &increment); dptr += increment; @@ -946,8 +946,8 @@ tdp->t_type = INTRINSIC; tdp->t_size = size; - /* LINTED - pointer alignment */ - data = *((uint_t *)dptr); + v = (void *) dptr; + data = *((uint_t *)v); dptr += sizeof (uint_t); encoding = CTF_INT_ENCODING(data); @@ -973,8 +973,8 @@ tdp->t_type = INTRINSIC; tdp->t_size = size; - /* LINTED - pointer alignment */ - data = *((uint_t *)dptr); + v = (void *) dptr; + data = *((uint_t *)v); dptr += sizeof (uint_t); ip = xcalloc(sizeof (intr_t)); @@ -994,8 +994,8 @@ tdp->t_type = ARRAY; tdp->t_size = size; - /* LINTED - pointer alignment */ - cta = (ctf_array_t *)dptr; + v = (void *) dptr; + cta = v; dptr += sizeof (ctf_array_t); tdp->t_ardef = xmalloc(sizeof (ardef_t)); @@ -1012,9 +1012,8 @@ if (size < CTF_LSTRUCT_THRESH) { for (i = 0, mpp = &tdp->t_members; i < vlen; i++, mpp = &((*mpp)->ml_next)) { - /* LINTED - pointer alignment */ - ctf_member_t *ctm = (ctf_member_t *) - dptr; + v = (void *) dptr; + ctf_member_t *ctm = v; dptr += sizeof (ctf_member_t); *mpp = xmalloc(sizeof (mlist_t)); @@ -1027,9 +1026,8 @@ } else { for (i = 0, mpp = &tdp->t_members; i < vlen; i++, mpp = &((*mpp)->ml_next)) { - /* LINTED - pointer alignment */ - ctf_lmember_t *ctlm = (ctf_lmember_t *) - dptr; + v = (void *) dptr; + ctf_lmember_t *ctlm = v; dptr += sizeof (ctf_lmember_t); *mpp = xmalloc(sizeof (mlist_t)); @@ -1052,8 +1050,8 @@ for (i = 0, epp = &tdp->t_emem; i < vlen; i++, epp = &((*epp)->el_next)) { - /* LINTED - pointer alignment */ - cte = (ctf_enum_t *)dptr; + v = (void *) dptr; + cte = v; dptr += sizeof (ctf_enum_t); *epp = xmalloc(sizeof (elist_t)); @@ -1088,9 +1086,8 @@ tdp->t_fndef = xcalloc(sizeof (fndef_t)); tdp->t_fndef->fn_ret = tdarr[ctt->ctt_type]; - /* LINTED - pointer alignment */ - if (vlen > 0 && *(ushort_t *)(dptr + - (sizeof (ushort_t) * (vlen - 1))) == 0) + v = (void *) (dptr + (sizeof (ushort_t) * (vlen - 1))); + if (vlen > 0 && *(ushort_t *)v == 0) tdp->t_fndef->fn_vargs = 1; tdp->t_fndef->fn_nargs = vlen - tdp->t_fndef->fn_vargs; @@ -1098,8 +1095,8 @@ vlen - tdp->t_fndef->fn_vargs); for (i = 0; i < vlen; i++) { - /* LINTED - pointer alignment */ - argid = *(ushort_t *)dptr; + v = (void *) dptr; + argid = *(ushort_t *)v; dptr += sizeof (ushort_t); if (argid != 0) @@ -1229,8 +1226,8 @@ if (bufsz < sizeof (ctf_header_t)) parseterminate("Corrupt CTF - short header"); - /* LINTED - pointer alignment */ - h = (ctf_header_t *)buf; + void *v = (void *) buf; + h = v; buf += sizeof (ctf_header_t); bufsz -= sizeof (ctf_header_t); From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:29:36 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34FE316A421; Wed, 19 Dec 2007 03:29:36 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EECF916A417 for ; Wed, 19 Dec 2007 03:29:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F258513C448 for ; Wed, 19 Dec 2007 03:29:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3TZkO008277 for ; Wed, 19 Dec 2007 03:29:35 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3TZv3008274 for perforce@freebsd.org; Wed, 19 Dec 2007 03:29:35 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:29:35 GMT Message-Id: <200712190329.lBJ3TZv3008274@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131211 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:29:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=131211 Change 131211 by jb@jb_freebsd1 on 2007/12/19 03:28:56 WIP Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#4 edit .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic_impl.h#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#4 (text) ==== @@ -558,7 +558,10 @@ #include #include #include + +#if defined(sun) #include +#endif #ifdef CYCLIC_TRACE @@ -598,7 +601,7 @@ break; if (cyc_coverage[ndx].cyv_why != NULL || - casptr(&cyc_coverage[ndx].cyv_why, NULL, why) != NULL) { + casptr(&cyc_coverage[ndx].cyv_why, NULL, why) != 0) { if (++ndx == CY_NCOVERAGE) ndx = 0; ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic_impl.h#2 (text) ==== @@ -425,7 +425,7 @@ } cyc_backend_t; extern void cyclic_init(cyc_backend_t *be, hrtime_t resolution); -extern void cyclic_mp_init(); +extern void cyclic_mp_init(void); #ifdef DEBUG #define CYCLIC_TRACE @@ -483,7 +483,7 @@ #define CY_NCOVERAGE 127 typedef struct cyc_coverage { - char *cyv_why; + volatile void *cyv_why; int cyv_passive_count; int cyv_count[CY_LEVELS]; uint64_t cyv_arg0; From owner-p4-projects@FreeBSD.ORG Wed Dec 19 03:39:51 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5DE0816A421; Wed, 19 Dec 2007 03:39:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CE2AA16A419 for ; Wed, 19 Dec 2007 03:39:50 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D0A3913C44B for ; Wed, 19 Dec 2007 03:39:50 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ3dogM009809 for ; Wed, 19 Dec 2007 03:39:50 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ3dkFx009806 for perforce@freebsd.org; Wed, 19 Dec 2007 03:39:46 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 03:39:46 GMT Message-Id: <200712190339.lBJ3dkFx009806@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131212 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 03:39:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=131212 Change 131212 by jb@jb_freebsd1 on 2007/12/19 03:39:04 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#54 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/basics/chapter.sgml#7 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/flyer/flyer.tex#5 integrate .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/flyer/Makefile#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/flyer/flyer.tex#1 branch .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#21 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#13 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#18 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/porters-handbook/book.sgml#20 integrate .. //depot/projects/dtrace/ports/MOVED#56 integrate .. //depot/projects/dtrace/ports/UPDATING#41 integrate .. //depot/projects/dtrace/src/bin/mv/mv.c#4 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/gdtoaimp.h#5 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/hexnan.c#5 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/strtod.c#5 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/strtof.c#5 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/strtorQ.c#5 integrate .. //depot/projects/dtrace/src/contrib/gdtoa/strtorx.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/amd64/Symbol.map#4 integrate .. //depot/projects/dtrace/src/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/gdtoa/Symbol.map#6 integrate .. //depot/projects/dtrace/src/lib/libc/i386/Symbol.map#4 integrate .. //depot/projects/dtrace/src/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/ia64/Symbol.map#5 integrate .. //depot/projects/dtrace/src/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/net/nsdispatch.c#7 integrate .. //depot/projects/dtrace/src/lib/libc/sparc64/Symbol.map#5 integrate .. //depot/projects/dtrace/src/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/Symbol.map#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/vfwprintf.c#6 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.c#13 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/strtod.3#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/common.c#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/common.h#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/fetch.3#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/fetch.c#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/ftp.c#6 integrate .. //depot/projects/dtrace/src/lib/libfetch/http.c#6 integrate .. //depot/projects/dtrace/src/lib/libkse/sys/thr_error.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_accept.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_aio_suspend.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_atfork.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_destroy.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_get_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getdetachstate.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getguardsize.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getinheritsched.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getschedpolicy.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getscope.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getstack.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getstackaddr.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_getstacksize.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_init.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setdetachstate.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setguardsize.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setinheritsched.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setschedpolicy.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setscope.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setstack.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setstackaddr.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_attr_setstacksize.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_barrier.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_barrierattr.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_cancel.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_clean.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_close.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_concurrency.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_cond.c#5 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_condattr_destroy.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_condattr_init.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_connect.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_creat.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_create.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_detach.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_equal.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_execve.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_exit.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_fcntl.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_fork.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_fsync.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_getprio.c#3 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_getschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_info.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_init.c#5 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_join.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_kill.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_main_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mattr_init.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mattr_kind_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_msync.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_multi_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mutex.c#7 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mutex_prioceiling.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mutex_protocol.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_mutexattr_destroy.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_nanosleep.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_once.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_open.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_pause.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_poll.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_private.h#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_pselect.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_pspinlock.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_raise.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_read.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_readv.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_resume_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_rwlock.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_rwlockattr.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_select.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_self.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sem.c#3 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_setprio.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_setschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigaction.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigaltstack.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigmask.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigpending.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigprocmask.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigsuspend.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sigwait.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_single_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_sleep.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_spec.c#6 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_spinlock.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_suspend_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_switch_np.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_symbols.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_system.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_tcdrain.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_vfork.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_wait.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_wait4.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_waitpid.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_write.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_writev.c#4 integrate .. //depot/projects/dtrace/src/lib/libkse/thread/thr_yield.c#4 integrate .. //depot/projects/dtrace/src/lib/libstand/bzipfs.c#4 integrate .. //depot/projects/dtrace/src/lib/libstand/gzipfs.c#4 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_mutex.c#16 integrate .. //depot/projects/dtrace/src/lib/libufs/Makefile#5 integrate .. //depot/projects/dtrace/src/lib/libufs/block.c#4 integrate .. //depot/projects/dtrace/src/lib/libufs/bread.3#4 integrate .. //depot/projects/dtrace/src/lib/libufs/libufs.h#5 integrate .. //depot/projects/dtrace/src/lib/msun/Makefile#8 integrate .. //depot/projects/dtrace/src/lib/msun/Symbol.map#7 integrate .. //depot/projects/dtrace/src/lib/msun/amd64/Makefile.inc#4 integrate .. //depot/projects/dtrace/src/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/dtrace/src/lib/msun/i387/Makefile.inc#5 integrate .. //depot/projects/dtrace/src/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/dtrace/src/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/dtrace/src/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/dtrace/src/lib/msun/man/ilogb.3#5 integrate .. //depot/projects/dtrace/src/lib/msun/man/math.3#5 integrate .. //depot/projects/dtrace/src/lib/msun/man/nan.3#1 branch .. //depot/projects/dtrace/src/lib/msun/src/math.h#5 integrate .. //depot/projects/dtrace/src/lib/msun/src/math_private.h#4 integrate .. //depot/projects/dtrace/src/lib/msun/src/s_logb.c#4 integrate .. //depot/projects/dtrace/src/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/dtrace/src/lib/msun/src/s_nan.c#1 branch .. //depot/projects/dtrace/src/lib/msun/src/w_cabs.c#4 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/hardware/article.sgml#4 integrate .. //depot/projects/dtrace/src/release/doc/share/misc/dev.archlist.txt#14 integrate .. //depot/projects/dtrace/src/sbin/atacontrol/atacontrol.c#5 integrate .. //depot/projects/dtrace/src/sbin/growfs/growfs.c#5 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw2.c#14 integrate .. //depot/projects/dtrace/src/sbin/newfs/mkfs.c#6 integrate .. //depot/projects/dtrace/src/sbin/newfs/newfs.8#6 integrate .. //depot/projects/dtrace/src/sbin/newfs/newfs.c#7 integrate .. //depot/projects/dtrace/src/sbin/newfs/newfs.h#6 integrate .. //depot/projects/dtrace/src/share/man/man9/BUS_SETUP_INTR.9#5 integrate .. //depot/projects/dtrace/src/share/misc/Makefile#5 integrate .. //depot/projects/dtrace/src/sys/arm/at91/at91.c#10 integrate .. //depot/projects/dtrace/src/sys/arm/at91/if_ate.c#12 integrate .. //depot/projects/dtrace/src/sys/boot/powerpc/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/Makefile#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/conf.c#5 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/help.ofw#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/ldscript.powerpc#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/metadata.c#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/start.c#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/loader/version#4 delete .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/dtrace/src/sys/cam/cam_xpt.c#15 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#36 integrate .. //depot/projects/dtrace/src/sys/conf/files#58 integrate .. //depot/projects/dtrace/src/sys/conf/files.powerpc#14 integrate .. //depot/projects/dtrace/src/sys/conf/options#35 integrate .. //depot/projects/dtrace/src/sys/conf/options.powerpc#4 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_adapter.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_main.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_offload.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_offload.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_osdep.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/cxgb_sge.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/sys/mvec.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/sys/uipc_mvec.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/t3cdev.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/dtrace/src/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/dtrace/src/sys/dev/usb/uplcom.c#8 integrate .. //depot/projects/dtrace/src/sys/geom/geom_dev.c#5 integrate .. //depot/projects/dtrace/src/sys/geom/geom_io.c#7 integrate .. //depot/projects/dtrace/src/sys/i386/i386/machdep.c#23 integrate .. //depot/projects/dtrace/src/sys/kern/kern_event.c#9 integrate .. //depot/projects/dtrace/src/sys/kern/kern_mbuf.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/kern_mutex.c#17 integrate .. //depot/projects/dtrace/src/sys/kern/kern_rwlock.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/kern_sig.c#17 integrate .. //depot/projects/dtrace/src/sys/kern/kern_sx.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thread.c#18 integrate .. //depot/projects/dtrace/src/sys/kern/kern_umtx.c#19 integrate .. //depot/projects/dtrace/src/sys/kern/sched_4bsd.c#28 integrate .. //depot/projects/dtrace/src/sys/kern/sched_ule.c#20 integrate .. //depot/projects/dtrace/src/sys/kern/subr_lock.c#8 integrate .. //depot/projects/dtrace/src/sys/kern/sys_generic.c#9 integrate .. //depot/projects/dtrace/src/sys/kern/sys_pipe.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_sockbuf.c#7 integrate .. //depot/projects/dtrace/src/sys/modules/Makefile#30 integrate .. //depot/projects/dtrace/src/sys/modules/cxgb/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/dtrace/src/sys/net/if_bridge.c#27 integrate .. //depot/projects/dtrace/src/sys/net/if_lagg.c#6 integrate .. //depot/projects/dtrace/src/sys/net/route.c#11 integrate .. //depot/projects/dtrace/src/sys/net/route.h#5 integrate .. //depot/projects/dtrace/src/sys/netinet/if_ether.c#14 integrate .. //depot/projects/dtrace/src/sys/netinet/if_ether.h#4 integrate .. //depot/projects/dtrace/src/sys/netinet/sctp_bsd_addr.c#6 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp.h#5 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/dtrace/src/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/dtrace/src/sys/netinet/tcp_ofld.c#3 delete .. //depot/projects/dtrace/src/sys/netinet/tcp_ofld.h#3 delete .. //depot/projects/dtrace/src/sys/netinet/tcp_subr.c#19 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_syncache.c#16 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_usrreq.c#12 integrate .. //depot/projects/dtrace/src/sys/netinet/toedev.h#4 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6_pcb.c#12 integrate .. //depot/projects/dtrace/src/sys/netncp/ncp_rq.c#4 integrate .. //depot/projects/dtrace/src/sys/netncp/ncp_sock.c#7 integrate .. //depot/projects/dtrace/src/sys/netncp/ncp_sock.h#4 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_trantcp.c#7 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/GENERIC#13 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/NOTES#10 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/fpu.h#4 integrate .. //depot/projects/dtrace/src/sys/security/mac/mac_posix_sem.c#11 integrate .. //depot/projects/dtrace/src/sys/sys/_lock.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/ata.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/lock_profile.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/proc.h#28 integrate .. //depot/projects/dtrace/src/sys/sys/selinfo.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/socketvar.h#7 integrate .. //depot/projects/dtrace/src/sys/sys/sx.h#7 integrate .. //depot/projects/dtrace/src/sys/sys/systm.h#17 integrate .. //depot/projects/dtrace/src/sys/sys/tty.h#4 integrate .. //depot/projects/dtrace/src/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/dtrace/src/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/dtrace/src/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/dtrace/src/tools/regression/lib/libc/gen/test-wordexp.c#4 integrate .. //depot/projects/dtrace/src/tools/regression/lib/msun/Makefile#6 integrate .. //depot/projects/dtrace/src/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/dtrace/src/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/dtrace/src/tools/regression/lib/msun/test-next.c#5 integrate .. //depot/projects/dtrace/src/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/dtrace/src/tools/regression/usr.bin/sed/regress.sh#5 integrate .. //depot/projects/dtrace/src/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#4 integrate .. //depot/projects/dtrace/src/usr.bin/ipcrm/ipcrm.c#4 integrate .. //depot/projects/dtrace/src/usr.bin/ipcs/ipcs.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/netstat/inet.c#7 integrate .. //depot/projects/dtrace/src/usr.sbin/iostat/iostat.c#6 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/dist.c#10 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/dist.h#7 integrate .. //depot/projects/dtrace/www/en/cgi/query-pr.cgi#11 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#54 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -300,8 +300,8 @@ first must recompile your kernel and include two additional options: - OPTIONS VESA -OPTIONS SC_PIXEL_MODE + options VESA +options SC_PIXEL_MODE Once the kernel has been recompiled with these two options, you can then determine what video modes are supported ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/flyer/flyer.tex#5 (text+ko) ==== @@ -1,4 +1,4 @@ -% Copyright (c) 2004-2006 Marc Fonvieille +% Copyright (c) 2004-2007 Marc Fonvieille % All rights reserved. % % Redistribution and use in source and binary forms, with or without @@ -22,7 +22,7 @@ % OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF % SUCH DAMAGE. % -% $FreeBSD: doc/en_US.ISO8859-1/flyer/flyer.tex,v 1.14 2007/01/14 11:12:45 blackend Exp $ +% $FreeBSD: doc/en_US.ISO8859-1/flyer/flyer.tex,v 1.15 2007/12/16 13:58:35 gabor Exp $ % % FreeBSD Flyer % Use make FORMAT (with FORMAT: pdf, ps or dvi) to build the flyer. @@ -140,7 +140,7 @@ \vspace{5mm} \titledframe{Run a huge number of applications!}{ -FreeBSD comes with over 14000 third party software packages +FreeBSD comes with over 17000 third party software packages ready to be installed including: Apache, Samba, MySQL\reg, OpenOffice.org, KDE, GNOME, MPlayer, etc. \medskip @@ -199,7 +199,7 @@ % % Copyrights \begin{center} -\tiny \copyright 2004-2006 The FreeBSD Project\\ +\tiny \copyright 2004-2007 The FreeBSD Project\\ \ifthenelse{\equal{\logo}{true}}{ FreeBSD and the FreeBSD Logo are registered trademarks of the FreeBSD Foundation.\\} ==== //depot/projects/dtrace/doc/share/sgml/man-refs.ent#21 (text+ko) ==== @@ -20,7 +20,7 @@ lexicographical order by the entity (i.e., the dots used in place of special characters should not be expanded when comparing). - $FreeBSD: doc/share/sgml/man-refs.ent,v 1.444 2007/11/20 12:56:51 blackend Exp $ + $FreeBSD: doc/share/sgml/man-refs.ent,v 1.445 2007/12/16 02:44:04 bmah Exp $ --> @@ -3367,6 +3367,7 @@ + ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#13 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Simplified Chinese Project Original Revision: 1.150 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.16 2007/12/12 05:30:50 loader Exp $ + $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.17 2007/12/17 16:24:09 loader Exp $ --> @@ -177,10 +177,10 @@ ¶à¸ö³ÌÐòµÄÄÜÁ¦¡£ ½öʹÓÃÒ»¸ö¿ØÖÆֻ̨»áÀË·Ñ FreeBSD ͬʱÔËÐжàÈÎÎñµÄÄÜÁ¦¡£ ¶ø ÐéÄâ¿ØÖÆ̨ ÔÚÕâ·½Ãæ·¢»ÓÇ¿´óµÄ¹¦ÄÜ¡£ - FreeBSD ÄÜÅäÖóö¸øÄú²»Í¬ÐèÇóµÄÐéÄâ¿ØÖÆ̨£¬ + FreeBSD ÄÜÅäÖóöÂú×ãÄú²»Í¬ÐèÇóµÄÐéÄâ¿ØÖÆ̨£¬ ÔÚ¼üÅÌÉÏÄúÓÃÒ»×é¼ü¾ÍÄÜ´Ó¸÷¸öÐéÄâ¿ØÖÆ̨֮¼äÇл»¡£ ¸÷¸ö¿ØÖÆ̨ÓÐ×Ô¼ºµÄ´«ÊäͨµÀ£¬ - µ±Äú´Ó¸÷¸ö¿ØÖÆ̨Çл»Ê± FreeBSD + µ±ÄúÔÚ¸÷¸ö¿ØÖÆ̨Çл»Ê± FreeBSD »áÇл»µ½ºÏÊʵļüÅÌ´«ÊäͨµÀºÍÏÔʾÆ÷´«ÊäͨµÀ¡£ FreeBSD ¸÷¸ö¿ØÖÆ̨֮¼ä¿ÉÀûÓÃÌØÊâ×é¼üÇл»²¢±£ÁôÔ­ÓпØÖÆ̨ @@ -407,7 +407,7 @@ 644¡£ ÕâÑùºÜºÃ£¬µ«ÏµÍ³ÔõÑù¶ÔÉ豸½øÐÐȨÏÞ¿ØÖƵÄ? - ÊÂʵÉÏ FreeBSD ½«´ó²¿·ÝÉ豸(µÄÿһ¸öÉ豸)µ±×÷Ò»¸öÎļþ¿´´ý£¬ + ÊÂʵÉÏ FreeBSD ½«´ó²¿·ÝÓ²¼þÉ豸µ±×÷Ò»¸öÎļþ¿´´ý£¬ ÓóÌÐòÄÜ´ò¿ª¡¢¶ÁÈ¡¡¢Ð´ÈëÊý¾Ý¾ÍÈçÆäËûµÄÎļþÒ»Ñù¡£ ¶øÉ豸Îļþ·ÅÔÚ /dev Ŀ¼¡£ @@ -612,7 +612,7 @@ Àí½â FreeBSD µÄĿ¼²ã´Î½á¹¹¶ÔÓÚ½¨Á¢¶ÔϵͳÕûÌåµÄÀí½âÊ®·ÖÖØÒªµÄ»ù´¡¡£ ÆäÖУ¬ ×îÖØÒªµÄ¸ÅÄîÊǸùĿ¼£¬ - /¡£ Õâ¸öĿ¼ÊÇϵͳÒýµ¼Ê±¹Ò½èµÄµÚÒ»¸öĿ¼£¬ + /¡£ Õâ¸öĿ¼ÊÇϵͳÒýµ¼Ê±¹Ò½ÓµÄµÚÒ»¸öĿ¼£¬ Ëü°üº¬ÁËÓÃÒÔ×¼±¸¶àÓû§²Ù×÷ËùÐèµÄ²Ù×÷ϵͳ»ù´¡×é¼þ¡£ ¸ùĿ¼ÖÐÒ²°üº¬ÁËÓÃÓÚÔÚÆô¶¯Ê±×ª»»µ½¶àÓû§Ä£Ê½Ö®Ç°¹Ò½ÓÆäËûÎļþϵͳËùÐèµÄ¹Ò½Óµã¡£ @@ -878,13 +878,14 @@ (.txt) ȥʶ±ðÕâ¸öÎļþÊÇ ³ÌÐò¡¢ Îĵµ£¬ »òÊÇÆäËû¸ñʽµÄÊý¾Ý¡£ - ¸÷ÖÖÎļþ´æ·ÅÔÚĿ¼Àï¡£ Ò»¸öĿ¼¿ÉÒÔº¬ÓÐÐíÐí¶à¶àµÄÎļþ£¬ - ÔÊÐíº¬ÓÐÆäËûµÄĿ¼£¬Í¬ÑùÔÊÐíÄúÌí¼Ó²»Í¬²ã´ÎµÄĿ¼ÔÚÀïÃæ¡£ - ¿ÉÒÔÇáËɵØ×éÖ¯ÄúµÄÊý¾Ý¡£ + ¸÷ÖÖÎļþ´æ·ÅÔÚĿ¼Àï¡£ Ò»¸öĿ¼¿ÉÒÔΪ¿Õ£¬ + Ò²¿ÉÒÔº¬Óжà¸öµÄÎļþ¡£Ò»¸öĿ¼ͬÑù¿ÉÒÔ°üº¬ÆäËûµÄĿ¼£¬ + ÔÊÐíÄúÔÚÒ»¸öĿ¼ÀィÁ¢¶à¸ö²»Í¬²ã´ÎµÄĿ¼¡£ + Õ⽫°ïÖúÄúÇáËɵØ×éÖ¯ÄúµÄÊý¾Ý¡£ - ¿ÉÒÔͨ¹ýÎļþ»òĿ¼ÃûÀ´Ö¸¶¨ÎļþºÍĿ¼£¬ - ÔÚĿ¼ÃûºóÃæ¼ÓÉÏÒ»¸öбÏߣ¬ /£¬ - Èç¹ûÐèÒªµÄ»°¡£ Èç¹ûÄúÓÐÒ»¸öÃûΪ foo + Îļþ»òĿ¼ÊÇÓÉÎļþÃû»òĿ¼Ãû£¬¼ÓÉÏбÏß·ûºÅ /£¬ + ÔÙ¸ù¾ÝÐèÒªÔÚĿ¼ÃûºóÃæ¼ÓÉÏÆäËûĿ¼µÄÃû³Æ¡£ + Èç¹ûÄúÓÐÒ»¸öÃûΪ foo µÄĿ¼£¬ Ëü°üº¬ÁíÒ»¸öĿ¼ bar£¬ ºóÕß°üÀ¨Ò»¸ö½Ð readme.txt µÄÎļþ£¬ ÔòÈ«Ãû£¬ »òÕß˵µ½ÎļþµÄ @@ -966,6 +967,11 @@ ¶øÔÚ /A1 ÀïÔ­ÓеÄÎļþ»áÁÙʱÒþ²Ø¡£ ÏëÕâЩÎļþÔÙ³öÏÖ°Ñ B ´Ó A ¹Ò½ÓÊÍ·Å¡£ + ËùÓÐÔÚB1 »ò B2 + Ŀ¼ÀïµÄÎļþ¶¼¿ÉÒÔͨ¹ý /A1/B1 »ò + /A1/B2 ·ÃÎÊ¡£¶øÔÚ /A1 + ÖÐÔ­ÓеÄÎļþ»á±»ÁÙʱÒþ²Ø£¬Ö±µ½ B ´Ó A + Éϱ»Ð¶ÔØ (unmout) Ϊֹ¡£ °Ñ B ¹Ò½ÓÔÚ A2 ÄÇͼ±íµÄÑù×Ó¾ÍÊÇÕâÑù×Ó: @@ -991,7 +997,7 @@ Õâ¸ö·¾¶·Ö±ðÊÇ /A2/B1 ºÍ /A2/B2 ¡£ - ÎļþϵͳÄܰѶ¥²¿¹Ò½ÓÉÏÁíÒ»¸öÎļþϵͳÉÏ¡£ + ÎļþϵͳÄܰѶ¥²¿¹Ò½ÓÔÚÁíÒ»¸öÎļþϵͳÉÏ¡£ ¼ÌÐøÕâ¸öÀý×Ó£¬ °Ñ C Îļþϵͳ¹Ò½ÓÔÚ B ÎļþϵͳÀïµÄ B1 Ŀ¼£¬ ÅÅÁÐÈçÏÂ: @@ -1044,7 +1050,7 @@ ¼ÙÈçÄúÊìϤ &ms-dos; ²¢ÖªµÀ join ÃüÁ - ¾¡¹Ü²»Ïàͬ£¬ÆäʵÊÇÏàËƵġ£ + ¾¡¹Ü²»Ïàͬ£¬Æäʵ¹¦ÄÜÊÇÏàËƵġ£ Õâ·½Ãæ²»ÊÇÆÕ֪ͨʶ¶øÇÒÉæ¼°µ½Äú×Ô¼ºËù¹ØÐĵģ¬ µ±Äú°²×°FreeBSD²¢ÔÚÒÔºóÌí¼ÓдÅÅÌʱ£¬ @@ -1054,7 +1060,7 @@ µ«µ±ÐèÒªÊÖ¹¤´¦Àíʱ£¬ÕâÊÇÒ»¸öÓÐÓõÄ֪ʶ¡£ - ¶àÑùÐÔÎļþϵͳµÄÒæ´¦ + ¶à¸öÎļþϵͳµÄÒæ´¦ ²»Í¬µÄÎļþϵͳ¿ÉÓò»Í¬µÄ ¹Ò½Ó²ÎÊý¡£ @@ -1069,10 +1075,10 @@ - FreeBSD ¶ÔÒ»¸öÎļþϵͳµÄÎļþ²¼¾Ö×Ô¶¯ÓÅ»¯£¬ - ²¢ÒÀÀµÎļþϵͳµÄʹÓÃÏ°¹ß¡£ - ËùÒÔÒ»¸öÎļþϵͳӦÓÐÒ»¸öÕë¶Ô´óÁ¿Ð¡ÐÍÎļþƵ·±Ð´ÈëµÄÓÅ»¯£¬ - ÁíÍâ´óÐÍÎļþϵͳµÄÓÅ»¯Ò²Ó¦Âäʵ¡£ + FreeBSD Äܸù¾ÝÒ»¸öÎļþϵͳʹÓõÄÇé¿ö×Ô¶¯ÓÅ»¯ + Õâ¸öÎļþϵͳÉϵÄÎļþ²¼¾Ö¡£ + ËùÒÔ¶ÔÒ»¸ö´æ´¢ÁË´óÁ¿Ð¡Îļþ²¢»á±»Æµ·±Ð´ÈëÎļþϵͳµÄÓÅ»¯ÓëÒ»¸ö´æ´¢ÁËÉÙÁ¿´óÎļþµÄÓÅ»¯ÊDz»Í¬µÄ¡£ + ¶øÔÚÒ»¸ö´óµÄµ¥Ò»ÎļþϵͳÉÏÔòÎÞ·¨ÌåÏÖÕâÑùµÄÓÅ»¯¡£ @@ -1083,7 +1089,7 @@ - ͳһÎļþϵͳµÄÒæ´¦ + µ¥Ò»ÎļþϵͳµÄÒæ´¦ ÎļþϵͳÊǹ̶¨´óСµÄ¡£ @@ -1181,14 +1187,14 @@ ad0s5 ÊǵÚÒ»¸ö IDE ´ÅÅÌÖеĵÚÒ»¸ö À©Õ¹ slice¡£ ÎļþϵͳËùʹÓõÄÉ豸Ӧ¸ÃÕ¼Âú slice¡£ - Slices, רÏîÖ¸¶¨ ÎïÀíÇý¶¯Æ÷£¬ - ºÍÆäËûÇý¶¯Æ÷¶¼°üº¬partitions£¬ - ÄǼ¸¸öµÄpartitions¶¼ÊÇÓÃ×Öĸ´Ó a - µ½ hÀ´±ê¶¨µÄ£¬ + Slices, רÓÃÖ¸¶¨ ÎïÀíÇý¶¯Æ÷£¬ + ºÍÆäËûÇý¶¯Æ÷¶¼°üº¬ partitions£¬ + ÄǼ¸¸öµÄ partitions ¶¼ÊÇÓÃ×Öĸ´Ó a + µ½ h À´±ê¶¨µÄ£¬ ¶øÕâЩ×Öĸ¶¼ÔÚÇý¶¯Æ÷Ãû×ÖÖ®ºó£¬ËùÒÔ da0a ÊÇÖ¸Ê׸ödaÉ豸µÄ a partition£¬ ¶øÄǸö¾ÍÊÇ ×¨ÏîÖ¸¶¨¡£ - ad1s3e ÊÇÖ¸IDE´ÅÅ̵ÚÈý¸ösliceµÄµÚÎå¸öpartition¡£ + ad1s3e ÊÇÖ¸IDE´ÅÅÌÉϵÚÈý¸ösliceµÄµÚÎå¸öpartition¡£ ×îÖÕ£¬Ã¿¸ö´ÅÅ̶¼±»ÏµÍ³Ê¶±ð¡£ @@ -1358,8 +1364,8 @@ ÕâÖÖÎļþϵͳ¾ÍÏñÒ»¿ÃÊ÷ÄÇÑùÓÃ/È·Á¢¸ù²¿£¬ ÊDZȽÏÀíÏëµÄÎļþϵͳ¡£ - ¶ø/dev¡¢ /usrºÍÆäËûĿ¼ - ¾ÍÊǸùĿ¼µÄ·ÖÖ¦£¬ + ¶ø/dev¡¢ /usr + ºÍÆäËûĿ¼¾ÍÊǸùĿ¼µÄ·ÖÖ¦£¬ ÁíÍâÕâЩĿ¼¿ÉÒÔÔÙ·ÖÖ¦£¬ÀýÈç/usr/local¡£ @@ -1435,9 +1441,9 @@ dumpfreq - &man.dump.8; ʹÓÃÕâÏîÈ¥¾ö¶¨ÄǸö - Îļþϵͳ±ØÐëÒÆÖü¡£¼ÙÈçȱÉÙÕâÏĬÈϵÄÊýֵΪ0¡£ - + &man.dump.8; + ʹÓÃÕâÏîÈ¥¾ö¶¨ÄǸöÎļþϵͳ±ØÐëÒÆÖü¡£ + ¼ÙÈçȱÉÙÕâÏĬÈϵÄÊýֵΪ0¡£ @@ -1615,17 +1621,17 @@ ½ø³Ì FreeBSD ÊÇÒ»¸ö¶àÈÎÎñ²Ù×÷ϵͳ¡£ - Õâ¾ÍÒâζןÃÏñÒ»´Î¿ÉÒÔÔËÐÐÒ»¸öÒÔÉϵijÌÐò¡£ - ÿ¸öÕ¼ÓÃÒ»¶¨Ê±¼äÔËÐеijÌÐò¾Í½Ðprocess¡£ - ÿ¸ö³ÌÐòÆô¶¯ÔËÐÐʱÖÁÉÙÓÐÒ»¸öнø³Ì£¬²¢ÔÚËùÓÐÔËÐеÄʱºò±£³ÖÓÐÒ»¸öϵͳ½ø³ÌµÄ±àºÅ£¬ - ¶øÒ»Ö±ÓÉϵͳ¶ÔËü¼à¹Ü¡£ + Õâ¾ÍÒâζןÃÏñÒ»´Î¿ÉÒÔÔËÐÐÒ»¸öÒÔÉϵijÌÐò¡£ + ÿ¸öÕ¼ÓÃÒ»¶¨Ê±¼äÔËÐеijÌÐò¾Í½Ð ½ø³Ì (process)¡£ + ÄãÔËÐеÄÿһ¸öÃüÁî»áÖÁÉÙÆô¶¯Ò»¸öнø³Ì£¬»¹ÓкܶàÒ»Ö±ÔËÐÐ×ŵÄϵͳ½ø³Ì£¬ + ÓÃÒÔά³ÖϵͳµÄÕý³£ÔË×÷¡£ ÿ¸ö½ø³ÌÓÃÀ´±êʶµÄÒ»¸ö±àºÅ¾Í½Ð ½ø³Ì ID£¬ »ò½Ð PID¡£ ¶øÇÒ£¬¾ÍÏñÎļþÄÇÑù£¬Ã¿¸ö½ø³ÌÒ²ÓÐËùÊôÓû§ºÍËùÊôȺÌå¡£ ËùÊôÓû§ºÍËùÊôȺÌåʹÓÃÔÚÕâ·½Ãæ:È·¶¨Õâ¸ö½ø³Ì¿ÉÒÔ´ò¿ªÄÇЩÎļþºÍÄÇЩÉ豸£¬ - ´Ó¶øÔÚ³õÆÚʹÓÃÎļþµÄȨÏÞ¡£ ¶àÊýµÄ½ø³Ì¶¼Í¬ÑùÓÐÒ»¸ö¸¸½ø³Ì£¬ + ´Ó¶øÔÚ³õÆÚʹÓÃÎļþµÄȨÏÞ¡£ ¶àÊýµÄ½ø³Ì¶¼ÓÐÒ»¸ö¸¸½ø³Ì£¬ ¶ø½ø³ÌÊÇÒÀ¿¿¸¸½ø³ÌÀ´Æô¶¯µÄ¡£ ÀýÈ磬¼ÙÈçÄú°ÑÃüÁîÊäÈëµ½shellÀïÄÇshellÊÇÒ»¸ö½ø³Ì£¬¶øÄúÔËÐеĸ÷¸öÃüÁîͬÑùÊǽø³Ì£¬ ÄÇô£¬shell¾ÍÊÇÄú¸÷¸öÔËÐнø³ÌµÄ¸¸½ø³Ì¡£ ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#18 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Simplified Chinese Project Original Revision: 1.385 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/install/chapter.sgml,v 1.26 2007/12/12 05:30:51 loader Exp $ + $FreeBSD: doc/zh_CN.GB2312/books/handbook/install/chapter.sgml,v 1.27 2007/12/17 16:24:09 loader Exp $ --> @@ -698,7 +698,7 @@ We can take no responsibility for lost disk contents! - ÔÚ¿´µ½Õâ×îºóµÄ¾¯¸æѶϢǰÄú¶¼¿ÉÒÔËæʱÀ뿪°²×°³ÌÐòÃæ²»»á±ä¸üÄúµÄÓ²ÅÌ¡£ + ÔÚ¿´µ½Õâ×îºóµÄ¾¯¸æѶϢǰÄú¶¼¿ÉÒÔËæʱÀ뿪°²×°³ÌÐò½çÃæ²»»á±ä¸üÄúµÄÓ²ÅÌ¡£ Èç¹ûÄú·¢ÏÖÓÐÈκÎÉ趨´íÎó£¬ÕâʱÄú¿ÉÒÔÖ±½Ó½«µçÔ´¹Øµô¶ø²»»áÔì³ÉÈκÎÉ˺¦¡£ @@ -1126,9 +1126,10 @@ Ñ¡Ôñ¼üÅ̶ÔÓ¦(Keymap)²Ëµ¥ - Èç¹ûÒª¸Ä±ä¼üÅÌ°´¼üµÄ¶ÔÓ¦·½Ê½£¬ÇëÔÚÖ÷²Ëµ¥Ñ¡È¡ Keymap - È»ºó°´ Enter ¼ü¡£Ò»°ãÇé¿öϲ»¸Ä±ä´ËÏ³ý·ÇÄúʹÓÃÁ˷DZê×¼¼üÅÌ»ò·Ç - ÃÀ¹ú¼üÅÌ¡£ + Èç¹ûÒª¸Ä±ä¼üÅÌ°´¼üµÄ¶ÔÓ¦·½Ê½£¬ + ÇëÔÚÖ÷²Ëµ¥Ñ¡È¡ Keymap + È»ºó°´ Enter ¼ü¡£Ò»°ãÇé¿öϲ»¸Ä±ä´ËÏ + ³ý·ÇÄúʹÓÃÁ˷DZê×¼¼üÅÌ»ò·ÇÃÀ¹ú¼üÅÌ¡£
Sysinstall Ö÷²Ëµ¥ @@ -1218,81 +1219,94 @@ ·ÖÅä´ÅÅÌ¿Õ¼ä - ÄúµÄµÚÒ»¸ö¹¤×÷¾ÍÊÇÒª·ÖÅä FreeBSD ÓõÄÓ²ÅÌ¿Õ¼äÒÔ±ã sysinstall - ÏÈ×öºÃһЩ׼±¸¡£ÎªÁËÍê³ÉÕâ¸ö¹¤×÷£¬Äú±ØÐëÏÈ¶Ô FreeBSD ÈçºÎÕÒµ½ - ´ÅÅÌÐÅÏ¢×öÒ»¸öÁ˽⡣ + ÄúµÄµÚÒ»¸ö¹¤×÷¾ÍÊÇÒª·ÖÅä FreeBSD ÓõÄÓ²ÅÌ¿Õ¼äÒÔ±ã + sysinstall ÏÈ×öºÃһЩ׼±¸¡£ + ΪÁËÍê³ÉÕâ¸ö¹¤×÷£¬Äú±ØÐëÏÈ¶Ô FreeBSD + ÈçºÎÕÒµ½´ÅÅÌÐÅÏ¢×öÒ»¸öÁ˽⡣ BIOS ´ÅÅ̱àºÅ - µ±ÄúÔÚϵͳÉÏ°²×°ÅäÖà FreeBSD ֮ǰ£¬ÓÐÒ»¸öÖØÒªµÄÊÂÇéÒ»¶¨Òª×¢Ò⣬ÓÈÆä - Êǵ±ÄúÓжà¸öÓ²Å̵Äʱºò¡£ + µ±ÄúÔÚϵͳÉÏ°²×°ÅäÖà FreeBSD ֮ǰ£¬ + ÓÐÒ»¸öÖØÒªµÄÊÂÇéÒ»¶¨Òª×¢Ò⣬ÓÈÆäÊǵ±ÄúÓжà¸öÓ²Å̵Äʱºò¡£ DOS Microsoft Windows - ÔÚ pc ¼Ü¹¹£¬µ±ÄúÅÜÏñ &ms-dos; »ò µsoft.windows; ÕâÖÖ¸ú BIOS Ïà¹ØµÄ²Ù×÷ - ϵͳµÄʱºò£¬BIOS ÓÐÄÜÁ¦¸Ä±äÕý³£µÄ´ÅÅÌ˳Ðò£¬È»ºóÕâЩ²Ù×÷ϵͳ»á¸ú×Å BIOS ×ö¸Ä±ä¡£ - ÕâÈÃʹÓÃÕß²»Ò»¶¨·ÇÒªÓÐËùνµÄ primary master Ó²ÅÌ¿ª»ú¡£Ðí¶àÈË·¢ - ÏÖ×î¼òµ¥¶ø±ãÒ˱¸·ÝϵͳµÄ·½Ê½¾ÍÊÇÔÙÈ¥ÂòÒ»¿éһģһÑùµÄÓ²ÅÌ£¬È»ºó¶¨ÆÚ½«Êý¾Ý´ÓµÚ - Ò»¿éÓ²Å̸´ÖƵ½µÚ¶þ¸öÓ²ÅÌ£¬Ê¹Óà - Ghost »ò - XCOPY¡£ËùÒÔ£¬µ±µÚÒ»¸öÓ²ÅÌËÀÁË£¬»òÕßÊDZ»²¡¶¾ÆÆ»µ£¬ - »òÕßÓлµ¹ìµÀ£¬ËûÃÇ¿ÉÒÔµ÷Õû BIOS ÖеĿª»ú˳Ðò¶øÖ±½ÓÓõڶþ¿éÓ²ÅÌ¿ª»ú¡£Õâ¸ú½«»ú¿Ç - ²ð¿ª£¬°ÑµÚ¶þ¿éÓ²Å̸úµÚÒ»¿éÓ²Å̶Ե÷(Òªµ÷jumper)ÓÐͬÑùµÄЧ¹û£¬²î±ð¾ÍÊDz»Óòð¿Ç£» - Òò´Ë£¬¶ÔÓÐÕâ·½ÃæÐèÇóµÄÈ˶øÑÔ£¬Ö±½ÓÔÚ BIOS ÖÐÉ趨·Ç³£·½±ã¡£ + ÔÚ pc ¼Ü¹¹£¬µ±ÄúÅÜÏñ &ms-dos; »ò µsoft.windows; + ÕâÖÖ¸ú BIOS Ïà¹ØµÄ²Ù×÷ϵͳµÄʱºò£¬BIOS ÓÐÄÜÁ¦¸Ä±äÕý³£µÄ´ÅÅÌ˳Ðò£¬ + È»ºóÕâЩ²Ù×÷ϵͳ»á¸ú×Å BIOS ×ö¸Ä±ä¡£ÕâÈÃʹÓÃÕß²»Ò»¶¨·ÇÒªÓÐËùνµÄ + primary master Ó²ÅÌ¿ª»ú¡£ + Ðí¶àÈË·¢ÏÖ×î¼òµ¥¶ø±ãÒ˱¸·ÝϵͳµÄ·½Ê½¾ÍÊÇÔÙÈ¥ÂòÒ»¿éһģһÑùµÄÓ²ÅÌ£¬ + È»ºó¶¨ÆÚ½«Êý¾Ý´ÓµÚÒ»¿éÓ²Å̸´ÖƵ½µÚ¶þ¸öÓ²ÅÌ£¬Ê¹Óà + Ghost + »ò XCOPY¡£ËùÒÔ£¬µ±µÚÒ»¸öÓ²ÅÌËÀÁË£¬ + »òÕßÊDZ»²¡¶¾ÆÆ»µ£¬»òÕßÓлµ¹ìµÀ£¬ + ËûÃÇ¿ÉÒÔµ÷Õû BIOS ÖеĿª»ú˳Ðò¶øÖ±½ÓÓõڶþ¿éÓ²ÅÌ¿ª»ú¡£ + ¾ÍÏñ½»»»Ó²Å̵ÄÊý¾ÝÏߣ¬µ«ÊÇÎÞÐè´ò¿ª»úÏä¡£ SCSI BIOS - ±È½Ï°º¹ó£¬ÅäÓÐ SCSI ¿ØÖÆ¿¨µÄϵͳͨ³£¿ÉÒÔÑÓÉì BIOS µÄ¹¦ÄÜÀ´Èà SCSI É豸(¿É´ïÆ߸ö) - ´ïµ½ÀàËƸıä˳ÐòµÄ¹¦ÄÜ¡£ + ±È½Ï°º¹ó£¬ÅäÓÐ SCSI ¿ØÖÆ¿¨µÄϵͳͨ³£¿ÉÒÔÑÓÉì BIOS + µÄ¹¦ÄÜÀ´Èà SCSI É豸 (¿É´ïÆ߸ö) ´ïµ½ÀàËƸıä˳ÐòµÄ¹¦ÄÜ¡£ - Ï°¹ßÓÚʹÓÃÕâÖÖ·½Ê½µÄʹÓÃÕß¿ÉÄÜ»á¸Ðµ½¾ªÑÈ£¬ÒòΪÔÚ FreeBSD Öв¢·ÇÈç´Ë¡£ - FreeBSD ²»»á²Î¿¼ BIOS£¬¶øÇÒÒ²²»ÖªµÀËùνµÄ BIOS Âß¼­´ÅÅ̶ÔÓ¦¡£ - ÊÇÔõô»ØÊ¡£Õâ»áÈÃÈ˸оõºÜÒÉ»ó£¬Ã÷Ã÷¾ÍÊÇÒ»ÑùµÄÓ²Å̶øÇÒ×ÊÁÏÒ²ÍêÈ«´ÓÁíÒ»¿é - ¸´ÖƹýÀ´µÄ£¬½á¹ûȴû°ì·¨ÏñÒÔÇ°ÄÇÑùÓᣠ+ Ï°¹ßÓÚʹÓÃÕâÖÖ·½Ê½µÄʹÓÃÕß¿ÉÄÜ»á¸Ðµ½¾ªÑÈ£¬ + ÒòΪÔÚ FreeBSD Öв¢·ÇÈç´Ë¡£FreeBSD ²»»á²Î¿¼ BIOS£¬ + ¶øÇÒÒ²²»ÖªµÀËùνµÄ BIOS Âß¼­´ÅÅ̶ÔÓ¦ + ÊÇÔõô»ØÊ¡£Õâ»áÈÃÈ˸оõºÜÒÉ»ó£¬ + Ã÷Ã÷¾ÍÊÇÒ»ÑùµÄÓ²Å̶øÇÒ×ÊÁÏÒ²ÍêÈ«´ÓÁíÒ»¿é¸´ÖƹýÀ´µÄ£¬ + ½á¹ûȴû°ì·¨ÏñÒÔÇ°ÄÇÑùÓᣠ- µ±Ê¹Óà FreeBSD ÒÔÇ°£¬Ç뽫 BIOS ÖеÄÓ²ÅÌ¿ª»ú˳Ðòµ÷»ØÕý³£µÄ˳Ðò£¬²¢ÇÒÒÔºó - ²»ÒªÔٸı䡣 Èç¹ûÒ»¶¨Òª½»»»Ó²ÅÌ˳Ðò£¬ ÄÇÇëÓÃÓ²¼þµÄ·½Ê½£¬ ´ò¿ª»ú¿Ç²¢µ÷Õûµ÷Ïß¡£ + µ±Ê¹Óà FreeBSD ÒÔÇ°£¬Ç뽫 BIOS ÖеÄÓ²ÅÌ¿ª»ú˳Ðòµ÷»ØÕý³£µÄ˳Ðò£¬ + ²¢ÇÒÒÔºó²»ÒªÔٸı䡣 Èç¹ûÒ»¶¨Òª½»»»Ó²ÅÌ˳Ðò£¬ ÄÇÇëÓÃÓ²¼þµÄ·½Ê½£¬ + ´ò¿ª»úÏä²¢µ÷Õûµ÷Ïß¡£ ·¶Àý£ºBill ºÍ Fred µÄ°²×°ÀúÏÕ - Bill Ìæ Fred °Ñ¾ÉµÄ Wintel µÄ»úÆ÷×°ÉÏÁË FreeBSD¡£Ëû×°ÁËһ̨ SCSI Ó²ÅÌ£¬ - ID ÊÇ 0£¬È»ºó°Ñ FreeBSD ×°ÔÚÉÏÃæ¡£ + Bill Ìæ Fred °Ñ¾ÉµÄ Wintel µÄ»úÆ÷×°ÉÏÁË FreeBSD¡£ + Ëû×°ÁËһ̨ SCSI Ó²ÅÌ£¬ID ÊÇ 0£¬È»ºó°Ñ FreeBSD ×°ÔÚÉÏÃæ¡£ - Fred ¿ªÊ¼Ê¹ÓÃËûÐ嵀 FreeBSD ϵͳ£»µ«ÊǹýÁ˼¸Ì죬Ëû·¢ÏÖÕâ¾ÉµÄ SCSI - Ó²ÅÌ·¢ÉúÁËÐí¶àСÎÊÌâ¡£Ö®ºó£¬Ëû¾Í¸ú Bill ˵ÆðÕâ¼þÊ¡£ + Fred ¿ªÊ¼Ê¹ÓÃËûÐ嵀 FreeBSD ϵͳ£»µ«ÊǹýÁ˼¸Ì죬 + Ëû·¢ÏÖÕâ¾ÉµÄ SCSIÓ²ÅÌ·¢ÉúÁËÐí¶àСÎÊÌâ¡£Ö®ºó£¬ + Ëû¾Í¸ú Bill ˵ÆðÕâ¼þÊ¡£ - ÓÖ¹ýÁ˼¸Ì죬Bill ¾ö¶¨ÊǸýâ¾öÎÊÌâµÄʱºòÁË£¬ËùÒÔËû´ÓºóÃæ·¿¼äµÄÓ²ÅÌ - ÊÕ²Ø ÖÐÕÒ³öÁËÒ»¸öһģһÑùµÄÓ²ÅÌ£¬²¢ÇÒ¾­¹ý±íÃæ²âÊÔºóÏÔʾÕâ¿é - Ó²ÅÌûÓÐÎÊÌâ¡£Òò´Ë£¬Bill ½«ËüµÄ ID µ÷³É 4£¬È»ºó°²×°µ½ Fred µÄ»úÆ÷£¬²¢ÇÒ½«×ÊÁÏ´Ó - ´ÅÅÌ 0 ¸´ÖƵ½´ÅÅÌ 4¡£ÏÖÔÚÐÂÓ²ÅÌ×°ºÃÁË£¬¶øÇÒ¿´ÆðÀ´ºÃÏñÒ»ÇÐÕý³££»ËùÒÔ£¬Bill ÈÏΪ - ÏÖÔÚÓ¦¸Ã¿ÉÒÔ¿ªÊ¼ÓÃËüÁË¡£Bill ÓÚÊǵ½ SCSI BIOS ÖÐÉ趨 SCSI ID 4 Ϊ¿ª»úÅÌ£¬ÓôÅÅÌ 4 - ÖØпª»úºó£¬Ò»ÇÐÅܵúÜ˳Àû¡£ + ÓÖ¹ýÁ˼¸Ì죬Bill ¾ö¶¨ÊǸýâ¾öÎÊÌâµÄʱºòÁË£¬ + ËùÒÔËû´ÓºóÃæ·¿¼äµÄÓ²ÅÌ ÊÕ²Ø + ÖÐÕÒ³öÁËÒ»¸öһģһÑùµÄÓ²ÅÌ£¬²¢ÇÒ¾­¹ý±íÃæ²âÊÔºóÏÔʾÕâ¿éÓ²ÅÌûÓÐÎÊÌâ¡£ + Òò´Ë£¬Bill ½«ËüµÄ ID µ÷³É 4£¬È»ºó°²×°µ½ Fred µÄ»úÆ÷£¬ + ²¢ÇÒ½«×ÊÁÏ´Ó´ÅÅÌ 0 ¸´ÖƵ½´ÅÅÌ 4¡£ÏÖÔÚÐÂÓ²ÅÌ×°ºÃÁË£¬ + ¶øÇÒ¿´ÆðÀ´ºÃÏñÒ»ÇÐÕý³££»ËùÒÔ£¬Bill ÈÏΪÏÖÔÚÓ¦¸Ã¿ÉÒÔ¿ªÊ¼ÓÃËüÁË¡£ + Bill ÓÚÊǵ½ SCSI BIOS ÖÐÉ趨 SCSI ID 4 Ϊ¿ª»úÅÌ£¬ÓôÅÅÌ 4 + ÖØпª»úºó£¬Ò»ÇÐÅܵúÜ˳Àû¡£ - ¼ÌÐøÓÃÁ˼¸Ììºó£¬Bill ¸ú Fred ¾ö¶¨ÒªÀ´Íæµãеģº¸Ã½« FreeBSD Éý¼¶ÁË¡£Bill - ½« ID 0 µÄÓ²ÅÌÒƳý(ÒòΪÓÐÎÊÌâ)²¢ÇÒÓÖ´ÓÊÕ²ØÇøÖÐÄÃÁËÒ»¿éÒ»ÑùµÄÓ²ÅÌÀ´¡£È»ºóËû - Óà Fred ÉñÆæµÄÍøÂç FTP ´ÅÅ̽«Ð°æµÄ FreeBSD °²×°ÔÚÕâ¿éÓ²ÅÌÉÏ£»°²×°¹ý³ÌûʲôÎÊ - Ìâ·¢Éú¡£ + ¼ÌÐøÓÃÁ˼¸Ììºó£¬Bill ¸ú Fred ¾ö¶¨ÒªÀ´Íæµãеģº + ¸Ã½« FreeBSD Éý¼¶ÁË¡£Bill ½« ID 0 µÄÓ²ÅÌÒƳý (ÒòΪÓÐÎÊÌâ) + ²¢ÇÒÓÖ´ÓÊÕ²ØÇøÖÐÄÃÁËÒ»¿éÒ»ÑùµÄÓ²ÅÌÀ´¡£È»ºóËûÓà Fred + ÉñÆæµÄÍøÂç FTP ´ÅÅ̽«Ð°æµÄ FreeBSD °²×°ÔÚÕâ¿éÓ²ÅÌÉÏ£» + °²×°¹ý³ÌûʲôÎÊÌâ·¢Éú¡£ - Fred ÓÃÁËÕâа汾¼¸Ììºó£¬¾õµÃËüºÜÊʺÏÓÃÔÚ¹¤³Ì²¿ÃÅ¡­ÊÇʱºò½«ÒÔÇ°·ÅÔÚ¾É - ϵͳµÄ¹¤×÷×ÊÁϸ´ÖƹýÀ´ÁË¡£Òò´Ë£¬Fred ½« ID4 µÄ SCSI Ó²ÅÌ(ÀïÃæÓзÅמÉϵͳÖи´ÖÆ - ¹ýÀ´µÄ×îÐÂ×ÊÁÏ)mount ÆðÀ´£¬½á¹û¾¹È»·¢ÏÖÔÚ ID4 µÄÓ²ÅÌÉÏ£¬ËûÒÔÇ°µÄËùÓÐ×ÊÁ϶¼²»¼û - ÁË£¡ + Fred ÓÃÁËÕâа汾¼¸Ììºó£¬¾õµÃËüºÜÊʺÏÓÃÔÚ¹¤³Ì²¿ÃÅ¡­ + ÊÇʱºò½«ÒÔÇ°·ÅÔÚ¾ÉϵͳµÄ¹¤×÷×ÊÁϸ´ÖƹýÀ´ÁË¡£ Òò´Ë£¬ + Fred ½« ID4 µÄ SCSI Ó²ÅÌ (ÀïÃæÓзÅמÉϵͳÖи´ÖƹýÀ´µÄ×îÐÂ×ÊÁÏ) + mount ÆðÀ´£¬½á¹û¾¹È»·¢ÏÖÔÚ ID4 µÄÓ²ÅÌÉÏ£¬ + ËûÒÔÇ°µÄËùÓÐ×ÊÁ϶¼²»¼ûÁË£¡ ×ÊÁÏÅܵ½ÄÄÀïÈ¥ÁËÄØ£¿ - µ±³õ Bill ½« ID0 Ó²Å̵Ä×ÊÁϸ´ÖƵ½ ID4 µÄʱºò£¬ID4 ¼´³ÉΪһ¸ö еĸ±±¾¡£ - ¶øµ±Ëûµ÷ SCSI BIOS É趨 ID4 Ϊ¿ª»úÅÌ£¬ÏëÈÃϵͳ´Ó ID4 ¿ª»ú£¬ - ÕâÆäʵֻÊÇËû×Ô¼º±¿£¬ÒòΪ´ó²¿·ÖµÄϵͳ¿ÉÒÔÖ±½Óµ÷ BIOS ¶ø¸Ä±ä¿ª»ú˳Ðò£¬µ«ÊÇ FreeBSD È´»á°Ñ¿ª»ú - ˳Ðò»¹Ô­³ÉÕý³£µÄģʽ£¬Òò´Ë£¬Fred µÄ FreeBSD »¹ÊÇ´ÓÔ­À´ÄÇ¿é ID0 µÄÓ²ÅÌ¿ª»úµÄ¡£ËùÓÐ - µÄ×ÊÁ϶¼»¹ÔÚÄÇ¿éÓ²ÅÌÉÏ£¬¶ø²»ÊÇÔÚÏëÏóÖ®ÖÐµÄ ID4 Ó²ÅÌ¡£ + µ±³õ Bill ½« ID0 Ó²Å̵Ä×ÊÁϸ´ÖƵ½ ID4 µÄʱºò£¬ + ID4 ¼´³ÉΪһ¸ö еĸ±±¾¡£ + ¶øµ±Ëûµ÷ SCSI BIOS É趨 ID4 Ϊ¿ª»úÅÌ£¬ÏëÈÃϵͳ´Ó ID4 ¿ª»ú£¬ + ÕâÆäʵֻÊÇËû×Ô¼º±¿£¬ÒòΪ´ó²¿·ÖµÄϵͳ¿ÉÒÔÖ±½Óµ÷ BIOS ¶ø¸Ä±ä¿ª»ú˳Ðò£¬ + µ«ÊÇ FreeBSD È´»á°Ñ¿ª»ú˳Ðò»¹Ô­³ÉÕý³£µÄģʽ£¬Òò´Ë£¬Fred µÄ FreeBSD + »¹ÊÇ´ÓÔ­À´ÄÇ¿é ID0 µÄÓ²ÅÌ¿ª»úµÄ¡£ËùÓеÄ×ÊÁ϶¼»¹ÔÚÄÇ¿éÓ²ÅÌÉÏ£¬ + ¶ø²»ÊÇÔÚÏëÏóÖ®ÖÐµÄ ID4 Ó²ÅÌ¡£ ÐÒÔ˵ÄÊÇ£¬ ÔÚÎÒÃÇ·¢ÏÖÕâ¼þʵÄʱºòÄÇЩ×ÊÁ϶¼»¹ÔÚ£¬ ÎÒÃǽ«ÕâЩ×ÊÁÏ´Ó×îÔçµÄÄÇ¿é ID0 Ó²ÅÌÈ¡³öÀ´²¢½»»¹¸ø Fred£¬ ¶ø Bill Ò²ÓÉ´ËÁ˽⵽¼ÆËã»ú¼ÆÊýÊÇ´Ó 0 ¿ªÊ¼µÄ¡£ - ËäÈ»ÎÒÃÇÕâÀïµÄÀý×ÓʹÓà SCSI Ó²ÅÌ£¬µ«ÊÇÏàͬµÄ¸ÅÄîÒ²¿ÉÒÔÌ×ÓÃÔÚ IDE Ó²ÅÌÉÏ¡£ + ËäÈ»ÎÒÃÇÕâÀïµÄÀý×ÓʹÓà SCSI Ó²ÅÌ£¬ + µ«ÊÇÏàͬµÄ¸ÅÄîÒ²¿ÉÒÔÌ×ÓÃÔÚ IDE Ó²ÅÌÉÏ¡£ @@ -1300,14 +1314,15 @@ ʹÓà FDisk ´´½¨·ÖÇø - Èç¹û²»ÔÙ×ö¸Ä±ä£¬Êý¾Ý½«»áд½øÓ²ÅÌ¡£Èç¹ûÄú·¸ÁËÒ»¸ö´íÎóÏëÖØпªÊ¼£¬ÇëÑ¡Ôñ - sysinstall °²×°³ÌÐòµÄÍ˳ö°´Å¥(exit)¡£»ò°´ - U ¼üÀ´ Undo ²Ù×÷¡£Èç¹ûÄúµÄ²Ù×÷ûÓнá¹û£¬Äú×Ü¿ÉÒÔÖØÐÂÆô¶¯Äú - µÄ¼ÆËã»úÀ´´ïµ½ÄúµÄÄ¿µÄ¡£ - + Èç¹û²»ÔÙ×ö¸Ä±ä£¬Êý¾Ý½«»áд½øÓ²ÅÌ¡£Èç¹ûÄú·¸ÁËÒ»¸ö´íÎóÏëÖØпªÊ¼£¬ + ÇëÑ¡Ôñ sysinstall + °²×°³ÌÐòµÄÍ˳ö°´Å¥(exit)¡£»ò°´ U ¼üÀ´ + Undo ²Ù×÷¡£ Èç¹ûÄúµÄ²Ù×÷ûÓнá¹û£¬ + Äú×Ü¿ÉÒÔÖØÐÂÆô¶¯ÄúµÄ¼ÆËã»úÀ´´ïµ½ÄúµÄÄ¿µÄ¡£ + - µ±ÄúÔÚ sysinstall Ö÷²Ëµ¥Ñ¡ÔñʹÓñê×¼°²×° - ºó£¬Äú»á¿´µ½ÏÂÃæµÄÐÅÏ¢£º + µ±ÄúÔÚ sysinstall + Ö÷²Ëµ¥Ñ¡ÔñʹÓñê×¼°²×°ºó£¬Äú»á¿´µ½ÏÂÃæµÄÐÅÏ¢£º Message In the next menu, you will need to set up a DOS-style ("fdisk") @@ -1321,8 +1336,9 @@ [ Press enter or space ] - ÈçÆÁĻָʾ£¬°´ Enter ¼ü£¬È»ºóÄú¾Í»á¿´µ½Ò»¸öÁбí - ÁгöËùÓÐÔÚ̽²âÉ豸µÄʱºòÕÒµ½µÄÓ²ÅÌ¡£ + ÈçÆÁĻָʾ£¬°´ Enter ¼ü£¬ + È»ºóÄú¾Í»á¿´µ½Ò»¸öÁбíÁгöËùÓÐÔÚ̽²âÉ豸µÄʱºòÕÒµ½µÄÓ²ÅÌ¡£ + ·¶ÀýÏÔʾµÄÊÇÓÐÕÒµ½Á½¸ö IDE Ó²Å̵ÄÇéÐΣ¬ÕâÁ½¸öÓ²ÅÌ·Ö±ðΪ ad0 ºÍ ad2¡£ @@ -1371,11 +1387,13 @@ µÚÒ»²¿·ÖÊÇ»­ÃæÉÏ×îÉÏÃæÁ½ÐУ¬ÏÔʾµÄÊÇÄ¿Ç°ËùÑ¡ÔñµÄÓ²Å̵ÄÐÅÏ¢¡£°üº¬ËüµÄ FreeBSD Ãû³Æ¡¢Ó²ÅÌ·Ö²¼ÒÔ¼°Ó²Å̵Ä×ÜÈÝÁ¿¡£ - µÚ¶þ²¿·ÖÏÔʾµÄÊÇÄ¿Ç°Ñ¡ÔñµÄÓ²ÅÌÉÏÓÐÄÄЩ·ÖÇø£¬Ã¿¸ö·ÖÇøµÄ¿ªÊ¼¼°½áÊøλÖᢠ- ËùÕ¼ÈÝÁ¿¡¢FreeBSD Ãû³Æ¡¢ËüÃǵÄÃèÊöÒÔ¼°Àà±ð£¨sub-type£©¡£´Ë·¶ÀýÏÔʾÓÐÁ½¸ö·ÖÇø¡¢ - Ò»¸ö´óµÄ FAT ·ÖÇø£¬£¨ºÜ¿ÉÄÜÊÇ &ms-dos; »ò &windows; µÄ - C: £©¡¢ÒÔ¼°Ò»¸öÀ©Õ¹·ÖÇø£¨ÔÚ &ms-dos; »ò &windows; Àï - Ã滹¿ÉÒÔ°üº¬Âß¼­·ÖÇø£©¡£ + µÚ¶þ²¿·ÖÏÔʾµÄÊÇÄ¿Ç°Ñ¡ÔñµÄÓ²ÅÌÉÏÓÐÄÄЩ·ÖÇø£¬ + ÿ¸ö·ÖÇøµÄ¿ªÊ¼¼°½áÊøλÖá¢ËùÕ¼ÈÝÁ¿¡¢FreeBSD Ãû³Æ¡¢ + ËüÃǵÄÃèÊöÒÔ¼°Àà±ð£¨sub-type£©¡£´Ë·¶ÀýÏÔʾÓÐÁ½¸öδʹÓõÄС·ÖÇø£¬ + »¹ÓÐÒ»¸ö´óµÄ FAT ·ÖÇø£¬ + £¨ºÜ¿ÉÄÜÊÇ &ms-dos; »ò &windows; µÄ C: £©£¬ + ÒÔ¼°Ò»¸öÀ©Õ¹·ÖÇø£¨ÔÚ &ms-dos; »ò &windows; + ÀïÃ滹¿ÉÒÔ°üº¬Âß¼­·ÖÇø£©¡£ µÚÈý¸ö²¿·ÖÏÔʾ FDisk ÖпÉÓõÄÃüÁî¡£ @@ -1391,27 +1409,31 @@ ½ÓÏÂÀ´Òª×öµÄʸúÄúÒªÔõô¸øÄúµÄÓ²ÅÌ·ÖÇøÓйء£ - Èç¹ûÄúÒªÈà FreeBSD ʹÓÃÕû¸öÓ²ÅÌ£¨ÉÔºóÄúÈ·ÈÏÒª sysinstall - ¼ÌÐø°²×°ºó»áɾ³ýËùÓÐÕâ¸öÓ²ÅÌÉϵÄ×ÊÁÏ£©£¬ÄÇôÄú¾Í¿ÉÒÔ°´ + Èç¹ûÄúÒªÈà FreeBSD ʹÓÃÕû¸öÓ²ÅÌ£¨ÉÔºóÄúÈ·ÈÏÒª + sysinstall + ¼ÌÐø°²×°ºó»áɾ³ýËùÓÐÕâ¸öÓ²ÅÌÉϵÄ×ÊÁÏ£©£¬ÄÇôÄú¾Í¿ÉÒÔ°´ A ¼ü£¨Use Entire Disk £© - Ä¿Ç°ÒÑÓеķÖÇø¶¼»á±»É¾³ý£¬È¡¶ø´úÖ®µÄÊÇÒ»¸öСµÄ£¬±êʾΪ unused - µÄ·ÖÇø£¬ÒÔ¼°Ò»¸ö´óµÄ FreeBSD ·ÖÇø¡£Ö®ºó£¬ÇëÓ÷½Ïò¼ü½«¹â±êÒƵ½Õâ¸ö - FreeBSD ·ÖÇø£¬È»ºó°´ S ÒÔ½«´Ë·ÖÇø±ê¼ÇΪÆô¶¯·ÖÇø¡£ Äú»á¿´ - µ½ÀàËÆ µÄ»­Ãæ¡£ - ×¢Ò⣬ ÔÚ Flags - À¸ÖÐµÄ A ¼ÇºÅ±íʾ´Ë·ÖÇøÊÇ ¼¤»î µÄ£¬ - Òò¶øÆô¶¯½«´Ó´Ë·ÖÇø½øÐС£ + Ä¿Ç°ÒÑÓеķÖÇø¶¼»á±»É¾³ý£¬È¡¶ø´úÖ®µÄÊÇÒ»¸öСµÄ£¬±êʾΪ + unused µÄ·ÖÇø£¬ÒÔ¼°Ò»¸ö´óµÄ FreeBSD ·ÖÇø¡£Ö®ºó£¬ + ÇëÓ÷½Ïò¼ü½«¹â±êÒƵ½Õâ¸ö FreeBSD ·ÖÇø£¬È»ºó°´ S + ÒÔ½«´Ë·ÖÇø±ê¼ÇΪÆô¶¯·ÖÇø¡£ Äú»á¿´µ½ÀàËÆ + µÄ»­Ãæ¡£×¢Ò⣬ÔÚ + Flags À¸ÖÐµÄ A + ¼ÇºÅ±íʾ´Ë·ÖÇøÊÇ ¼¤»î µÄ£¬ + Òò¶øÆô¶¯½«´Ó´Ë·ÖÇø½øÐС£ Ҫɾ³ýÏÖÓеķÖÇøÒÔ±ãΪ FreeBSD ÌÚ³ö¿Õ¼ä£¬ - Äú¿ÉÒÔ½«¹â±êÒƶ¯µ½ÒªÉ¾³ýµÄ·ÖÇøºó°´ D ¼ü¡£ - È»ºó¾Í¿É°´ C ¼ü£¬ ²¢ÔÚµ¯³öµÄ¶Ô»°¿òÖÐÊäÈ뽫Ҫ´´½¨µÄ·ÖÇøµÄ´óС¡£ - ÊäÈëºÏÊʵĴóСºó°´ Enter ¼ü¡£ - Ò»°ã¶øÑÔ£¬ Õâ¸ö¶Ô»°¿òÖеijõʼֵÊÇ¿ÉÒÔ·ÖÅä¸ø¸Ã·ÖÇøµÄ×î´óÖµ¡£ - Ëü¿ÉÄÜÊÇ×î´óµÄÁÚ½Ó·ÖÇø»òδ·ÖÅäµÄÕû¸öÓ²ÅÌ´óС¡£ + Äú¿ÉÒÔ½«¹â±êÒƶ¯µ½ÒªÉ¾³ýµÄ·ÖÇøºó°´ D ¼ü¡£ + È»ºó¾Í¿É°´ C ¼ü£¬ + ²¢ÔÚµ¯³öµÄ¶Ô»°¿òÖÐÊäÈ뽫Ҫ´´½¨µÄ·ÖÇøµÄ´óС¡£ + ÊäÈëºÏÊʵĴóСºó°´ Enter ¼ü¡£ + Ò»°ã¶øÑÔ£¬ Õâ¸ö¶Ô»°¿òÖеijõʼֵÊÇ¿ÉÒÔ·ÖÅä¸ø¸Ã·ÖÇøµÄ×î´óÖµ¡£ + Ëü¿ÉÄÜÊÇ×î´óµÄÁÚ½Ó·ÖÇø»òδ·ÖÅäµÄÕû¸öÓ²ÅÌ´óС¡£ - Èç¹ûÄúÒѾ­½¨Á¢ºÃ¸ø FreeBSD µÄ·ÖÇø£¨Ê¹ÓÃÏñ &partitionmagic; - ÀàËƵŤ¾ß£©£¬ÄÇôÄú¿ÉÒÔ°´Ï C ¼üÀ´½¨Á¢Ò»¸öР- µÄ·ÖÇø¡£Í¬ÑùµÄ£¬»áÓжԻ°¿òѯÎÊÄúÒª½¨Á¢µÄ·ÖÇøµÄ´óС¡£ + Èç¹ûÄúÒѾ­½¨Á¢ºÃ¸ø FreeBSD µÄ·ÖÇø + £¨Ê¹ÓÃÏñ &partitionmagic;ÀàËƵŤ¾ß£©£¬ + ÄÇôÄú¿ÉÒÔ°´Ï C ¼üÀ´½¨Á¢Ò»¸öеķÖÇø¡£Í¬ÑùµÄ£¬ + »áÓжԻ°¿òѯÎÊÄúÒª½¨Á¢µÄ·ÖÇøµÄ´óС¡£
Fdisk ·ÖÇøʹÓÃÕû¸öÓ²ÅÌ @@ -1439,14 +1461,15 @@ - Äú¿ÉÒÔÔÚÒ»¸öÓ²ÅÌÉÏ£¬³ýÁË FreeBSD£¬Äú»¹Óа²×°ÆäËüµÄ²Ù×÷ϵͳ£»È»ºó - ÄúÏëҪѡÔñÔÚ¿ª»úµÄʱºòÒª½øÈëÄĸöϵͳ¡£ + ³ýÁË FreeBSD£¬Äú»¹ÓÐÆäËüµÄ²Ù×÷ϵͳ°²×°ÔÚͬһ¿éÓ²ÅÌÉÏ£¬ + ËùÒÔÄúÐèÒªÔÚ¿ª»úµÄʱºòÑ¡ÔñÒª½øÈëÄÄÒ»¸öϵͳ¡£ - Èç¹ûÄúÔÚÕą̂»úÆ÷ÉÏÖ»°²×°Ò»¸ö FreeBSD ²Ù×÷ϵͳ£¬²¢ÇÒ°²×°ÔÚµÚÒ»¸öÓ²ÅÌ£¬ - ÄÇôѡÔñ Standard °²×°¾Í¿ÉÒÔÁË¡£Èç¹ûÄúÒѾ­Ê¹Óà - ÁËÒ»¸öµÚÈý·½µÄ¶àÖØÒýµ¼³ÌÐò£¬ÄÇôÇëÑ¡Ôñ None¡£ + Èç¹ûÄúÔÚÕą̂»úÆ÷ÉÏÖ»°²×°Ò»¸ö FreeBSD ²Ù×÷ϵͳ£¬ + ²¢ÇÒ°²×°ÔÚµÚÒ»¸öÓ²ÅÌ£¬ ÄÇôѡÔñ Standard + °²×°¾Í¿ÉÒÔÁË¡£Èç¹ûÄúÒѾ­Ê¹ÓÃÁËÒ»¸öµÚÈý·½µÄ¶àÖØÒýµ¼³ÌÐò£¬ + ÄÇôÇëÑ¡Ôñ None¡£ Ñ¡ÔñºÃÅäÖúóÇë°´ Enter¡£ @@ -1460,20 +1483,21 @@
- °´Ï F1 ¼üËùÏÔʾµÄÔÚÏß˵Ã÷ÖÐÓÐÌÖÂÛһЩ²Ù×÷ϵͳ¹²´æ - ¿ÉÄÜ·¢ÉúµÄÎÊÌâ¡£ + °´Ï F1 + ¼üËùÏÔʾµÄÔÚÏß˵Ã÷ÖÐÓÐÌÖÂÛһЩ²Ù×÷ϵͳ¹²´æ¿ÉÄÜ·¢ÉúµÄÎÊÌâ¡£ ÔÚÆäËüÓ²ÅÌÉÏ´´½¨·ÖÇø - Èç¹ûÄúµÄϵͳÉÏÓÐÒ»¸öÒÔÉϵÄÓ²ÅÌ£¬ÔÚÑ¡ÔñÍê¶àÖØÒýµ¼¹ÜÀí³ÌÐòºó»áÔٻص½ - Ñ¡ÔñÓ²Å̵Ļ­Ãæ¡£Èç¹ûÄúÒª½« FreeBSD °²×°ÔÚ¶à¸öÓ²ÅÌÉÏ£¬ÄÇôÄú¿ÉÒÔÔÚÕâÀïÑ¡Ôñ - ÆäËüµÄÓ²ÅÌ£¬È»ºóÖظ´Ê¹Óà FDisk À´½¨Á¢·ÖÇø¡£ + Èç¹ûÄúµÄϵͳÉÏÓÐÒ»¸öÒÔÉϵÄÓ²ÅÌ£¬ + ÔÚÑ¡ÔñÍê¶àÖØÒýµ¼¹ÜÀí³ÌÐòºó»áÔٻص½Ñ¡ÔñÓ²Å̵Ļ­Ãæ¡£ + Èç¹ûÄúÒª½« FreeBSD °²×°ÔÚ¶à¸öÓ²ÅÌÉÏ£¬ÄÇôÄú¿ÉÒÔÔÚÕâÀïÑ¡ÔñÆäËüµÄÓ²ÅÌ£¬ + È»ºóÖظ´Ê¹Óà FDisk À´½¨Á¢·ÖÇø¡£ - Èç¹ûÄúÏëÈà FreeBSD À´¹ÜÀíÆäËüµÄÓ²ÅÌ£¬ÄÇôÁ½¸öÓ²Å̶¼±ØÐë°²×° FreeBSD - µÄ¶àÖØÒýµ¼¹ÜÀí³ÌÐò¡£ + Èç¹ûÄúÏëÈà FreeBSD À´¹ÜÀíÆäËüµÄÓ²ÅÌ£¬ + ÄÇôÁ½¸öÓ²Å̶¼±ØÐë°²×° FreeBSD µÄ¶àÖØÒýµ¼¹ÜÀí³ÌÐò¡£
@@ -1486,28 +1510,31 @@
- Tab ¼ü¿ÉÒÔÔÚÄú×îºóÑ¡ÔñµÄÓ²ÅÌ¡¢ &gui.ok; ÒÔ¼° &gui.cancel; - Ö®¼ä½øÐÐÇл»¡£ + Tab ¼ü¿ÉÒÔÔÚÄú×îºóÑ¡ÔñµÄÓ²ÅÌ¡¢ &gui.ok; + ÒÔ¼° &gui.cancel; Ö®¼ä½øÐÐÇл»¡£ - Óà Tab ¼ü½«¹â±êÒƶ¯µ½ &gui.ok;È»ºó°´ Enter - ¼ü¼ÌÐø°²×°¹ý³Ì¡£ + Óà Tab ¼ü½«¹â±êÒƶ¯µ½ &gui.ok; + È»ºó°´ Enter ¼ü¼ÌÐø°²×°¹ý³Ì¡£
ʹÓà <application>bsdlabel</application> ´´½¨·ÖÇø - ÄúÏÖÔÚ±ØÐëÔÚ¸Õ¸Õ½¨Á¢ºÃµÄ slice Öй滮һЩ label¡£ Çë×¢Ò⣬ ÿ¸ö label µÄ´úºÅÊÇ - a µ½ h£¬ ÁíÍ⣬ Ï°¹ßÉÏ + ÄúÏÖÔÚ±ØÐëÔÚ¸Õ¸Õ½¨Á¢ºÃµÄ slice Öй滮һЩ label¡£ + Çë×¢Ò⣬ÿ¸ö label µÄ´úºÅÊÇ + a µ½ h£¬ÁíÍ⣬ϰ¹ßÉÏ b¡¢ c ºÍ - d ÊÇÓÐÌØÊâÓÃ;µÄ£¬ ²»Ó¦¸ÃËæÒâ±ä¶¯¡£ + d ÊÇÓÐÌØÊâÓÃ;µÄ£¬²»Ó¦¸ÃËæÒâ±ä¶¯¡£ - ijЩӦÓóÌÐò¿ÉÒÔÀûÓÃһЩÌØÊâµÄ·ÖÇø¶ø´ïµ½½ÏºÃµÄЧ¹û£¬ÓÈÆäÊÇ·ÖÇø·ÖÉ¢ - ÔÚ²»Í¬µÄÓ²Å̵Äʱºò¡£µ«ÊÇ£¬ÏÖÔÚÄúÊǵÚÒ»´Î°²×°FreeBSD£¬ËùÒÔ²»ÐèҪȥ·³ÄÕÈç - ºÎ·Ö¸îÄúµÄÓ²ÅÌ¡£×îÖØÒªµÄÊÇ£¬×°ºÃFreeBSDÈ»ºóѧϰÈçºÎʹÓÃËü¡£µ±Äú¶ÔFreeBSD - ÓÐÏ൱³Ì¶ÈµÄÊìϤºó£¬Äú¿ÉÒÔËæʱÖØа²×°FreeBSD£¬È»ºó¸Ä±äÄú·ÖÇøµÄ·½Ê½¡£ + ijЩӦÓóÌÐò¿ÉÒÔÀûÓÃһЩÌØÊâµÄ·ÖÇø¶ø´ïµ½½ÏºÃµÄЧ¹û£¬ + ÓÈÆäÊÇ·ÖÇø·ÖÉ¢ÔÚ²»Í¬µÄÓ²Å̵Äʱºò¡£µ«ÊÇ£¬ÏÖÔÚÄúÊǵÚÒ»´Î°²×°FreeBSD£¬ + ËùÒÔ²»ÐèҪȥ·³ÄÕÈçºÎ·Ö¸îÄúµÄÓ²ÅÌ¡£×îÖØÒªµÄÊÇ£¬ + ×°ºÃFreeBSDÈ»ºóѧϰÈçºÎʹÓÃËü¡£µ±Äú¶ÔFreeBSDÓÐÏ൱³Ì¶ÈµÄÊìϤºó£¬ + Äú¿ÉÒÔËæʱÖØа²×°FreeBSD£¬È»ºó¸Ä±äÄú·ÖÇøµÄ·½Ê½¡£ - ÏÂÃæµÄ·¶ÀýÖÐÓÐËĸö·ÖÇø—Ò»¸öÊÇ´ÅÅ̽»»»·ÖÇø£¬ÁíÍâÈý¸öÊÇÎļþϵͳ¡£ + ÏÂÃæµÄ·¶ÀýÖÐÓÐËĸö·ÖÇø — + Ò»¸öÊÇ´ÅÅ̽»»»·ÖÇø£¬ÁíÍâÈý¸öÊÇÎļþϵͳ¡£ ΪµÚÒ»¸öÓ²ÅÌ·ÖÇø @@ -1866,10 +1893,11 @@ Èí¼þËùÐèÒªµÄ³ÌÐòÔ´´úÂ룬¶øÊÇÒ»¸ö°üº¬×Ô¶¯ÏÂÔØ¡¢±à¼­ÒÔ¼°°²×°µÄÎĵµ¼¯ºÏ¡£ Ò»ÕÂÌÖÂÛÈçºÎʹÓÃPorts. - °²×°³ÌÐò²¢²»»á¼ì²éÄúÊÇ·ñÓÐ×ã¹»µÄÓ²ÅÌ¿Õ¼äÀ´·Åports,ËùÒÔ£¬Èç¹ûÒª°²×° - portsÈí¼þËù£¬ÇëÏÈÈ·¶¨ÄúÓÐ×ã¹»µÄÓ²Å̿ռ䡣 FreeBSD &rel.current;°æ±¾ - FreeBSD Ports Collection ´óÔ¼Õ¼Óà &ports.size; ´óСµÄÓ²Å̿ռ䡣ÄúҪΪ - ÕâЩ°æ±¾ÉèÖôóÒ»µãµÄÖµÀ´°²×°ËüÃÇ¡£ + °²×°³ÌÐò²¢²»»á¼ì²éÄúÊÇ·ñÓÐ×ã¹»µÄÓ²ÅÌ¿Õ¼ä, + ÔÚÑ¡ÔñÕâÒ»Ïî֮ǰÇëÏÈÈ·¶¨ÄúÓÐ×ã¹»µÄÓ²Å̿ռ䡣 + Ä¿Ç° FreeBSD &rel.current; °æ±¾ÖУ¬ FreeBSD Ports Collection + ´óÔ¼Õ¼Óà &ports.size; ´óСµÄÓ²Å̿ռ䡣 + ¶ÔÓÚ½üÆڵİ汾Äú¿ÉÄÜÐèÒª¸ü¶àһЩ¿Õ¼äÀ´°²×°ËûÃÇ¡£ User Confirmation Requested Would you like to install the FreeBSD Ports Collection? @@ -1919,8 +1947,8 @@ Install from a FreeBSD CD/DVD¡£È·ÈÏ &gui.ok; ±»Ñ¡È¡£¬È»ºó°´ Enter ¿ªÊ¼°²×°³ÌÐò¡£ - Èç¹ûҪʹÓÃÆäËüµÄ·½Ê½°²×°£¬ÇëÑ¡ÔñÊʵ±µÄ°²×°½éÖÊÈ»ºó°´ÕÕÆÁĻָʾ - ½øÐа²×°¡£ + Èç¹ûҪʹÓÃÆäËüµÄ·½Ê½°²×°£¬ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 05:23:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55F9116A41B; Wed, 19 Dec 2007 05:23:42 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0FCD716A419 for ; Wed, 19 Dec 2007 05:23:42 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D21BF13C458 for ; Wed, 19 Dec 2007 05:23:41 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ5NfBT036821 for ; Wed, 19 Dec 2007 05:23:41 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ5Nfon036818 for perforce@freebsd.org; Wed, 19 Dec 2007 05:23:41 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 19 Dec 2007 05:23:41 GMT Message-Id: <200712190523.lBJ5Nfon036818@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131216 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 05:23:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131216 Change 131216 by kmacy@entropy_kmacy_xen31 on 2007/12/19 05:23:33 IFC: #131215 Affected files ... .. //depot/projects/xen31/lib/libc/amd64/Symbol.map#3 integrate .. //depot/projects/xen31/lib/libc/i386/Symbol.map#3 integrate .. //depot/projects/xen31/lib/libc/ia64/Symbol.map#3 integrate .. //depot/projects/xen31/lib/libc/sparc64/Symbol.map#3 integrate .. //depot/projects/xen31/lib/libc/stdio/Symbol.map#2 integrate .. //depot/projects/xen31/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/xen31/lib/libc/stdlib/malloc.c#4 integrate .. //depot/projects/xen31/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/xen31/lib/libc/sys/select.2#2 integrate .. //depot/projects/xen31/lib/libfetch/common.c#3 integrate .. //depot/projects/xen31/lib/libfetch/common.h#3 integrate .. //depot/projects/xen31/lib/libfetch/fetch.3#2 integrate .. //depot/projects/xen31/lib/libfetch/fetch.c#3 integrate .. //depot/projects/xen31/lib/libfetch/ftp.c#3 integrate .. //depot/projects/xen31/lib/libfetch/http.c#3 integrate .. //depot/projects/xen31/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/xen31/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/xen31/lib/msun/Symbol.map#3 integrate .. //depot/projects/xen31/lib/msun/ld128/s_nanl.c#2 integrate .. //depot/projects/xen31/lib/msun/ld80/s_nanl.c#2 integrate .. //depot/projects/xen31/lib/msun/src/math_private.h#2 integrate .. //depot/projects/xen31/lib/msun/src/s_nan.c#2 integrate .. //depot/projects/xen31/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/xen31/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/xen31/share/misc/Makefile#2 integrate .. //depot/projects/xen31/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/xen31/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/xen31/sys/dev/cxgb/cxgb_main.c#3 integrate .. //depot/projects/xen31/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/xen31/sys/kern/kern_sig.c#5 integrate .. //depot/projects/xen31/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/xen31/sys/net/if_bridge.c#3 integrate .. //depot/projects/xen31/sys/net/if_lagg.c#5 integrate .. //depot/projects/xen31/sys/netinet/sctp_bsd_addr.c#2 integrate .. //depot/projects/xen31/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/xen31/sys/netinet/tcp_offload.h#2 integrate .. //depot/projects/xen31/sys/netinet/tcp_subr.c#4 integrate .. //depot/projects/xen31/sys/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/xen31/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/xen31/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/xen31/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/xen31/usr.bin/netstat/inet.c#2 integrate .. //depot/projects/xen31/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/xen31/usr.sbin/sysinstall/dist.c#3 integrate .. //depot/projects/xen31/usr.sbin/sysinstall/dist.h#3 integrate Differences ... ==== //depot/projects/xen31/lib/libc/amd64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -71,7 +71,4 @@ _end; __sys_vfork; _vfork; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/xen31/lib/libc/i386/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -68,7 +68,4 @@ _brk; .curbrk; .minbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/xen31/lib/libc/ia64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -69,7 +69,4 @@ minbrk; .cerror; curbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/xen31/lib/libc/sparc64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -96,7 +96,4 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; - - /* used in libm */ - __ULtoQ_D2A; }; ==== //depot/projects/xen31/lib/libc/stdio/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.5 2007/04/29 14:05:19 deischen Exp $ + * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.6 2007/12/18 23:49:05 das Exp $ */ FBSD_1.0 { @@ -108,6 +108,19 @@ __swbuf; wprintf; wscanf; +}; + +FBSDprivate_1.0 { + _flockfile; + _flockfile_debug_stub; + _flockfile_debug; + _ftrylockfile; + _funlockfile; + __vfscanf; + + /* + * xprintf support + */ __use_xprintf; __lowercase_hex; __uppercase_hex; @@ -136,12 +149,3 @@ __printf_arginfo_vis; __printf_render_vis; }; - -FBSDprivate_1.0 { - _flockfile; - _flockfile_debug_stub; - _flockfile_debug; - _ftrylockfile; - _funlockfile; - __vfscanf; -}; ==== //depot/projects/xen31/lib/libc/stdio/vfwprintf.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #endif /* LIBC_SCCS and not lint */ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.27 2007/01/09 00:28:08 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.28 2007/12/18 01:20:33 das Exp $"); /* * Actual wprintf innards. @@ -902,6 +902,7 @@ } else cp = (ch >= 'a') ? L"inf" : L"INF"; size = 3; + flags &= ~ZEROPAD; break; } flags |= FPT; ==== //depot/projects/xen31/lib/libc/stdlib/malloc.c#4 (text+ko) ==== @@ -101,7 +101,14 @@ /* #define MALLOC_PRODUCTION */ #ifndef MALLOC_PRODUCTION + /* + * MALLOC_DEBUG enables assertions and other sanity checks, and disables + * inline functions. + */ # define MALLOC_DEBUG + + /* MALLOC_STATS enables statistics calculation. */ +# define MALLOC_STATS #endif /* @@ -119,7 +126,7 @@ #define MALLOC_BALANCE #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.153 2007/12/17 01:20:04 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.154 2007/12/18 05:27:57 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -156,11 +163,6 @@ #include "un-namespace.h" -/* MALLOC_STATS enables statistics calculation. */ -#ifndef MALLOC_PRODUCTION -# define MALLOC_STATS -#endif - #ifdef MALLOC_DEBUG # ifdef NDEBUG # undef NDEBUG @@ -267,35 +269,40 @@ #define SMALL_MAX_DEFAULT (1U << SMALL_MAX_2POW_DEFAULT) /* - * Maximum desired run header overhead. Runs are sized as small as possible - * such that this setting is still honored, without violating other constraints. - * The goal is to make runs as small as possible without exceeding a per run - * external fragmentation threshold. + * RUN_MAX_OVRHD indicates maximum desired run header overhead. Runs are sized + * as small as possible such that this setting is still honored, without + * violating other constraints. The goal is to make runs as small as possible + * without exceeding a per run external fragmentation threshold. + * + * We use binary fixed point math for overhead computations, where the binary + * point is implicitly RUN_BFP bits to the left. * - * Note that it is possible to set this low enough that it cannot be honored - * for some/all object sizes, since there is one bit of header overhead per - * object (plus a constant). In such cases, this constraint is relaxed. + * Note that it is possible to set RUN_MAX_OVRHD low enough that it cannot be + * honored for some/all object sizes, since there is one bit of header overhead + * per object (plus a constant). This constraint is relaxed (ignored) for runs + * that are so small that the per-region overhead is greater than: * - * RUN_MAX_OVRHD_RELAX specifies the maximum number of bits per region of - * overhead for which RUN_MAX_OVRHD is relaxed. + * (RUN_MAX_OVRHD / (reg_size << (3+RUN_BFP)) */ -#define RUN_MAX_OVRHD 0.015 -#define RUN_MAX_OVRHD_RELAX 1.5 +#define RUN_BFP 12 +/* \/ Implicit binary fixed point. */ +#define RUN_MAX_OVRHD 0x0000003dU +#define RUN_MAX_OVRHD_RELAX 0x00001800U /* Put a cap on small object run size. This overrides RUN_MAX_OVRHD. */ #define RUN_MAX_SMALL_2POW 15 #define RUN_MAX_SMALL (1U << RUN_MAX_SMALL_2POW) #ifdef MALLOC_LAZY_FREE -/* Default size of each arena's lazy free cache. */ -# define LAZY_FREE_2POW_DEFAULT 8 -/* - * Number of pseudo-random probes to conduct before considering the cache to be - * overly full. It takes on average n probes to detect fullness of (n-1)/n. - * However, we are effectively doing multiple non-independent trials (each - * deallocation is a trial), so the actual average threshold for clearing the - * cache is somewhat lower. - */ + /* Default size of each arena's lazy free cache. */ +# define LAZY_FREE_2POW_DEFAULT 8 + /* + * Number of pseudo-random probes to conduct before considering the cache to + * be overly full. It takes on average n probes to detect fullness of + * (n-1)/n. However, we are effectively doing multiple non-independent + * trials (each deallocation is a trial), so the actual average threshold + * for clearing the cache is somewhat lower. + */ # define LAZY_FREE_NPROBES 5 #endif @@ -323,20 +330,20 @@ #define BLOCK_COST_2POW 4 #ifdef MALLOC_BALANCE -/* - * We use an exponential moving average to track recent lock contention, where - * the size of the history window is N, and alpha=2/(N+1). - * - * Due to integer math rounding, very small values here can cause substantial - * degradation in accuracy, thus making the moving average decay faster than it - * would with precise calculation. - */ + /* + * We use an exponential moving average to track recent lock contention, + * where the size of the history window is N, and alpha=2/(N+1). + * + * Due to integer math rounding, very small values here can cause + * substantial degradation in accuracy, thus making the moving average decay + * faster than it would with precise calculation. + */ # define BALANCE_ALPHA_INV_2POW 9 -/* - * Threshold value for the exponential moving contention average at which to - * re-assign a thread. - */ + /* + * Threshold value for the exponential moving contention average at which to + * re-assign a thread. + */ # define BALANCE_THRESHOLD_DEFAULT (1U << (SPIN_LIMIT_2POW-4)) #endif @@ -2468,7 +2475,6 @@ size_t try_run_size, good_run_size; unsigned good_nregs, good_mask_nelms, good_reg0_offset; unsigned try_nregs, try_mask_nelms, try_reg0_offset; - float max_ovrhd = RUN_MAX_OVRHD; assert(min_run_size >= pagesize); assert(min_run_size <= arena_maxclass); @@ -2486,7 +2492,7 @@ */ try_run_size = min_run_size; try_nregs = ((try_run_size - sizeof(arena_run_t)) / bin->reg_size) - + 1; /* Counter-act the first line of the loop. */ + + 1; /* Counter-act try_nregs-- in loop. */ do { try_nregs--; try_mask_nelms = (try_nregs >> (SIZEOF_INT_2POW + 3)) + @@ -2519,9 +2525,8 @@ } while (sizeof(arena_run_t) + (sizeof(unsigned) * (try_mask_nelms - 1)) > try_reg0_offset); } while (try_run_size <= arena_maxclass && try_run_size <= RUN_MAX_SMALL - && max_ovrhd > RUN_MAX_OVRHD_RELAX / ((float)(bin->reg_size << 3)) - && ((float)(try_reg0_offset)) / ((float)(try_run_size)) > - max_ovrhd); + && RUN_MAX_OVRHD * (bin->reg_size << 3) > RUN_MAX_OVRHD_RELAX + && (try_reg0_offset << RUN_BFP) > RUN_MAX_OVRHD * try_run_size); assert(sizeof(arena_run_t) + (sizeof(unsigned) * (good_mask_nelms - 1)) <= good_reg0_offset); ==== //depot/projects/xen31/lib/libc/stdtime/localtime.c#2 (text+ko) ==== @@ -9,7 +9,7 @@ static char elsieid[] __unused = "@(#)localtime.c 7.78"; #endif /* !defined NOID */ #endif /* !defined lint */ -__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.41 2007/01/19 01:16:35 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.42 2007/12/19 04:30:10 imp Exp $"); /* ** Leap second handling from Bradley White (bww@k.gp.cs.cmu.edu). @@ -1093,14 +1093,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&localtime_mutex); if (localtime_key < 0) { - if (_pthread_key_create(&localtime_key, free) < 0) { - _pthread_mutex_unlock(&localtime_mutex); - return(NULL); + _pthread_mutex_lock(&localtime_mutex); + if (localtime_key < 0) { + if (_pthread_key_create(&localtime_key, free) < 0) { + _pthread_mutex_unlock(&localtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&localtime_mutex); } - _pthread_mutex_unlock(&localtime_mutex); p_tm = _pthread_getspecific(localtime_key); if (p_tm == NULL) { if ((p_tm = (struct tm *)malloc(sizeof(struct tm))) @@ -1146,16 +1148,18 @@ const long offset; struct tm * const tmp; { - _MUTEX_LOCK(&gmt_mutex); if (!gmt_is_set) { - gmt_is_set = TRUE; + _MUTEX_LOCK(&gmt_mutex); + if (!gmt_is_set) { #ifdef ALL_STATE - gmtptr = (struct state *) malloc(sizeof *gmtptr); - if (gmtptr != NULL) + gmtptr = (struct state *) malloc(sizeof *gmtptr); + if (gmtptr != NULL) #endif /* defined ALL_STATE */ - gmtload(gmtptr); + gmtload(gmtptr); + gmt_is_set = TRUE; + } + _MUTEX_UNLOCK(&gmt_mutex); } - _MUTEX_UNLOCK(&gmt_mutex); timesub(timep, offset, gmtptr, tmp); #ifdef TM_ZONE /* @@ -1187,14 +1191,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&gmtime_mutex); if (gmtime_key < 0) { - if (_pthread_key_create(&gmtime_key, free) < 0) { - _pthread_mutex_unlock(&gmtime_mutex); - return(NULL); + _pthread_mutex_lock(&gmtime_mutex); + if (gmtime_key < 0) { + if (_pthread_key_create(&gmtime_key, free) < 0) { + _pthread_mutex_unlock(&gmtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&gmtime_mutex); } - _pthread_mutex_unlock(&gmtime_mutex); /* * Changed to follow POSIX.1 threads standard, which * is what BSD currently has. ==== //depot/projects/xen31/lib/libc/sys/select.2#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 -.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.33 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.34 2007/12/19 03:33:13 imp Exp $ .\" .Dd November 17, 2002 .Dt SELECT 2 @@ -222,3 +222,6 @@ by the .Fn select system call. +.Fx +does not modify the return value, which can cause problems for applications +ported from other systems. ==== //depot/projects/xen31/lib/libfetch/common.c#3 (text+ko) ==== @@ -27,14 +27,16 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.51 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.53 2007/12/19 00:26:36 des Exp $"); #include #include #include #include + #include +#include #include #include #include @@ -734,3 +736,51 @@ fclose(f); return (-1); } + +/* + * The no_proxy environment variable specifies a set of domains for + * which the proxy should not be consulted; the contents is a comma-, + * or space-separated list of domain names. A single asterisk will + * override all proxy variables and no transactions will be proxied + * (for compatability with lynx and curl, see the discussion at + * ). + */ +int +fetch_no_proxy_match(const char *host) +{ + const char *no_proxy, *p, *q; + size_t h_len, d_len; + + if ((no_proxy = getenv("NO_PROXY")) == NULL && + (no_proxy = getenv("no_proxy")) == NULL) + return (0); + + /* asterisk matches any hostname */ + if (strcmp(no_proxy, "*") == 0) + return (1); + + h_len = strlen(host); + p = no_proxy; + do { + /* position p at the beginning of a domain suffix */ + while (*p == ',' || isspace((unsigned char)*p)) + p++; + + /* position q at the first separator character */ + for (q = p; *q; ++q) + if (*q == ',' || isspace((unsigned char)*q)) + break; + + d_len = q - p; + if (d_len > 0 && h_len > d_len && + strncasecmp(host + h_len - d_len, + p, d_len) == 0) { + /* domain name matches */ + return (1); + } + + p = q + 1; + } while (*q); + + return (0); +} ==== //depot/projects/xen31/lib/libfetch/common.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE 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/libfetch/common.h,v 1.29 2007/12/14 10:26:58 des Exp $ + * $FreeBSD: src/lib/libfetch/common.h,v 1.30 2007/12/18 11:03:07 des Exp $ */ #ifndef _COMMON_H_INCLUDED @@ -90,6 +90,7 @@ int fetch_add_entry(struct url_ent **, int *, int *, const char *, struct url_stat *); int fetch_netrc_auth(struct url *url); +int fetch_no_proxy_match(const char *); #define ftp_seterr(n) fetch_seterr(ftp_errlist, n) #define http_seterr(n) fetch_seterr(http_errlist, n) ==== //depot/projects/xen31/lib/libfetch/fetch.3#2 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.63 2007/05/24 20:28:14 des Exp $ +.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.64 2007/12/18 11:03:26 des Exp $ .\" -.Dd April 22, 2007 +.Dd December 18, 2007 .Dt FETCH 3 .Os .Sh NAME @@ -532,6 +532,14 @@ .Xr ftp 1 for a description of the file format. This feature is experimental. +.It Ev NO_PROXY +Either a single asterisk, which disables the use of proxies +altogether, or a comma- or whitespace-separated list of hosts for +which proxies should not be used. +.It Ev no_proxy +Same as +.Ev NO_PROXY , +for compatibility. .El .Sh EXAMPLES To access a proxy server on @@ -555,6 +563,14 @@ HTTP_PROXY=http://proxy.example.com:8080 HTTP_PROXY_AUTH=basic:*:: .Ed +.Pp +To disable the use of a proxy for an HTTP server running on the local +host, define +.Ev NO_PROXY +as follows: +.Bd -literal -offset indent +NO_PROXY=localhost,127.0.0.1 +.Ed .Sh SEE ALSO .Xr fetch 1 , .Xr ftpio 3 , ==== //depot/projects/xen31/lib/libfetch/fetch.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.39 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.41 2007/12/19 00:26:36 des Exp $"); #include #include @@ -369,7 +369,7 @@ /* port */ if (*p == ':') { for (q = ++p; *q && (*q != '/'); q++) - if (isdigit(*q)) + if (isdigit((unsigned char)*q)) u->port = u->port * 10 + (*q - '0'); else { /* invalid port */ @@ -395,7 +395,7 @@ } u->doc = doc; while (*p != '\0') { - if (!isspace(*p)) { + if (!isspace((unsigned char)*p)) { *doc++ = *p++; } else { *doc++ = '%'; ==== //depot/projects/xen31/lib/libfetch/ftp.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.97 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.100 2007/12/19 00:26:36 des Exp $"); /* * Portions of this code were taken from or based on ftpio.c: @@ -102,11 +102,16 @@ static struct url cached_host; static conn_t *cached_connection; -#define isftpreply(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) \ - && (foo[3] == ' ' || foo[3] == '\0')) -#define isftpinfo(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) && foo[3] == '-') +#define isftpreply(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + (foo[3] == ' ' || foo[3] == '\0')) +#define isftpinfo(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + foo[3] == '-') /* * Translate IPv4 mapped IPv6 address to IPv4 address @@ -150,7 +155,8 @@ } } - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && + isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; @@ -414,11 +420,11 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; - for (us->size = 0; *ln && isdigit(*ln); ln++) + for (us->size = 0; *ln && isdigit((unsigned char)*ln); ln++) us->size = us->size * 10 + *ln - '0'; - if (*ln && !isspace(*ln)) { + if (*ln && !isspace((unsigned char)*ln)) { ftp_seterr(FTP_PROTOCOL_ERROR); us->size = -1; return (-1); @@ -432,7 +438,7 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; switch (strspn(ln, "0123456789")) { case 14: @@ -691,7 +697,7 @@ switch (e) { case FTP_PASSIVE_MODE: case FTP_LPASSIVE_MODE: - for (p = ln + 3; *p && !isdigit(*p); p++) + for (p = ln + 3; *p && !isdigit((unsigned char)*p); p++) /* nothing */ ; if (!*p) { e = FTP_PROTOCOL_ERROR; @@ -1057,13 +1063,15 @@ * Check the proxy settings */ static struct url * -ftp_get_proxy(const char *flags) +ftp_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("FTP_PROXY")) || (p = getenv("ftp_proxy")) || (p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p)) != NULL) { @@ -1140,7 +1148,7 @@ FILE * fetchXGetFTP(struct url *url, struct url_stat *us, const char *flags) { - return (ftp_request(url, "RETR", us, ftp_get_proxy(flags), flags)); + return (ftp_request(url, "RETR", us, ftp_get_proxy(url, flags), flags)); } /* @@ -1158,9 +1166,8 @@ FILE * fetchPutFTP(struct url *url, const char *flags) { - return (ftp_request(url, CHECK_FLAG('a') ? "APPE" : "STOR", NULL, - ftp_get_proxy(flags), flags)); + ftp_get_proxy(url, flags), flags)); } /* @@ -1171,9 +1178,10 @@ { FILE *f; - f = ftp_request(url, "STAT", us, ftp_get_proxy(flags), flags); + f = ftp_request(url, "STAT", us, ftp_get_proxy(url, flags), flags); if (f == NULL) return (-1); + fclose(f); return (0); } ==== //depot/projects/xen31/lib/libfetch/http.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.79 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.82 2007/12/19 00:26:36 des Exp $"); /* * The following copyright applies to the base64 code: @@ -137,15 +137,15 @@ if (fetch_getln(io->conn) == -1) return (-1); - if (io->conn->buflen < 2 || !ishexnumber(*io->conn->buf)) + if (io->conn->buflen < 2 || !isxdigit((unsigned char)*io->conn->buf)) return (-1); - for (p = io->conn->buf; *p && !isspace(*p); ++p) { + for (p = io->conn->buf; *p && !isspace((unsigned char)*p); ++p) { if (*p == ';') break; - if (!ishexnumber(*p)) + if (!isxdigit((unsigned char)*p)) return (-1); - if (isdigit(*p)) { + if (isdigit((unsigned char)*p)) { io->chunksize = io->chunksize * 16 + *p - '0'; } else { @@ -417,7 +417,10 @@ return (HTTP_PROTOCOL_ERROR); p += 4; } - if (*p != ' ' || !isdigit(p[1]) || !isdigit(p[2]) || !isdigit(p[3])) + if (*p != ' ' || + !isdigit((unsigned char)p[1]) || + !isdigit((unsigned char)p[2]) || + !isdigit((unsigned char)p[3])) return (HTTP_PROTOCOL_ERROR); conn->err = (p[1] - '0') * 100 + (p[2] - '0') * 10 + (p[3] - '0'); @@ -435,7 +438,7 @@ /* nothing */; if (*str || *hdr != ':') return (NULL); - while (*hdr && isspace(*++hdr)) + while (*hdr && isspace((unsigned char)*++hdr)) /* nothing */; return (hdr); } @@ -450,7 +453,7 @@ if (fetch_getln(conn) == -1) return (hdr_syserror); - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; if (conn->buflen == 0) @@ -499,7 +502,7 @@ { off_t len; - for (len = 0; *p && isdigit(*p); ++p) + for (len = 0; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + (*p - '0'); if (*p) return (-1); @@ -524,16 +527,16 @@ first = last = -1; ++p; } else { - for (first = 0; *p && isdigit(*p); ++p) + for (first = 0; *p && isdigit((unsigned char)*p); ++p) first = first * 10 + *p - '0'; if (*p != '-') return (-1); - for (last = 0, ++p; *p && isdigit(*p); ++p) + for (last = 0, ++p; *p && isdigit((unsigned char)*p); ++p) last = last * 10 + *p - '0'; } if (first > last || *p != '/') return (-1); - for (len = 0, ++p; *p && isdigit(*p); ++p) + for (len = 0, ++p; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + *p - '0'; if (*p || len < last - first + 1) return (-1); @@ -718,13 +721,15 @@ } static struct url * -http_get_proxy(const char *flags) +http_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p))) { if (!*purl->scheme) @@ -747,7 +752,7 @@ comment = tag = 0; while ((line = fgetln(in, &len)) != NULL) { - while (len && isspace(line[len - 1])) + while (len && isspace((unsigned char)line[len - 1])) --len; for (p = q = line; q < line + len; ++q) { if (comment && *q == '-') { @@ -1167,7 +1172,7 @@ FILE * fetchXGetHTTP(struct url *URL, struct url_stat *us, const char *flags) { - return (http_request(URL, "GET", us, http_get_proxy(flags), flags)); + return (http_request(URL, "GET", us, http_get_proxy(URL, flags), flags)); } /* @@ -1197,7 +1202,7 @@ { FILE *f; - f = http_request(URL, "HEAD", us, http_get_proxy(flags), flags); + f = http_request(URL, "HEAD", us, http_get_proxy(URL, flags), flags); if (f == NULL) return (-1); fclose(f); ==== //depot/projects/xen31/lib/libstand/bzipfs.c#2 (text+ko) ==== @@ -26,9 +26,25 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.7 2005/05/17 16:22:54 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.8 2007/12/18 01:50:49 sobomax Exp $"); +#ifndef REGRESSION #include "stand.h" +#else +#include +#include +#include +#include + +struct open_file { + int f_flags; /* see F_* below */ + void *f_fsdata; /* file system specific data */ +}; +#define F_READ 0x0001 /* file opened for reading */ +#define EOFFSET (ELAST+8) /* relative seek not supported */ +static inline u_int min(u_int a, u_int b) { return (a < b ? a : b); } +#define panic(x, y) abort() +#endif #include #include @@ -41,6 +57,7 @@ int bzf_rawfd; bz_stream bzf_bzstream; char bzf_buf[BZ_BUFSIZE]; + int bzf_endseen; }; static int bzf_fill(struct bz_file *z); @@ -50,6 +67,7 @@ static off_t bzf_seek(struct open_file *f, off_t offset, int where); static int bzf_stat(struct open_file *f, struct stat *sb); +#ifndef REGRESSION struct fs_ops bzipfs_fsops = { "bzip", bzf_open, @@ -60,6 +78,7 @@ bzf_stat, null_readdir }; +#endif #if 0 void * @@ -220,7 +239,7 @@ bzf->bzf_bzstream.next_out = buf; /* where and how much */ bzf->bzf_bzstream.avail_out = size; - while (bzf->bzf_bzstream.avail_out) { + while (bzf->bzf_bzstream.avail_out && bzf->bzf_endseen == 0) { if ((bzf->bzf_bzstream.avail_in == 0) && (bzf_fill(bzf) == -1)) { printf("bzf_read: fill error\n"); return(EIO); @@ -234,6 +253,7 @@ error = BZ2_bzDecompress(&bzf->bzf_bzstream); /* decompression pass */ if (error == BZ_STREAM_END) { /* EOF, all done */ + bzf->bzf_endseen = 1; break; } if (error != BZ_OK) { /* argh, decompression error */ @@ -301,3 +321,27 @@ { panic("bzipfs: critical error %d in bzip2 library occured\n", errorcode); } + +#ifdef REGRESSION +/* Small test case, open and decompress test.bz2 */ +int main() +{ + struct open_file f; + char buf[1024]; + size_t resid; + int err; + + memset(&f, '\0', sizeof(f)); + f.f_flags = F_READ; + err = bzf_open("test", &f); + if (err != 0) + exit(1); + do { + err = bzf_read(&f, buf, sizeof(buf), &resid); + } while (err == 0 && resid != sizeof(buf)); + + if (err != 0) + exit(2); + exit(0); +} +#endif ==== //depot/projects/xen31/lib/libstand/gzipfs.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libstand/gzipfs.c,v 1.13 2004/01/21 20:12:23 jhb Exp $"); +__FBSDID("$FreeBSD: src/lib/libstand/gzipfs.c,v 1.14 2007/12/18 01:50:49 sobomax Exp $"); #include "stand.h" @@ -41,6 +41,7 @@ off_t zf_dataoffset; z_stream zf_zstream; char zf_buf[Z_BUFSIZE]; + int zf_endseen; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 06:27:53 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 266F216A41A; Wed, 19 Dec 2007 06:27:53 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B688716A418 for ; Wed, 19 Dec 2007 06:27:52 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8502F13C461 for ; Wed, 19 Dec 2007 06:27:52 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJ6Rq1H046966 for ; Wed, 19 Dec 2007 06:27:52 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJ6RqdM046963 for perforce@freebsd.org; Wed, 19 Dec 2007 06:27:52 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 06:27:52 GMT Message-Id: <200712190627.lBJ6RqdM046963@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131221 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 06:27:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=131221 Change 131221 by jb@jb_freebsd1 on 2007/12/19 06:27:36 Generate CTF across all supported archs now. Affected files ... .. //depot/projects/dtrace/src/share/mk/sys.mk#18 edit Differences ... ==== //depot/projects/dtrace/src/share/mk/sys.mk#18 (text+ko) ==== @@ -45,10 +45,6 @@ .endif .endif -.if ${MACHINE_ARCH} != "amd64" && ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH} != "sparc64" -NO_CTF= 1 -.endif - # C Type Format data is required for DTrace CTFFLAGS ?= -L VERSION From owner-p4-projects@FreeBSD.ORG Wed Dec 19 18:52:22 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 97E3B16A469; Wed, 19 Dec 2007 18:52:22 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2367A16A41B for ; Wed, 19 Dec 2007 18:52:22 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1A30D13C50B for ; Wed, 19 Dec 2007 18:52:22 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJIqLDQ001706 for ; Wed, 19 Dec 2007 18:52:21 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJIqKEb001702 for perforce@freebsd.org; Wed, 19 Dec 2007 18:52:20 GMT (envelope-from marcel@freebsd.org) Date: Wed, 19 Dec 2007 18:52:20 GMT Message-Id: <200712191852.lBJIqKEb001702@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131244 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 18:52:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131244 Change 131244 by marcel@marcel_cluster on 2007/12/19 18:51:55 IFC @131243 Affected files ... .. //depot/projects/e500/lib/libc/amd64/Symbol.map#5 integrate .. //depot/projects/e500/lib/libc/i386/Symbol.map#5 integrate .. //depot/projects/e500/lib/libc/ia64/Symbol.map#5 integrate .. //depot/projects/e500/lib/libc/sparc64/Symbol.map#5 integrate .. //depot/projects/e500/lib/libc/stdio/Symbol.map#2 integrate .. //depot/projects/e500/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/e500/lib/libc/stdlib/malloc.c#5 integrate .. //depot/projects/e500/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/e500/lib/libc/sys/select.2#2 integrate .. //depot/projects/e500/lib/libfetch/Makefile#5 integrate .. //depot/projects/e500/lib/libfetch/common.c#3 integrate .. //depot/projects/e500/lib/libfetch/common.h#3 integrate .. //depot/projects/e500/lib/libfetch/fetch.3#3 integrate .. //depot/projects/e500/lib/libfetch/fetch.c#3 integrate .. //depot/projects/e500/lib/libfetch/ftp.c#3 integrate .. //depot/projects/e500/lib/libfetch/http.c#4 integrate .. //depot/projects/e500/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/e500/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/e500/lib/msun/Symbol.map#5 integrate .. //depot/projects/e500/lib/msun/ld128/s_nanl.c#2 integrate .. //depot/projects/e500/lib/msun/ld80/s_nanl.c#2 integrate .. //depot/projects/e500/lib/msun/src/math_private.h#2 integrate .. //depot/projects/e500/lib/msun/src/s_nan.c#2 integrate .. //depot/projects/e500/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/e500/share/man/man4/syncache.4#2 integrate .. //depot/projects/e500/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/e500/share/misc/Makefile#2 integrate .. //depot/projects/e500/share/misc/bsd-family-tree#5 integrate .. //depot/projects/e500/sys/arm/at91/at91.c#3 integrate .. //depot/projects/e500/sys/boot/forth/support.4th#2 integrate .. //depot/projects/e500/sys/conf/files.powerpc#12 integrate .. //depot/projects/e500/sys/dev/aac/aac.c#4 integrate .. //depot/projects/e500/sys/dev/cxgb/cxgb_main.c#8 integrate .. //depot/projects/e500/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/e500/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/e500/sys/dev/mfi/mfi_pci.c#4 integrate .. //depot/projects/e500/sys/dev/powermac_nvram/powermac_nvram.c#3 integrate .. //depot/projects/e500/sys/dev/uart/uart_cpu_powerpc.c#3 integrate .. //depot/projects/e500/sys/kern/kern_sig.c#8 integrate .. //depot/projects/e500/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/e500/sys/net/if_bridge.c#6 integrate .. //depot/projects/e500/sys/net/if_lagg.c#7 integrate .. //depot/projects/e500/sys/netinet/sctp_bsd_addr.c#5 integrate .. //depot/projects/e500/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/e500/sys/netinet/tcp_offload.h#2 integrate .. //depot/projects/e500/sys/netinet/tcp_subr.c#7 integrate .. //depot/projects/e500/sys/netinet/tcp_syncache.c#9 integrate .. //depot/projects/e500/sys/netinet/tcp_usrreq.c#6 integrate .. //depot/projects/e500/sys/powerpc/aim/ofw_machdep.c#5 integrate .. //depot/projects/e500/sys/powerpc/conf/NOTES#5 integrate .. //depot/projects/e500/sys/powerpc/include/_bus.h#3 integrate .. //depot/projects/e500/sys/powerpc/include/bus.h#3 integrate .. //depot/projects/e500/sys/powerpc/powermac/grackle.c#5 integrate .. //depot/projects/e500/sys/powerpc/powermac/macio.c#3 integrate .. //depot/projects/e500/sys/powerpc/powermac/uninorth.c#5 integrate .. //depot/projects/e500/sys/powerpc/powerpc/bus_machdep.c#2 integrate .. //depot/projects/e500/sys/powerpc/psim/iobus.c#4 integrate .. //depot/projects/e500/sys/vm/vm_page.c#9 integrate .. //depot/projects/e500/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/e500/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/e500/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/e500/usr.bin/ministat/Makefile#1 branch .. //depot/projects/e500/usr.bin/ministat/README#1 branch .. //depot/projects/e500/usr.bin/ministat/chameleon#1 branch .. //depot/projects/e500/usr.bin/ministat/iguana#1 branch .. //depot/projects/e500/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/e500/usr.bin/netstat/inet.c#4 integrate .. //depot/projects/e500/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/e500/usr.sbin/sysinstall/dist.c#4 integrate .. //depot/projects/e500/usr.sbin/sysinstall/dist.h#4 integrate Differences ... ==== //depot/projects/e500/lib/libc/amd64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -71,7 +71,4 @@ _end; __sys_vfork; _vfork; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/i386/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -68,7 +68,4 @@ _brk; .curbrk; .minbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/ia64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -69,7 +69,4 @@ minbrk; .cerror; curbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/e500/lib/libc/sparc64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -96,7 +96,4 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; - - /* used in libm */ - __ULtoQ_D2A; }; ==== //depot/projects/e500/lib/libc/stdio/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.5 2007/04/29 14:05:19 deischen Exp $ + * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.6 2007/12/18 23:49:05 das Exp $ */ FBSD_1.0 { @@ -108,6 +108,19 @@ __swbuf; wprintf; wscanf; +}; + +FBSDprivate_1.0 { + _flockfile; + _flockfile_debug_stub; + _flockfile_debug; + _ftrylockfile; + _funlockfile; + __vfscanf; + + /* + * xprintf support + */ __use_xprintf; __lowercase_hex; __uppercase_hex; @@ -136,12 +149,3 @@ __printf_arginfo_vis; __printf_render_vis; }; - -FBSDprivate_1.0 { - _flockfile; - _flockfile_debug_stub; - _flockfile_debug; - _ftrylockfile; - _funlockfile; - __vfscanf; -}; ==== //depot/projects/e500/lib/libc/stdio/vfwprintf.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #endif /* LIBC_SCCS and not lint */ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.27 2007/01/09 00:28:08 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.28 2007/12/18 01:20:33 das Exp $"); /* * Actual wprintf innards. @@ -902,6 +902,7 @@ } else cp = (ch >= 'a') ? L"inf" : L"INF"; size = 3; + flags &= ~ZEROPAD; break; } flags |= FPT; ==== //depot/projects/e500/lib/libc/stdlib/malloc.c#5 (text+ko) ==== @@ -101,7 +101,14 @@ /* #define MALLOC_PRODUCTION */ #ifndef MALLOC_PRODUCTION + /* + * MALLOC_DEBUG enables assertions and other sanity checks, and disables + * inline functions. + */ # define MALLOC_DEBUG + + /* MALLOC_STATS enables statistics calculation. */ +# define MALLOC_STATS #endif /* @@ -119,7 +126,7 @@ #define MALLOC_BALANCE #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.153 2007/12/17 01:20:04 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.154 2007/12/18 05:27:57 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -156,11 +163,6 @@ #include "un-namespace.h" -/* MALLOC_STATS enables statistics calculation. */ -#ifndef MALLOC_PRODUCTION -# define MALLOC_STATS -#endif - #ifdef MALLOC_DEBUG # ifdef NDEBUG # undef NDEBUG @@ -267,35 +269,40 @@ #define SMALL_MAX_DEFAULT (1U << SMALL_MAX_2POW_DEFAULT) /* - * Maximum desired run header overhead. Runs are sized as small as possible - * such that this setting is still honored, without violating other constraints. - * The goal is to make runs as small as possible without exceeding a per run - * external fragmentation threshold. + * RUN_MAX_OVRHD indicates maximum desired run header overhead. Runs are sized + * as small as possible such that this setting is still honored, without + * violating other constraints. The goal is to make runs as small as possible + * without exceeding a per run external fragmentation threshold. + * + * We use binary fixed point math for overhead computations, where the binary + * point is implicitly RUN_BFP bits to the left. * - * Note that it is possible to set this low enough that it cannot be honored - * for some/all object sizes, since there is one bit of header overhead per - * object (plus a constant). In such cases, this constraint is relaxed. + * Note that it is possible to set RUN_MAX_OVRHD low enough that it cannot be + * honored for some/all object sizes, since there is one bit of header overhead + * per object (plus a constant). This constraint is relaxed (ignored) for runs + * that are so small that the per-region overhead is greater than: * - * RUN_MAX_OVRHD_RELAX specifies the maximum number of bits per region of - * overhead for which RUN_MAX_OVRHD is relaxed. + * (RUN_MAX_OVRHD / (reg_size << (3+RUN_BFP)) */ -#define RUN_MAX_OVRHD 0.015 -#define RUN_MAX_OVRHD_RELAX 1.5 +#define RUN_BFP 12 +/* \/ Implicit binary fixed point. */ +#define RUN_MAX_OVRHD 0x0000003dU +#define RUN_MAX_OVRHD_RELAX 0x00001800U /* Put a cap on small object run size. This overrides RUN_MAX_OVRHD. */ #define RUN_MAX_SMALL_2POW 15 #define RUN_MAX_SMALL (1U << RUN_MAX_SMALL_2POW) #ifdef MALLOC_LAZY_FREE -/* Default size of each arena's lazy free cache. */ -# define LAZY_FREE_2POW_DEFAULT 8 -/* - * Number of pseudo-random probes to conduct before considering the cache to be - * overly full. It takes on average n probes to detect fullness of (n-1)/n. - * However, we are effectively doing multiple non-independent trials (each - * deallocation is a trial), so the actual average threshold for clearing the - * cache is somewhat lower. - */ + /* Default size of each arena's lazy free cache. */ +# define LAZY_FREE_2POW_DEFAULT 8 + /* + * Number of pseudo-random probes to conduct before considering the cache to + * be overly full. It takes on average n probes to detect fullness of + * (n-1)/n. However, we are effectively doing multiple non-independent + * trials (each deallocation is a trial), so the actual average threshold + * for clearing the cache is somewhat lower. + */ # define LAZY_FREE_NPROBES 5 #endif @@ -323,20 +330,20 @@ #define BLOCK_COST_2POW 4 #ifdef MALLOC_BALANCE -/* - * We use an exponential moving average to track recent lock contention, where - * the size of the history window is N, and alpha=2/(N+1). - * - * Due to integer math rounding, very small values here can cause substantial - * degradation in accuracy, thus making the moving average decay faster than it - * would with precise calculation. - */ + /* + * We use an exponential moving average to track recent lock contention, + * where the size of the history window is N, and alpha=2/(N+1). + * + * Due to integer math rounding, very small values here can cause + * substantial degradation in accuracy, thus making the moving average decay + * faster than it would with precise calculation. + */ # define BALANCE_ALPHA_INV_2POW 9 -/* - * Threshold value for the exponential moving contention average at which to - * re-assign a thread. - */ + /* + * Threshold value for the exponential moving contention average at which to + * re-assign a thread. + */ # define BALANCE_THRESHOLD_DEFAULT (1U << (SPIN_LIMIT_2POW-4)) #endif @@ -2468,7 +2475,6 @@ size_t try_run_size, good_run_size; unsigned good_nregs, good_mask_nelms, good_reg0_offset; unsigned try_nregs, try_mask_nelms, try_reg0_offset; - float max_ovrhd = RUN_MAX_OVRHD; assert(min_run_size >= pagesize); assert(min_run_size <= arena_maxclass); @@ -2486,7 +2492,7 @@ */ try_run_size = min_run_size; try_nregs = ((try_run_size - sizeof(arena_run_t)) / bin->reg_size) - + 1; /* Counter-act the first line of the loop. */ + + 1; /* Counter-act try_nregs-- in loop. */ do { try_nregs--; try_mask_nelms = (try_nregs >> (SIZEOF_INT_2POW + 3)) + @@ -2519,9 +2525,8 @@ } while (sizeof(arena_run_t) + (sizeof(unsigned) * (try_mask_nelms - 1)) > try_reg0_offset); } while (try_run_size <= arena_maxclass && try_run_size <= RUN_MAX_SMALL - && max_ovrhd > RUN_MAX_OVRHD_RELAX / ((float)(bin->reg_size << 3)) - && ((float)(try_reg0_offset)) / ((float)(try_run_size)) > - max_ovrhd); + && RUN_MAX_OVRHD * (bin->reg_size << 3) > RUN_MAX_OVRHD_RELAX + && (try_reg0_offset << RUN_BFP) > RUN_MAX_OVRHD * try_run_size); assert(sizeof(arena_run_t) + (sizeof(unsigned) * (good_mask_nelms - 1)) <= good_reg0_offset); ==== //depot/projects/e500/lib/libc/stdtime/localtime.c#2 (text+ko) ==== @@ -9,7 +9,7 @@ static char elsieid[] __unused = "@(#)localtime.c 7.78"; #endif /* !defined NOID */ #endif /* !defined lint */ -__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.41 2007/01/19 01:16:35 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.42 2007/12/19 04:30:10 imp Exp $"); /* ** Leap second handling from Bradley White (bww@k.gp.cs.cmu.edu). @@ -1093,14 +1093,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&localtime_mutex); if (localtime_key < 0) { - if (_pthread_key_create(&localtime_key, free) < 0) { - _pthread_mutex_unlock(&localtime_mutex); - return(NULL); + _pthread_mutex_lock(&localtime_mutex); + if (localtime_key < 0) { + if (_pthread_key_create(&localtime_key, free) < 0) { + _pthread_mutex_unlock(&localtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&localtime_mutex); } - _pthread_mutex_unlock(&localtime_mutex); p_tm = _pthread_getspecific(localtime_key); if (p_tm == NULL) { if ((p_tm = (struct tm *)malloc(sizeof(struct tm))) @@ -1146,16 +1148,18 @@ const long offset; struct tm * const tmp; { - _MUTEX_LOCK(&gmt_mutex); if (!gmt_is_set) { - gmt_is_set = TRUE; + _MUTEX_LOCK(&gmt_mutex); + if (!gmt_is_set) { #ifdef ALL_STATE - gmtptr = (struct state *) malloc(sizeof *gmtptr); - if (gmtptr != NULL) + gmtptr = (struct state *) malloc(sizeof *gmtptr); + if (gmtptr != NULL) #endif /* defined ALL_STATE */ - gmtload(gmtptr); + gmtload(gmtptr); + gmt_is_set = TRUE; + } + _MUTEX_UNLOCK(&gmt_mutex); } - _MUTEX_UNLOCK(&gmt_mutex); timesub(timep, offset, gmtptr, tmp); #ifdef TM_ZONE /* @@ -1187,14 +1191,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&gmtime_mutex); if (gmtime_key < 0) { - if (_pthread_key_create(&gmtime_key, free) < 0) { - _pthread_mutex_unlock(&gmtime_mutex); - return(NULL); + _pthread_mutex_lock(&gmtime_mutex); + if (gmtime_key < 0) { + if (_pthread_key_create(&gmtime_key, free) < 0) { + _pthread_mutex_unlock(&gmtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&gmtime_mutex); } - _pthread_mutex_unlock(&gmtime_mutex); /* * Changed to follow POSIX.1 threads standard, which * is what BSD currently has. ==== //depot/projects/e500/lib/libc/sys/select.2#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 -.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.33 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.34 2007/12/19 03:33:13 imp Exp $ .\" .Dd November 17, 2002 .Dt SELECT 2 @@ -222,3 +222,6 @@ by the .Fn select system call. +.Fx +does not modify the return value, which can cause problems for applications +ported from other systems. ==== //depot/projects/e500/lib/libfetch/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.51 2007/12/19 05:10:07 ru Exp $ .include @@ -27,9 +27,9 @@ SHLIB_MAJOR= 5 -ftperr.h: ftp.errors +ftperr.h: ftp.errors ${.CURDIR}/Makefile @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/ftp.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ @@ -38,9 +38,9 @@ @echo " { -1, FETCH_UNKNOWN, \"Unknown FTP error\" }" >> ${.TARGET} @echo "};" >> ${.TARGET} -httperr.h: http.errors +httperr.h: http.errors ${.CURDIR}/Makefile @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/http.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ ==== //depot/projects/e500/lib/libfetch/common.c#3 (text+ko) ==== @@ -27,14 +27,16 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.51 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.53 2007/12/19 00:26:36 des Exp $"); #include #include #include #include + #include +#include #include #include #include @@ -734,3 +736,51 @@ fclose(f); return (-1); } + +/* + * The no_proxy environment variable specifies a set of domains for + * which the proxy should not be consulted; the contents is a comma-, + * or space-separated list of domain names. A single asterisk will + * override all proxy variables and no transactions will be proxied + * (for compatability with lynx and curl, see the discussion at + * ). + */ +int +fetch_no_proxy_match(const char *host) +{ + const char *no_proxy, *p, *q; + size_t h_len, d_len; + + if ((no_proxy = getenv("NO_PROXY")) == NULL && + (no_proxy = getenv("no_proxy")) == NULL) + return (0); + + /* asterisk matches any hostname */ + if (strcmp(no_proxy, "*") == 0) + return (1); + + h_len = strlen(host); + p = no_proxy; + do { + /* position p at the beginning of a domain suffix */ + while (*p == ',' || isspace((unsigned char)*p)) + p++; + + /* position q at the first separator character */ + for (q = p; *q; ++q) + if (*q == ',' || isspace((unsigned char)*q)) + break; + + d_len = q - p; + if (d_len > 0 && h_len > d_len && + strncasecmp(host + h_len - d_len, + p, d_len) == 0) { + /* domain name matches */ + return (1); + } + + p = q + 1; + } while (*q); + + return (0); +} ==== //depot/projects/e500/lib/libfetch/common.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE 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/libfetch/common.h,v 1.29 2007/12/14 10:26:58 des Exp $ + * $FreeBSD: src/lib/libfetch/common.h,v 1.30 2007/12/18 11:03:07 des Exp $ */ #ifndef _COMMON_H_INCLUDED @@ -90,6 +90,7 @@ int fetch_add_entry(struct url_ent **, int *, int *, const char *, struct url_stat *); int fetch_netrc_auth(struct url *url); +int fetch_no_proxy_match(const char *); #define ftp_seterr(n) fetch_seterr(ftp_errlist, n) #define http_seterr(n) fetch_seterr(http_errlist, n) ==== //depot/projects/e500/lib/libfetch/fetch.3#3 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.63 2007/05/24 20:28:14 des Exp $ +.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.64 2007/12/18 11:03:26 des Exp $ .\" -.Dd April 22, 2007 +.Dd December 18, 2007 .Dt FETCH 3 .Os .Sh NAME @@ -532,6 +532,14 @@ .Xr ftp 1 for a description of the file format. This feature is experimental. +.It Ev NO_PROXY +Either a single asterisk, which disables the use of proxies +altogether, or a comma- or whitespace-separated list of hosts for +which proxies should not be used. +.It Ev no_proxy +Same as +.Ev NO_PROXY , +for compatibility. .El .Sh EXAMPLES To access a proxy server on @@ -555,6 +563,14 @@ HTTP_PROXY=http://proxy.example.com:8080 HTTP_PROXY_AUTH=basic:*:: .Ed +.Pp +To disable the use of a proxy for an HTTP server running on the local +host, define +.Ev NO_PROXY +as follows: +.Bd -literal -offset indent +NO_PROXY=localhost,127.0.0.1 +.Ed .Sh SEE ALSO .Xr fetch 1 , .Xr ftpio 3 , ==== //depot/projects/e500/lib/libfetch/fetch.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.39 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.41 2007/12/19 00:26:36 des Exp $"); #include #include @@ -369,7 +369,7 @@ /* port */ if (*p == ':') { for (q = ++p; *q && (*q != '/'); q++) - if (isdigit(*q)) + if (isdigit((unsigned char)*q)) u->port = u->port * 10 + (*q - '0'); else { /* invalid port */ @@ -395,7 +395,7 @@ } u->doc = doc; while (*p != '\0') { - if (!isspace(*p)) { + if (!isspace((unsigned char)*p)) { *doc++ = *p++; } else { *doc++ = '%'; ==== //depot/projects/e500/lib/libfetch/ftp.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.97 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.100 2007/12/19 00:26:36 des Exp $"); /* * Portions of this code were taken from or based on ftpio.c: @@ -102,11 +102,16 @@ static struct url cached_host; static conn_t *cached_connection; -#define isftpreply(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) \ - && (foo[3] == ' ' || foo[3] == '\0')) -#define isftpinfo(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) && foo[3] == '-') +#define isftpreply(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + (foo[3] == ' ' || foo[3] == '\0')) +#define isftpinfo(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + foo[3] == '-') /* * Translate IPv4 mapped IPv6 address to IPv4 address @@ -150,7 +155,8 @@ } } - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && + isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; @@ -414,11 +420,11 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; - for (us->size = 0; *ln && isdigit(*ln); ln++) + for (us->size = 0; *ln && isdigit((unsigned char)*ln); ln++) us->size = us->size * 10 + *ln - '0'; - if (*ln && !isspace(*ln)) { + if (*ln && !isspace((unsigned char)*ln)) { ftp_seterr(FTP_PROTOCOL_ERROR); us->size = -1; return (-1); @@ -432,7 +438,7 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; switch (strspn(ln, "0123456789")) { case 14: @@ -691,7 +697,7 @@ switch (e) { case FTP_PASSIVE_MODE: case FTP_LPASSIVE_MODE: - for (p = ln + 3; *p && !isdigit(*p); p++) + for (p = ln + 3; *p && !isdigit((unsigned char)*p); p++) /* nothing */ ; if (!*p) { e = FTP_PROTOCOL_ERROR; @@ -1057,13 +1063,15 @@ * Check the proxy settings */ static struct url * -ftp_get_proxy(const char *flags) +ftp_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("FTP_PROXY")) || (p = getenv("ftp_proxy")) || (p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p)) != NULL) { @@ -1140,7 +1148,7 @@ FILE * fetchXGetFTP(struct url *url, struct url_stat *us, const char *flags) { - return (ftp_request(url, "RETR", us, ftp_get_proxy(flags), flags)); + return (ftp_request(url, "RETR", us, ftp_get_proxy(url, flags), flags)); } /* @@ -1158,9 +1166,8 @@ FILE * fetchPutFTP(struct url *url, const char *flags) { - return (ftp_request(url, CHECK_FLAG('a') ? "APPE" : "STOR", NULL, - ftp_get_proxy(flags), flags)); + ftp_get_proxy(url, flags), flags)); } /* @@ -1171,9 +1178,10 @@ { FILE *f; - f = ftp_request(url, "STAT", us, ftp_get_proxy(flags), flags); + f = ftp_request(url, "STAT", us, ftp_get_proxy(url, flags), flags); if (f == NULL) return (-1); + fclose(f); return (0); } ==== //depot/projects/e500/lib/libfetch/http.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.79 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.82 2007/12/19 00:26:36 des Exp $"); /* * The following copyright applies to the base64 code: @@ -137,15 +137,15 @@ if (fetch_getln(io->conn) == -1) return (-1); - if (io->conn->buflen < 2 || !ishexnumber(*io->conn->buf)) + if (io->conn->buflen < 2 || !isxdigit((unsigned char)*io->conn->buf)) return (-1); - for (p = io->conn->buf; *p && !isspace(*p); ++p) { + for (p = io->conn->buf; *p && !isspace((unsigned char)*p); ++p) { if (*p == ';') break; - if (!ishexnumber(*p)) + if (!isxdigit((unsigned char)*p)) return (-1); - if (isdigit(*p)) { + if (isdigit((unsigned char)*p)) { io->chunksize = io->chunksize * 16 + *p - '0'; } else { @@ -417,7 +417,10 @@ return (HTTP_PROTOCOL_ERROR); p += 4; } - if (*p != ' ' || !isdigit(p[1]) || !isdigit(p[2]) || !isdigit(p[3])) + if (*p != ' ' || + !isdigit((unsigned char)p[1]) || + !isdigit((unsigned char)p[2]) || + !isdigit((unsigned char)p[3])) return (HTTP_PROTOCOL_ERROR); conn->err = (p[1] - '0') * 100 + (p[2] - '0') * 10 + (p[3] - '0'); @@ -435,7 +438,7 @@ /* nothing */; if (*str || *hdr != ':') return (NULL); - while (*hdr && isspace(*++hdr)) + while (*hdr && isspace((unsigned char)*++hdr)) /* nothing */; return (hdr); } @@ -450,7 +453,7 @@ if (fetch_getln(conn) == -1) return (hdr_syserror); - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; if (conn->buflen == 0) @@ -499,7 +502,7 @@ { off_t len; - for (len = 0; *p && isdigit(*p); ++p) + for (len = 0; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + (*p - '0'); if (*p) return (-1); @@ -524,16 +527,16 @@ first = last = -1; ++p; } else { - for (first = 0; *p && isdigit(*p); ++p) + for (first = 0; *p && isdigit((unsigned char)*p); ++p) first = first * 10 + *p - '0'; if (*p != '-') return (-1); - for (last = 0, ++p; *p && isdigit(*p); ++p) + for (last = 0, ++p; *p && isdigit((unsigned char)*p); ++p) last = last * 10 + *p - '0'; } if (first > last || *p != '/') return (-1); - for (len = 0, ++p; *p && isdigit(*p); ++p) + for (len = 0, ++p; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + *p - '0'; if (*p || len < last - first + 1) return (-1); @@ -718,13 +721,15 @@ } static struct url * -http_get_proxy(const char *flags) +http_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p))) { if (!*purl->scheme) @@ -747,7 +752,7 @@ comment = tag = 0; while ((line = fgetln(in, &len)) != NULL) { - while (len && isspace(line[len - 1])) + while (len && isspace((unsigned char)line[len - 1])) --len; for (p = q = line; q < line + len; ++q) { if (comment && *q == '-') { @@ -1167,7 +1172,7 @@ FILE * fetchXGetHTTP(struct url *URL, struct url_stat *us, const char *flags) { - return (http_request(URL, "GET", us, http_get_proxy(flags), flags)); + return (http_request(URL, "GET", us, http_get_proxy(URL, flags), flags)); } /* @@ -1197,7 +1202,7 @@ { FILE *f; - f = http_request(URL, "HEAD", us, http_get_proxy(flags), flags); + f = http_request(URL, "HEAD", us, http_get_proxy(URL, flags), flags); if (f == NULL) return (-1); fclose(f); ==== //depot/projects/e500/lib/libstand/bzipfs.c#2 (text+ko) ==== @@ -26,9 +26,25 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.7 2005/05/17 16:22:54 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.8 2007/12/18 01:50:49 sobomax Exp $"); +#ifndef REGRESSION #include "stand.h" +#else +#include +#include +#include +#include + +struct open_file { + int f_flags; /* see F_* below */ + void *f_fsdata; /* file system specific data */ +}; +#define F_READ 0x0001 /* file opened for reading */ +#define EOFFSET (ELAST+8) /* relative seek not supported */ +static inline u_int min(u_int a, u_int b) { return (a < b ? a : b); } +#define panic(x, y) abort() +#endif #include #include @@ -41,6 +57,7 @@ int bzf_rawfd; bz_stream bzf_bzstream; char bzf_buf[BZ_BUFSIZE]; + int bzf_endseen; }; static int bzf_fill(struct bz_file *z); @@ -50,6 +67,7 @@ static off_t bzf_seek(struct open_file *f, off_t offset, int where); static int bzf_stat(struct open_file *f, struct stat *sb); +#ifndef REGRESSION struct fs_ops bzipfs_fsops = { "bzip", bzf_open, @@ -60,6 +78,7 @@ bzf_stat, null_readdir }; +#endif #if 0 void * @@ -220,7 +239,7 @@ bzf->bzf_bzstream.next_out = buf; /* where and how much */ bzf->bzf_bzstream.avail_out = size; - while (bzf->bzf_bzstream.avail_out) { + while (bzf->bzf_bzstream.avail_out && bzf->bzf_endseen == 0) { if ((bzf->bzf_bzstream.avail_in == 0) && (bzf_fill(bzf) == -1)) { printf("bzf_read: fill error\n"); return(EIO); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 18:53:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA40D16A41B; Wed, 19 Dec 2007 18:53:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7E25C16A420 for ; Wed, 19 Dec 2007 18:53:24 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 75B0C13C448 for ; Wed, 19 Dec 2007 18:53:24 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJIrOqG002077 for ; Wed, 19 Dec 2007 18:53:24 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJIrN6u002065 for perforce@freebsd.org; Wed, 19 Dec 2007 18:53:23 GMT (envelope-from marcel@freebsd.org) Date: Wed, 19 Dec 2007 18:53:23 GMT Message-Id: <200712191853.lBJIrN6u002065@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131245 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 18:53:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131245 Change 131245 by marcel@marcel_cluster on 2007/12/19 18:53:16 IFC @131243 Affected files ... .. //depot/projects/powerpc/lib/libc/amd64/Symbol.map#5 integrate .. //depot/projects/powerpc/lib/libc/i386/Symbol.map#6 integrate .. //depot/projects/powerpc/lib/libc/ia64/Symbol.map#6 integrate .. //depot/projects/powerpc/lib/libc/sparc64/Symbol.map#5 integrate .. //depot/projects/powerpc/lib/libc/stdio/Symbol.map#3 integrate .. //depot/projects/powerpc/lib/libc/stdio/vfwprintf.c#3 integrate .. //depot/projects/powerpc/lib/libc/stdlib/malloc.c#8 integrate .. //depot/projects/powerpc/lib/libc/stdtime/localtime.c#3 integrate .. //depot/projects/powerpc/lib/libc/sys/select.2#3 integrate .. //depot/projects/powerpc/lib/libfetch/Makefile#4 integrate .. //depot/projects/powerpc/lib/libfetch/common.c#3 integrate .. //depot/projects/powerpc/lib/libfetch/common.h#3 integrate .. //depot/projects/powerpc/lib/libfetch/fetch.3#4 integrate .. //depot/projects/powerpc/lib/libfetch/fetch.c#3 integrate .. //depot/projects/powerpc/lib/libfetch/ftp.c#4 integrate .. //depot/projects/powerpc/lib/libfetch/http.c#4 integrate .. //depot/projects/powerpc/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/powerpc/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/powerpc/lib/msun/Symbol.map#6 integrate .. //depot/projects/powerpc/lib/msun/ld128/s_nanl.c#2 integrate .. //depot/projects/powerpc/lib/msun/ld80/s_nanl.c#2 integrate .. //depot/projects/powerpc/lib/msun/src/math_private.h#2 integrate .. //depot/projects/powerpc/lib/msun/src/s_nan.c#2 integrate .. //depot/projects/powerpc/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/powerpc/share/man/man4/syncache.4#2 integrate .. //depot/projects/powerpc/share/man/man9/BUS_SETUP_INTR.9#3 integrate .. //depot/projects/powerpc/share/misc/Makefile#4 integrate .. //depot/projects/powerpc/share/misc/bsd-family-tree#8 integrate .. //depot/projects/powerpc/sys/arm/at91/at91.c#4 integrate .. //depot/projects/powerpc/sys/boot/forth/support.4th#4 integrate .. //depot/projects/powerpc/sys/conf/files.powerpc#13 integrate .. //depot/projects/powerpc/sys/dev/aac/aac.c#9 integrate .. //depot/projects/powerpc/sys/dev/cxgb/cxgb_main.c#10 integrate .. //depot/projects/powerpc/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/powerpc/sys/dev/mfi/mfi.c#9 integrate .. //depot/projects/powerpc/sys/dev/mfi/mfi_pci.c#7 integrate .. //depot/projects/powerpc/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/powerpc/sys/dev/uart/uart_cpu_powerpc.c#3 integrate .. //depot/projects/powerpc/sys/kern/kern_sig.c#12 integrate .. //depot/projects/powerpc/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/powerpc/sys/net/if_bridge.c#8 integrate .. //depot/projects/powerpc/sys/net/if_lagg.c#8 integrate .. //depot/projects/powerpc/sys/netinet/sctp_bsd_addr.c#8 integrate .. //depot/projects/powerpc/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/powerpc/sys/netinet/tcp_offload.h#2 integrate .. //depot/projects/powerpc/sys/netinet/tcp_subr.c#15 integrate .. //depot/projects/powerpc/sys/netinet/tcp_syncache.c#16 integrate .. //depot/projects/powerpc/sys/netinet/tcp_usrreq.c#13 integrate .. //depot/projects/powerpc/sys/powerpc/aim/ofw_machdep.c#3 integrate .. //depot/projects/powerpc/sys/powerpc/conf/NOTES#7 integrate .. //depot/projects/powerpc/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/powerpc/sys/powerpc/include/bus.h#6 integrate .. //depot/projects/powerpc/sys/powerpc/powermac/grackle.c#3 integrate .. //depot/projects/powerpc/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/powerpc/sys/powerpc/powermac/uninorth.c#4 integrate .. //depot/projects/powerpc/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/powerpc/sys/powerpc/psim/iobus.c#2 integrate .. //depot/projects/powerpc/sys/vm/vm_page.c#14 integrate .. //depot/projects/powerpc/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/powerpc/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/powerpc/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/powerpc/usr.bin/ministat/Makefile#1 branch .. //depot/projects/powerpc/usr.bin/ministat/README#1 branch .. //depot/projects/powerpc/usr.bin/ministat/chameleon#1 branch .. //depot/projects/powerpc/usr.bin/ministat/iguana#1 branch .. //depot/projects/powerpc/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/powerpc/usr.bin/netstat/inet.c#7 integrate .. //depot/projects/powerpc/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/powerpc/usr.sbin/sysinstall/dist.c#6 integrate .. //depot/projects/powerpc/usr.sbin/sysinstall/dist.h#4 integrate Differences ... ==== //depot/projects/powerpc/lib/libc/amd64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -71,7 +71,4 @@ _end; __sys_vfork; _vfork; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/i386/Symbol.map#6 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -68,7 +68,4 @@ _brk; .curbrk; .minbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/ia64/Symbol.map#6 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -69,7 +69,4 @@ minbrk; .cerror; curbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/powerpc/lib/libc/sparc64/Symbol.map#5 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -96,7 +96,4 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; - - /* used in libm */ - __ULtoQ_D2A; }; ==== //depot/projects/powerpc/lib/libc/stdio/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.5 2007/04/29 14:05:19 deischen Exp $ + * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.6 2007/12/18 23:49:05 das Exp $ */ FBSD_1.0 { @@ -108,6 +108,19 @@ __swbuf; wprintf; wscanf; +}; + +FBSDprivate_1.0 { + _flockfile; + _flockfile_debug_stub; + _flockfile_debug; + _ftrylockfile; + _funlockfile; + __vfscanf; + + /* + * xprintf support + */ __use_xprintf; __lowercase_hex; __uppercase_hex; @@ -136,12 +149,3 @@ __printf_arginfo_vis; __printf_render_vis; }; - -FBSDprivate_1.0 { - _flockfile; - _flockfile_debug_stub; - _flockfile_debug; - _ftrylockfile; - _funlockfile; - __vfscanf; -}; ==== //depot/projects/powerpc/lib/libc/stdio/vfwprintf.c#3 (text+ko) ==== @@ -36,7 +36,7 @@ #endif /* LIBC_SCCS and not lint */ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.27 2007/01/09 00:28:08 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.28 2007/12/18 01:20:33 das Exp $"); /* * Actual wprintf innards. @@ -902,6 +902,7 @@ } else cp = (ch >= 'a') ? L"inf" : L"INF"; size = 3; + flags &= ~ZEROPAD; break; } flags |= FPT; ==== //depot/projects/powerpc/lib/libc/stdlib/malloc.c#8 (text+ko) ==== @@ -101,7 +101,14 @@ /* #define MALLOC_PRODUCTION */ #ifndef MALLOC_PRODUCTION + /* + * MALLOC_DEBUG enables assertions and other sanity checks, and disables + * inline functions. + */ # define MALLOC_DEBUG + + /* MALLOC_STATS enables statistics calculation. */ +# define MALLOC_STATS #endif /* @@ -119,7 +126,7 @@ #define MALLOC_BALANCE #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.153 2007/12/17 01:20:04 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.154 2007/12/18 05:27:57 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -156,11 +163,6 @@ #include "un-namespace.h" -/* MALLOC_STATS enables statistics calculation. */ -#ifndef MALLOC_PRODUCTION -# define MALLOC_STATS -#endif - #ifdef MALLOC_DEBUG # ifdef NDEBUG # undef NDEBUG @@ -267,35 +269,40 @@ #define SMALL_MAX_DEFAULT (1U << SMALL_MAX_2POW_DEFAULT) /* - * Maximum desired run header overhead. Runs are sized as small as possible - * such that this setting is still honored, without violating other constraints. - * The goal is to make runs as small as possible without exceeding a per run - * external fragmentation threshold. + * RUN_MAX_OVRHD indicates maximum desired run header overhead. Runs are sized + * as small as possible such that this setting is still honored, without + * violating other constraints. The goal is to make runs as small as possible + * without exceeding a per run external fragmentation threshold. + * + * We use binary fixed point math for overhead computations, where the binary + * point is implicitly RUN_BFP bits to the left. * - * Note that it is possible to set this low enough that it cannot be honored - * for some/all object sizes, since there is one bit of header overhead per - * object (plus a constant). In such cases, this constraint is relaxed. + * Note that it is possible to set RUN_MAX_OVRHD low enough that it cannot be + * honored for some/all object sizes, since there is one bit of header overhead + * per object (plus a constant). This constraint is relaxed (ignored) for runs + * that are so small that the per-region overhead is greater than: * - * RUN_MAX_OVRHD_RELAX specifies the maximum number of bits per region of - * overhead for which RUN_MAX_OVRHD is relaxed. + * (RUN_MAX_OVRHD / (reg_size << (3+RUN_BFP)) */ -#define RUN_MAX_OVRHD 0.015 -#define RUN_MAX_OVRHD_RELAX 1.5 +#define RUN_BFP 12 +/* \/ Implicit binary fixed point. */ +#define RUN_MAX_OVRHD 0x0000003dU +#define RUN_MAX_OVRHD_RELAX 0x00001800U /* Put a cap on small object run size. This overrides RUN_MAX_OVRHD. */ #define RUN_MAX_SMALL_2POW 15 #define RUN_MAX_SMALL (1U << RUN_MAX_SMALL_2POW) #ifdef MALLOC_LAZY_FREE -/* Default size of each arena's lazy free cache. */ -# define LAZY_FREE_2POW_DEFAULT 8 -/* - * Number of pseudo-random probes to conduct before considering the cache to be - * overly full. It takes on average n probes to detect fullness of (n-1)/n. - * However, we are effectively doing multiple non-independent trials (each - * deallocation is a trial), so the actual average threshold for clearing the - * cache is somewhat lower. - */ + /* Default size of each arena's lazy free cache. */ +# define LAZY_FREE_2POW_DEFAULT 8 + /* + * Number of pseudo-random probes to conduct before considering the cache to + * be overly full. It takes on average n probes to detect fullness of + * (n-1)/n. However, we are effectively doing multiple non-independent + * trials (each deallocation is a trial), so the actual average threshold + * for clearing the cache is somewhat lower. + */ # define LAZY_FREE_NPROBES 5 #endif @@ -323,20 +330,20 @@ #define BLOCK_COST_2POW 4 #ifdef MALLOC_BALANCE -/* - * We use an exponential moving average to track recent lock contention, where - * the size of the history window is N, and alpha=2/(N+1). - * - * Due to integer math rounding, very small values here can cause substantial - * degradation in accuracy, thus making the moving average decay faster than it - * would with precise calculation. - */ + /* + * We use an exponential moving average to track recent lock contention, + * where the size of the history window is N, and alpha=2/(N+1). + * + * Due to integer math rounding, very small values here can cause + * substantial degradation in accuracy, thus making the moving average decay + * faster than it would with precise calculation. + */ # define BALANCE_ALPHA_INV_2POW 9 -/* - * Threshold value for the exponential moving contention average at which to - * re-assign a thread. - */ + /* + * Threshold value for the exponential moving contention average at which to + * re-assign a thread. + */ # define BALANCE_THRESHOLD_DEFAULT (1U << (SPIN_LIMIT_2POW-4)) #endif @@ -2468,7 +2475,6 @@ size_t try_run_size, good_run_size; unsigned good_nregs, good_mask_nelms, good_reg0_offset; unsigned try_nregs, try_mask_nelms, try_reg0_offset; - float max_ovrhd = RUN_MAX_OVRHD; assert(min_run_size >= pagesize); assert(min_run_size <= arena_maxclass); @@ -2486,7 +2492,7 @@ */ try_run_size = min_run_size; try_nregs = ((try_run_size - sizeof(arena_run_t)) / bin->reg_size) - + 1; /* Counter-act the first line of the loop. */ + + 1; /* Counter-act try_nregs-- in loop. */ do { try_nregs--; try_mask_nelms = (try_nregs >> (SIZEOF_INT_2POW + 3)) + @@ -2519,9 +2525,8 @@ } while (sizeof(arena_run_t) + (sizeof(unsigned) * (try_mask_nelms - 1)) > try_reg0_offset); } while (try_run_size <= arena_maxclass && try_run_size <= RUN_MAX_SMALL - && max_ovrhd > RUN_MAX_OVRHD_RELAX / ((float)(bin->reg_size << 3)) - && ((float)(try_reg0_offset)) / ((float)(try_run_size)) > - max_ovrhd); + && RUN_MAX_OVRHD * (bin->reg_size << 3) > RUN_MAX_OVRHD_RELAX + && (try_reg0_offset << RUN_BFP) > RUN_MAX_OVRHD * try_run_size); assert(sizeof(arena_run_t) + (sizeof(unsigned) * (good_mask_nelms - 1)) <= good_reg0_offset); ==== //depot/projects/powerpc/lib/libc/stdtime/localtime.c#3 (text+ko) ==== @@ -9,7 +9,7 @@ static char elsieid[] __unused = "@(#)localtime.c 7.78"; #endif /* !defined NOID */ #endif /* !defined lint */ -__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.41 2007/01/19 01:16:35 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.42 2007/12/19 04:30:10 imp Exp $"); /* ** Leap second handling from Bradley White (bww@k.gp.cs.cmu.edu). @@ -1093,14 +1093,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&localtime_mutex); if (localtime_key < 0) { - if (_pthread_key_create(&localtime_key, free) < 0) { - _pthread_mutex_unlock(&localtime_mutex); - return(NULL); + _pthread_mutex_lock(&localtime_mutex); + if (localtime_key < 0) { + if (_pthread_key_create(&localtime_key, free) < 0) { + _pthread_mutex_unlock(&localtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&localtime_mutex); } - _pthread_mutex_unlock(&localtime_mutex); p_tm = _pthread_getspecific(localtime_key); if (p_tm == NULL) { if ((p_tm = (struct tm *)malloc(sizeof(struct tm))) @@ -1146,16 +1148,18 @@ const long offset; struct tm * const tmp; { - _MUTEX_LOCK(&gmt_mutex); if (!gmt_is_set) { - gmt_is_set = TRUE; + _MUTEX_LOCK(&gmt_mutex); + if (!gmt_is_set) { #ifdef ALL_STATE - gmtptr = (struct state *) malloc(sizeof *gmtptr); - if (gmtptr != NULL) + gmtptr = (struct state *) malloc(sizeof *gmtptr); + if (gmtptr != NULL) #endif /* defined ALL_STATE */ - gmtload(gmtptr); + gmtload(gmtptr); + gmt_is_set = TRUE; + } + _MUTEX_UNLOCK(&gmt_mutex); } - _MUTEX_UNLOCK(&gmt_mutex); timesub(timep, offset, gmtptr, tmp); #ifdef TM_ZONE /* @@ -1187,14 +1191,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&gmtime_mutex); if (gmtime_key < 0) { - if (_pthread_key_create(&gmtime_key, free) < 0) { - _pthread_mutex_unlock(&gmtime_mutex); - return(NULL); + _pthread_mutex_lock(&gmtime_mutex); + if (gmtime_key < 0) { + if (_pthread_key_create(&gmtime_key, free) < 0) { + _pthread_mutex_unlock(&gmtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&gmtime_mutex); } - _pthread_mutex_unlock(&gmtime_mutex); /* * Changed to follow POSIX.1 threads standard, which * is what BSD currently has. ==== //depot/projects/powerpc/lib/libc/sys/select.2#3 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 -.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.33 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.34 2007/12/19 03:33:13 imp Exp $ .\" .Dd November 17, 2002 .Dt SELECT 2 @@ -222,3 +222,6 @@ by the .Fn select system call. +.Fx +does not modify the return value, which can cause problems for applications +ported from other systems. ==== //depot/projects/powerpc/lib/libfetch/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.51 2007/12/19 05:10:07 ru Exp $ .include @@ -27,9 +27,9 @@ SHLIB_MAJOR= 5 -ftperr.h: ftp.errors +ftperr.h: ftp.errors ${.CURDIR}/Makefile @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/ftp.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ @@ -38,9 +38,9 @@ @echo " { -1, FETCH_UNKNOWN, \"Unknown FTP error\" }" >> ${.TARGET} @echo "};" >> ${.TARGET} -httperr.h: http.errors +httperr.h: http.errors ${.CURDIR}/Makefile @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/http.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ ==== //depot/projects/powerpc/lib/libfetch/common.c#3 (text+ko) ==== @@ -27,14 +27,16 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.51 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.53 2007/12/19 00:26:36 des Exp $"); #include #include #include #include + #include +#include #include #include #include @@ -734,3 +736,51 @@ fclose(f); return (-1); } + +/* + * The no_proxy environment variable specifies a set of domains for + * which the proxy should not be consulted; the contents is a comma-, + * or space-separated list of domain names. A single asterisk will + * override all proxy variables and no transactions will be proxied + * (for compatability with lynx and curl, see the discussion at + * ). + */ +int +fetch_no_proxy_match(const char *host) +{ + const char *no_proxy, *p, *q; + size_t h_len, d_len; + + if ((no_proxy = getenv("NO_PROXY")) == NULL && + (no_proxy = getenv("no_proxy")) == NULL) + return (0); + + /* asterisk matches any hostname */ + if (strcmp(no_proxy, "*") == 0) + return (1); + + h_len = strlen(host); + p = no_proxy; + do { + /* position p at the beginning of a domain suffix */ + while (*p == ',' || isspace((unsigned char)*p)) + p++; + + /* position q at the first separator character */ + for (q = p; *q; ++q) + if (*q == ',' || isspace((unsigned char)*q)) + break; + + d_len = q - p; + if (d_len > 0 && h_len > d_len && + strncasecmp(host + h_len - d_len, + p, d_len) == 0) { + /* domain name matches */ + return (1); + } + + p = q + 1; + } while (*q); + + return (0); +} ==== //depot/projects/powerpc/lib/libfetch/common.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE 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/libfetch/common.h,v 1.29 2007/12/14 10:26:58 des Exp $ + * $FreeBSD: src/lib/libfetch/common.h,v 1.30 2007/12/18 11:03:07 des Exp $ */ #ifndef _COMMON_H_INCLUDED @@ -90,6 +90,7 @@ int fetch_add_entry(struct url_ent **, int *, int *, const char *, struct url_stat *); int fetch_netrc_auth(struct url *url); +int fetch_no_proxy_match(const char *); #define ftp_seterr(n) fetch_seterr(ftp_errlist, n) #define http_seterr(n) fetch_seterr(http_errlist, n) ==== //depot/projects/powerpc/lib/libfetch/fetch.3#4 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.63 2007/05/24 20:28:14 des Exp $ +.\" $FreeBSD: src/lib/libfetch/fetch.3,v 1.64 2007/12/18 11:03:26 des Exp $ .\" -.Dd April 22, 2007 +.Dd December 18, 2007 .Dt FETCH 3 .Os .Sh NAME @@ -532,6 +532,14 @@ .Xr ftp 1 for a description of the file format. This feature is experimental. +.It Ev NO_PROXY +Either a single asterisk, which disables the use of proxies +altogether, or a comma- or whitespace-separated list of hosts for +which proxies should not be used. +.It Ev no_proxy +Same as +.Ev NO_PROXY , +for compatibility. .El .Sh EXAMPLES To access a proxy server on @@ -555,6 +563,14 @@ HTTP_PROXY=http://proxy.example.com:8080 HTTP_PROXY_AUTH=basic:*:: .Ed +.Pp +To disable the use of a proxy for an HTTP server running on the local +host, define +.Ev NO_PROXY +as follows: +.Bd -literal -offset indent +NO_PROXY=localhost,127.0.0.1 +.Ed .Sh SEE ALSO .Xr fetch 1 , .Xr ftpio 3 , ==== //depot/projects/powerpc/lib/libfetch/fetch.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.39 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.41 2007/12/19 00:26:36 des Exp $"); #include #include @@ -369,7 +369,7 @@ /* port */ if (*p == ':') { for (q = ++p; *q && (*q != '/'); q++) - if (isdigit(*q)) + if (isdigit((unsigned char)*q)) u->port = u->port * 10 + (*q - '0'); else { /* invalid port */ @@ -395,7 +395,7 @@ } u->doc = doc; while (*p != '\0') { - if (!isspace(*p)) { + if (!isspace((unsigned char)*p)) { *doc++ = *p++; } else { *doc++ = '%'; ==== //depot/projects/powerpc/lib/libfetch/ftp.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.97 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.100 2007/12/19 00:26:36 des Exp $"); /* * Portions of this code were taken from or based on ftpio.c: @@ -102,11 +102,16 @@ static struct url cached_host; static conn_t *cached_connection; -#define isftpreply(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) \ - && (foo[3] == ' ' || foo[3] == '\0')) -#define isftpinfo(foo) (isdigit(foo[0]) && isdigit(foo[1]) \ - && isdigit(foo[2]) && foo[3] == '-') +#define isftpreply(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + (foo[3] == ' ' || foo[3] == '\0')) +#define isftpinfo(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + foo[3] == '-') /* * Translate IPv4 mapped IPv6 address to IPv4 address @@ -150,7 +155,8 @@ } } - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && + isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; @@ -414,11 +420,11 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; - for (us->size = 0; *ln && isdigit(*ln); ln++) + for (us->size = 0; *ln && isdigit((unsigned char)*ln); ln++) us->size = us->size * 10 + *ln - '0'; - if (*ln && !isspace(*ln)) { + if (*ln && !isspace((unsigned char)*ln)) { ftp_seterr(FTP_PROTOCOL_ERROR); us->size = -1; return (-1); @@ -432,7 +438,7 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace(*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; switch (strspn(ln, "0123456789")) { case 14: @@ -691,7 +697,7 @@ switch (e) { case FTP_PASSIVE_MODE: case FTP_LPASSIVE_MODE: - for (p = ln + 3; *p && !isdigit(*p); p++) + for (p = ln + 3; *p && !isdigit((unsigned char)*p); p++) /* nothing */ ; if (!*p) { e = FTP_PROTOCOL_ERROR; @@ -1057,13 +1063,15 @@ * Check the proxy settings */ static struct url * -ftp_get_proxy(const char *flags) +ftp_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("FTP_PROXY")) || (p = getenv("ftp_proxy")) || (p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p)) != NULL) { @@ -1140,7 +1148,7 @@ FILE * fetchXGetFTP(struct url *url, struct url_stat *us, const char *flags) { - return (ftp_request(url, "RETR", us, ftp_get_proxy(flags), flags)); + return (ftp_request(url, "RETR", us, ftp_get_proxy(url, flags), flags)); } /* @@ -1158,9 +1166,8 @@ FILE * fetchPutFTP(struct url *url, const char *flags) { - return (ftp_request(url, CHECK_FLAG('a') ? "APPE" : "STOR", NULL, - ftp_get_proxy(flags), flags)); + ftp_get_proxy(url, flags), flags)); } /* @@ -1171,9 +1178,10 @@ { FILE *f; - f = ftp_request(url, "STAT", us, ftp_get_proxy(flags), flags); + f = ftp_request(url, "STAT", us, ftp_get_proxy(url, flags), flags); if (f == NULL) return (-1); + fclose(f); return (0); } ==== //depot/projects/powerpc/lib/libfetch/http.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.79 2007/12/14 10:26:58 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.82 2007/12/19 00:26:36 des Exp $"); /* * The following copyright applies to the base64 code: @@ -137,15 +137,15 @@ if (fetch_getln(io->conn) == -1) return (-1); - if (io->conn->buflen < 2 || !ishexnumber(*io->conn->buf)) + if (io->conn->buflen < 2 || !isxdigit((unsigned char)*io->conn->buf)) return (-1); - for (p = io->conn->buf; *p && !isspace(*p); ++p) { + for (p = io->conn->buf; *p && !isspace((unsigned char)*p); ++p) { if (*p == ';') break; - if (!ishexnumber(*p)) + if (!isxdigit((unsigned char)*p)) return (-1); - if (isdigit(*p)) { + if (isdigit((unsigned char)*p)) { io->chunksize = io->chunksize * 16 + *p - '0'; } else { @@ -417,7 +417,10 @@ return (HTTP_PROTOCOL_ERROR); p += 4; } - if (*p != ' ' || !isdigit(p[1]) || !isdigit(p[2]) || !isdigit(p[3])) + if (*p != ' ' || + !isdigit((unsigned char)p[1]) || + !isdigit((unsigned char)p[2]) || + !isdigit((unsigned char)p[3])) return (HTTP_PROTOCOL_ERROR); conn->err = (p[1] - '0') * 100 + (p[2] - '0') * 10 + (p[3] - '0'); @@ -435,7 +438,7 @@ /* nothing */; if (*str || *hdr != ':') return (NULL); - while (*hdr && isspace(*++hdr)) + while (*hdr && isspace((unsigned char)*++hdr)) /* nothing */; return (hdr); } @@ -450,7 +453,7 @@ if (fetch_getln(conn) == -1) return (hdr_syserror); - while (conn->buflen && isspace(conn->buf[conn->buflen - 1])) + while (conn->buflen && isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; if (conn->buflen == 0) @@ -499,7 +502,7 @@ { off_t len; - for (len = 0; *p && isdigit(*p); ++p) + for (len = 0; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + (*p - '0'); if (*p) return (-1); @@ -524,16 +527,16 @@ first = last = -1; ++p; } else { - for (first = 0; *p && isdigit(*p); ++p) + for (first = 0; *p && isdigit((unsigned char)*p); ++p) first = first * 10 + *p - '0'; if (*p != '-') return (-1); - for (last = 0, ++p; *p && isdigit(*p); ++p) + for (last = 0, ++p; *p && isdigit((unsigned char)*p); ++p) last = last * 10 + *p - '0'; } if (first > last || *p != '/') return (-1); - for (len = 0, ++p; *p && isdigit(*p); ++p) + for (len = 0, ++p; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + *p - '0'; if (*p || len < last - first + 1) return (-1); @@ -718,13 +721,15 @@ } static struct url * -http_get_proxy(const char *flags) +http_get_proxy(struct url * url, const char *flags) { struct url *purl; char *p; if (flags != NULL && strchr(flags, 'd') != NULL) return (NULL); + if (fetch_no_proxy_match(url->host)) + return (NULL); if (((p = getenv("HTTP_PROXY")) || (p = getenv("http_proxy"))) && *p && (purl = fetchParseURL(p))) { if (!*purl->scheme) @@ -747,7 +752,7 @@ comment = tag = 0; while ((line = fgetln(in, &len)) != NULL) { - while (len && isspace(line[len - 1])) + while (len && isspace((unsigned char)line[len - 1])) --len; for (p = q = line; q < line + len; ++q) { if (comment && *q == '-') { @@ -1167,7 +1172,7 @@ FILE * fetchXGetHTTP(struct url *URL, struct url_stat *us, const char *flags) { - return (http_request(URL, "GET", us, http_get_proxy(flags), flags)); + return (http_request(URL, "GET", us, http_get_proxy(URL, flags), flags)); } /* @@ -1197,7 +1202,7 @@ { FILE *f; - f = http_request(URL, "HEAD", us, http_get_proxy(flags), flags); + f = http_request(URL, "HEAD", us, http_get_proxy(URL, flags), flags); if (f == NULL) return (-1); fclose(f); ==== //depot/projects/powerpc/lib/libstand/bzipfs.c#2 (text+ko) ==== @@ -26,9 +26,25 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.7 2005/05/17 16:22:54 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libstand/bzipfs.c,v 1.8 2007/12/18 01:50:49 sobomax Exp $"); +#ifndef REGRESSION #include "stand.h" +#else +#include +#include +#include +#include + +struct open_file { + int f_flags; /* see F_* below */ + void *f_fsdata; /* file system specific data */ +}; +#define F_READ 0x0001 /* file opened for reading */ +#define EOFFSET (ELAST+8) /* relative seek not supported */ +static inline u_int min(u_int a, u_int b) { return (a < b ? a : b); } +#define panic(x, y) abort() +#endif #include #include @@ -41,6 +57,7 @@ int bzf_rawfd; bz_stream bzf_bzstream; char bzf_buf[BZ_BUFSIZE]; + int bzf_endseen; }; static int bzf_fill(struct bz_file *z); @@ -50,6 +67,7 @@ static off_t bzf_seek(struct open_file *f, off_t offset, int where); static int bzf_stat(struct open_file *f, struct stat *sb); +#ifndef REGRESSION struct fs_ops bzipfs_fsops = { "bzip", bzf_open, @@ -60,6 +78,7 @@ bzf_stat, null_readdir }; +#endif #if 0 void * @@ -220,7 +239,7 @@ bzf->bzf_bzstream.next_out = buf; /* where and how much */ bzf->bzf_bzstream.avail_out = size; - while (bzf->bzf_bzstream.avail_out) { + while (bzf->bzf_bzstream.avail_out && bzf->bzf_endseen == 0) { if ((bzf->bzf_bzstream.avail_in == 0) && (bzf_fill(bzf) == -1)) { printf("bzf_read: fill error\n"); return(EIO); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 18:56:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9FB8F16A46E; Wed, 19 Dec 2007 18:56:29 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 30F0016A420 for ; Wed, 19 Dec 2007 18:56:29 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2906913C44B for ; Wed, 19 Dec 2007 18:56:29 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJIuSf8002191 for ; Wed, 19 Dec 2007 18:56:29 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJIuSrE002188 for perforce@freebsd.org; Wed, 19 Dec 2007 18:56:28 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 18:56:28 GMT Message-Id: <200712191856.lBJIuSrE002188@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131246 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 18:56:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=131246 Change 131246 by hselasky@hselasky_laptop001 on 2007/12/19 18:56:23 HW DMA optimization - new technique (OHCI, UHCI and EHCI) This commit gets rid of the doorbell and any other delays in the critical execution path by introducing an extra set of TDs and QHs for every USB transfer. The idea is that the USB Host Controller does not immediately know that we have removed a QH or TD from the schedule. Even if the Host Controller will not touch any data in the buffers we cannot simply start reusing the QH and TD DMA structures. Instead we use a second QH and TD set. When the second transfer is done we know that the first QH and TD set which we dequeued before we enqued the second transfer is now out the Host Controllers hands. Then we can right away start using the first set of QH and TD DMA structures and there is no need for doorbell or any other delay. If you stop, timeout or unsetup an USB transfer there will be a delay like usual. If the USB driver you are using requires a high number of interrupts per second you will see a noticable decrease in CPU usage and a minor increase in performance. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#63 edit .. //depot/projects/usb/src/sys/dev/usb/ehci.h#26 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#52 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#53 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#80 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#78 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#63 (text+ko) ==== @@ -1287,35 +1287,48 @@ DPRINTFN(12, ("xfer=%p checking transfer\n", xfer)); if (methods == &ehci_device_isoc_fs_methods) { - ehci_sitd_t *td = xfer->td_transfer_last; + ehci_sitd_t *td; /* isochronous full speed transfer */ + td = xfer->td_transfer_last; usbd_pc_cpu_invalidate(td->page_cache); + status = le32toh(td->sitd_status); - status = le32toh(td->sitd_status); + /* also check if first is complete */ + + td = xfer->td_transfer_first; + usbd_pc_cpu_invalidate(td->page_cache); + status |= le32toh(td->sitd_status); if (!(status & EHCI_SITD_ACTIVE)) { ehci_device_done(xfer, USBD_NORMAL_COMPLETION); goto transferred; } } else if (methods == &ehci_device_isoc_hs_methods) { - ehci_itd_t *td = xfer->td_transfer_last; + ehci_itd_t *td; /* isochronous high speed transfer */ + td = xfer->td_transfer_last; usbd_pc_cpu_invalidate(td->page_cache); + status = + td->itd_status[0] | td->itd_status[1] | + td->itd_status[2] | td->itd_status[3] | + td->itd_status[4] | td->itd_status[5] | + td->itd_status[6] | td->itd_status[7]; - status = ((!(td->itd_status[0] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[1] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[2] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[3] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[4] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[5] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[6] & htole32(EHCI_ITD_ACTIVE))) && - (!(td->itd_status[7] & htole32(EHCI_ITD_ACTIVE)))); + /* also check first transfer */ + td = xfer->td_transfer_first; + usbd_pc_cpu_invalidate(td->page_cache); + status |= + td->itd_status[0] | td->itd_status[1] | + td->itd_status[2] | td->itd_status[3] | + td->itd_status[4] | td->itd_status[5] | + td->itd_status[6] | td->itd_status[7]; - if (status) { + /* if no transactions are active we continue */ + if (!(status & htole32(EHCI_ITD_ACTIVE))) { ehci_device_done(xfer, USBD_NORMAL_COMPLETION); goto transferred; } @@ -1452,10 +1465,6 @@ status &= sc->sc_eintrs; - if (status & EHCI_STS_IAA) { - DPRINTF(("door bell\n")); - wakeup(&sc->sc_async_p_last); - } if (status & EHCI_STS_HSE) { printf("%s: unrecoverable error, " "controller halted\n", __FUNCTION__); @@ -1718,11 +1727,17 @@ temp.average = xfer->max_usb_frame_size; temp.max_frame_size = xfer->max_frame_size; - xfer->td_transfer_first = xfer->td_start; - xfer->td_transfer_cache = xfer->td_start; + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; + + xfer->td_transfer_first = td; + xfer->td_transfer_cache = td; temp.td = NULL; - temp.td_next = xfer->td_start; + temp.td_next = td; temp.qtd_status = 0; temp.setup_alt_next = xfer->flags_int.short_frames_ok; @@ -1848,13 +1863,13 @@ if (ehcidebug > 8) { DPRINTF(("nexttog=%d; data before transfer:\n", xfer->pipe->toggle_next)); - ehci_dump_sqtds(xfer->td_start); + ehci_dump_sqtds(xfer->td_transfer_first); } #endif methods = xfer->pipe->methods; - qh = xfer->qh_start; + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; /* the "qh_link" field is filled when the QH is added */ @@ -1962,14 +1977,13 @@ return; } -static uint8_t +static void ehci_isoc_fs_done(ehci_softc_t *sc, struct usbd_xfer *xfer) { uint32_t nframes = xfer->nframes; uint32_t status; uint32_t *plen = xfer->frlengths; uint16_t len = 0; - uint8_t need_delay = 0; ehci_sitd_t *td = xfer->td_transfer_first; ehci_sitd_t **pp_last = &sc->sc_isoc_fs_p_last[xfer->qh_pos]; @@ -1993,10 +2007,6 @@ usbd_pc_cpu_invalidate(td->page_cache); status = le32toh(td->sitd_status); - /* check for active transfers */ - if (status & EHCI_SITD_ACTIVE) { - need_delay = 1; - } len = EHCI_SITD_GET_LEN(status); if (*plen >= len) { @@ -2017,10 +2027,10 @@ xfer->aframes = xfer->nframes; - return (need_delay); + return; } -static uint8_t +static void ehci_isoc_hs_done(ehci_softc_t *sc, struct usbd_xfer *xfer) { uint32_t nframes = xfer->nframes; @@ -2028,7 +2038,6 @@ uint32_t *plen = xfer->frlengths; uint16_t len = 0; uint8_t td_no = 0; - uint8_t need_delay = 0; ehci_itd_t *td = xfer->td_transfer_first; ehci_itd_t **pp_last = &sc->sc_isoc_hs_p_last[xfer->qh_pos]; @@ -2053,9 +2062,6 @@ usbd_pc_cpu_invalidate(td->page_cache); status = le32toh(td->itd_status[td_no]); - if (status & EHCI_ITD_ACTIVE) { - need_delay = 1; - } len = EHCI_ITD_GET_LEN(status); if (*plen >= len) { @@ -2080,7 +2086,7 @@ } xfer->aframes = xfer->nframes; - return (need_delay); + return; } /* NOTE: "done" can be run two times in a row, @@ -2091,39 +2097,28 @@ { struct usbd_pipe_methods *methods = xfer->pipe->methods; ehci_softc_t *sc = xfer->usb_sc; - uint8_t need_delay; mtx_assert(&sc->sc_bus.mtx, MA_OWNED); - need_delay = 0; - DPRINTFN(1, ("xfer=%p, pipe=%p, error=%d\n", xfer, xfer->pipe, error)); - /* - * ... could check for not-completed transfers, instead of setting - * need_delay ... - */ - if ((error == USBD_CANCELLED) || - (error == USBD_TIMEOUT)) { - if (xfer->flags_int.transferring) { - need_delay = 1; - } - } if ((methods == &ehci_device_bulk_methods) || (methods == &ehci_device_ctrl_methods)) { #ifdef USB_DEBUG if (ehcidebug > 8) { DPRINTF(("nexttog=%d; data after transfer:\n", xfer->pipe->toggle_next)); - ehci_dump_sqtds(xfer->td_start); + ehci_dump_sqtds(xfer->td_transfer_first); } #endif - EHCI_REMOVE_QH(xfer->qh_start, sc->sc_async_p_last); + EHCI_REMOVE_QH(xfer->qh_start[xfer->flags_int.curr_dma_set], + sc->sc_async_p_last); } if (methods == &ehci_device_intr_methods) { - EHCI_REMOVE_QH(xfer->qh_start, sc->sc_intr_p_last[xfer->qh_pos]); + EHCI_REMOVE_QH(xfer->qh_start[xfer->flags_int.curr_dma_set], + sc->sc_intr_p_last[xfer->qh_pos]); } /* * Only finish isochronous transfers once which will update @@ -2132,76 +2127,14 @@ if (xfer->td_transfer_first && xfer->td_transfer_last) { if (methods == &ehci_device_isoc_fs_methods) { - if (ehci_isoc_fs_done(sc, xfer)) { - need_delay = 1; - } + ehci_isoc_fs_done(sc, xfer); } if (methods == &ehci_device_isoc_hs_methods) { - if (ehci_isoc_hs_done(sc, xfer)) { - need_delay = 1; - } + ehci_isoc_hs_done(sc, xfer); } xfer->td_transfer_first = NULL; xfer->td_transfer_last = NULL; } - if ((methods != &ehci_root_ctrl_methods) && - (methods != &ehci_root_intr_methods)) { - - if (((methods == &ehci_device_ctrl_methods) || - (methods == &ehci_device_bulk_methods)) && - (sc->sc_doorbell_disable == 0)) { - - uint32_t to = 100 * 1000; - - /* - * This implementation does not use the doorbell - * interrupt. The reason is that one gets more - * throughput by waiting for the doorbell inline, - * than by using the doorbell interrupt. A typical - * result reading from an USB mass storage disk: - * - * With doorbell interrupt: 27 seconds for 512MB - * With inline doorbell: 21 seconds for 512MB - * - * Although the inline version causes a slightly - * higher CPU usage, it does not block the system - * in any way, because this USB driver uses its - * own mutex. - * - * --hps - */ - - /* wait for doorbell ~32us */ - EOWRITE4(sc, EHCI_USBCMD, - EOREAD4(sc, EHCI_USBCMD) | EHCI_CMD_IAAD); - - while (EOREAD4(sc, EHCI_USBCMD) & EHCI_CMD_IAAD) { - if (!to--) { - printf("%s: doorbell timeout " - "(disabling)\n", __FUNCTION__); - sc->sc_doorbell_disable = 1; - break; - } - DELAY(1); - } - - /* - * acknowledge any doorbell interrupt (SiS chipsets - * require this) - */ - EOWRITE4(sc, EHCI_USBSTS, EHCI_STS_IAA); - - } else { - /* - * wait until the hardware has finished any possible - * use of the transfer descriptor and QH - * - * in case "need_delay" is set, wait until the next - * isochronous frame is started - */ - DELAY(need_delay ? ((3 * 1000) / (2 * 8)) : (5)); - } - } /* dequeue transfer and start next transfer */ usbd_transfer_dequeue(xfer, error); return; @@ -2421,6 +2354,7 @@ { ehci_sitd_t *td; uint32_t sitd_portaddr; + uint8_t ds; sitd_portaddr = EHCI_SITD_SET_ADDR(xfer->address) | @@ -2435,19 +2369,23 @@ /* initialize all TD's */ - for (td = xfer->td_start; td; td = td->obj_next) { + for (ds = 0; ds != 2; ds++) { + + for (td = xfer->td_start[ds]; td; td = td->obj_next) { - td->sitd_portaddr = sitd_portaddr; + td->sitd_portaddr = sitd_portaddr; - /* - * TODO: make some kind of automatic SMASK/CMASK selection - * based on micro-frame usage - * - * micro-frame usage (8 microframes per 1ms) - */ - td->sitd_back = htole32(EHCI_LINK_TERMINATE); + /* + * TODO: make some kind of automatic + * SMASK/CMASK selection based on micro-frame + * usage + * + * micro-frame usage (8 microframes per 1ms) + */ + td->sitd_back = htole32(EHCI_LINK_TERMINATE); - usbd_pc_cpu_flush(td->page_cache); + usbd_pc_cpu_flush(td->page_cache); + } } return; } @@ -2534,7 +2472,12 @@ plen = xfer->frlengths; - td = (xfer->td_transfer_first = xfer->td_start); + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; + xfer->td_transfer_first = td; pp_last = &sc->sc_isoc_fs_p_last[xfer->pipe->isoc_next]; @@ -2688,39 +2631,44 @@ { ehci_itd_t *td; uint32_t temp; + uint8_t ds; /* initialize all TD's */ - for (td = xfer->td_start; td; td = td->obj_next) { + for (ds = 0; ds != 2; ds++) { + + for (td = xfer->td_start[ds]; td; td = td->obj_next) { - /* set TD inactive */ - td->itd_status[0] = 0; - td->itd_status[1] = 0; - td->itd_status[2] = 0; - td->itd_status[3] = 0; - td->itd_status[4] = 0; - td->itd_status[5] = 0; - td->itd_status[6] = 0; - td->itd_status[7] = 0; + /* set TD inactive */ + td->itd_status[0] = 0; + td->itd_status[1] = 0; + td->itd_status[2] = 0; + td->itd_status[3] = 0; + td->itd_status[4] = 0; + td->itd_status[5] = 0; + td->itd_status[6] = 0; + td->itd_status[7] = 0; - /* set endpoint and address */ - td->itd_bp[0] = htole32 - (EHCI_ITD_SET_ADDR(xfer->address) | - EHCI_ITD_SET_ENDPT(UE_GET_ADDR(xfer->endpoint))); + /* set endpoint and address */ + td->itd_bp[0] = htole32 + (EHCI_ITD_SET_ADDR(xfer->address) | + EHCI_ITD_SET_ENDPT(UE_GET_ADDR(xfer->endpoint))); - temp = EHCI_ITD_SET_MPL(xfer->max_packet_size & 0x7FF); + temp = + EHCI_ITD_SET_MPL(xfer->max_packet_size & 0x7FF); - /* set direction */ - if (UE_GET_DIR(xfer->endpoint) == UE_DIR_IN) { - temp |= EHCI_ITD_SET_DIR_IN; - } - /* set maximum packet size */ - td->itd_bp[1] = htole32(temp); + /* set direction */ + if (UE_GET_DIR(xfer->endpoint) == UE_DIR_IN) { + temp |= EHCI_ITD_SET_DIR_IN; + } + /* set maximum packet size */ + td->itd_bp[1] = htole32(temp); - /* set transfer multiplier */ - td->itd_bp[2] = htole32(xfer->max_packet_count & 3); + /* set transfer multiplier */ + td->itd_bp[2] = htole32(xfer->max_packet_count & 3); - usbd_pc_cpu_flush(td->page_cache); + usbd_pc_cpu_flush(td->page_cache); + } } return; } @@ -2806,7 +2754,12 @@ plen = xfer->frlengths; - td = (xfer->td_transfer_first = xfer->td_start); + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; + xfer->td_transfer_first = td; pp_last = &sc->sc_isoc_hs_p_last[xfer->pipe->isoc_next]; @@ -3704,6 +3657,8 @@ usbd_transfer_setup_sub(parm); } +alloc_dma_set: + if (parm->err) { return; } @@ -3787,7 +3742,7 @@ } } - xfer->td_start = last_obj; + xfer->td_start[xfer->flags_int.curr_dma_set] = last_obj; last_obj = NULL; @@ -3816,8 +3771,12 @@ } } - xfer->qh_start = last_obj; + xfer->qh_start[xfer->flags_int.curr_dma_set] = last_obj; + if (!xfer->flags_int.curr_dma_set) { + xfer->flags_int.curr_dma_set = 1; + goto alloc_dma_set; + } return; } @@ -3891,10 +3850,22 @@ return; } +static void +ehci_do_dma_delay(struct usbd_bus *bus) +{ + /* + * Wait until the hardware has finished any possible use of + * the transfer descriptor(s) and QH + */ + DELAY(188); + return; +} + struct usbd_bus_methods ehci_bus_methods = { .pipe_init = ehci_pipe_init, .xfer_setup = ehci_xfer_setup, .xfer_unsetup = ehci_xfer_unsetup, .do_poll = ehci_do_poll, + .do_dma_delay = ehci_do_dma_delay, }; ==== //depot/projects/usb/src/sys/dev/usb/ehci.h#26 (text+ko) ==== @@ -113,7 +113,11 @@ #define EHCI_STS_INT 0x00000001 /* RWC interrupt */ #define EHCI_STS_INTRS(x) ((x) & 0x3f) -#define EHCI_NORMAL_INTRS (/* EHCI_STS_IAA | */ EHCI_STS_HSE | \ +/* + * NOTE: the doorbell interrupt is enabled, but the doorbell is never + * used! SiS chipsets require this. + */ +#define EHCI_NORMAL_INTRS (EHCI_STS_IAA | EHCI_STS_HSE | \ EHCI_STS_PCD | EHCI_STS_ERRINT | EHCI_STS_INT) #define EHCI_USBINTR 0x08 /* RW Interrupt register */ ==== //depot/projects/usb/src/sys/dev/usb/ohci.c#52 (text+ko) ==== @@ -1035,7 +1035,7 @@ if (td) { - ed = xfer->qh_start; + ed = xfer->qh_start[xfer->flags_int.curr_dma_set]; ed->ed_headp = td->td_self; usbd_pc_cpu_flush(ed->page_cache); @@ -1055,13 +1055,15 @@ static uint8_t ohci_check_transfer(struct usbd_xfer *xfer) { - ohci_ed_t *ed = xfer->qh_start; + ohci_ed_t *ed; uint32_t ed_flags; uint32_t ed_headp; uint32_t ed_tailp; DPRINTFN(12, ("xfer=%p checking transfer\n", xfer)); + ed = xfer->qh_start[xfer->flags_int.curr_dma_set]; + usbd_pc_cpu_invalidate(ed->page_cache); ed_flags = le32toh(ed->ed_flags); ed_headp = le32toh(ed->ed_headp); @@ -1441,11 +1443,17 @@ temp.average = xfer->max_usb_frame_size; temp.max_frame_size = xfer->max_frame_size; - xfer->td_transfer_first = xfer->td_start; - xfer->td_transfer_cache = xfer->td_start; + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; + + xfer->td_transfer_first = td; + xfer->td_transfer_cache = td; temp.td = NULL; - temp.td_next = xfer->td_start; + temp.td_next = td; temp.setup_alt_next = xfer->flags_int.short_frames_ok; methods = xfer->pipe->methods; @@ -1562,11 +1570,11 @@ if (ohcidebug > 8) { DPRINTF(("nexttog=%d; data before transfer:\n", xfer->pipe->toggle_next)); - ohci_dump_tds(xfer->td_start); + ohci_dump_tds(xfer->td_transfer_first); } #endif - ed = xfer->qh_start; + ed = xfer->qh_start[xfer->flags_int.curr_dma_set]; ed_flags = (OHCI_ED_SET_FA(xfer->address) | OHCI_ED_SET_EN(UE_GET_ADDR(xfer->endpoint)) | @@ -1652,51 +1660,32 @@ struct usbd_pipe_methods *methods = xfer->pipe->methods; ohci_softc_t *sc = xfer->usb_sc; ohci_ed_t *ed; - uint8_t need_delay; mtx_assert(&sc->sc_bus.mtx, MA_OWNED); - need_delay = 0; DPRINTFN(1, ("xfer=%p, pipe=%p, error=%d\n", xfer, xfer->pipe, error)); - for (ed = xfer->qh_start; ed; ed = ed->obj_next) { + ed = xfer->qh_start[xfer->flags_int.curr_dma_set]; + if (ed) { usbd_pc_cpu_invalidate(ed->page_cache); - - if ((!(ed->ed_flags & htole32(OHCI_ED_SKIP))) && - (!(ed->ed_headp & htole32(OHCI_HALTED))) && - ((ed->ed_headp ^ ed->ed_tailp) & htole32(-0x10))) { - need_delay = 1; - } } - if (methods == &ohci_device_bulk_methods) { - OHCI_REMOVE_QH(xfer->qh_start, sc->sc_bulk_p_last); + OHCI_REMOVE_QH(ed, sc->sc_bulk_p_last); } if (methods == &ohci_device_ctrl_methods) { - OHCI_REMOVE_QH(xfer->qh_start, sc->sc_ctrl_p_last); + OHCI_REMOVE_QH(ed, sc->sc_ctrl_p_last); } if (methods == &ohci_device_intr_methods) { - OHCI_REMOVE_QH(xfer->qh_start, sc->sc_intr_p_last[xfer->qh_pos]); + OHCI_REMOVE_QH(ed, sc->sc_intr_p_last[xfer->qh_pos]); } if (methods == &ohci_device_isoc_methods) { - OHCI_REMOVE_QH(xfer->qh_start, sc->sc_isoc_p_last); + OHCI_REMOVE_QH(ed, sc->sc_isoc_p_last); } xfer->td_transfer_first = NULL; xfer->td_transfer_last = NULL; - if ((methods != &ohci_root_ctrl_methods) && - (methods != &ohci_root_intr_methods)) { - - /* - * wait until hardware has finished any possible use of the - * transfer and QH - * - * hardware finishes in 1 millisecond - */ - DELAY(need_delay ? (2 * 1000) : (5)); - } /* dequeue transfer and start next transfer */ usbd_transfer_dequeue(xfer, error); return; @@ -1961,7 +1950,11 @@ plen = xfer->frlengths; - td = xfer->td_start; + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; xfer->td_transfer_first = td; @@ -2040,10 +2033,10 @@ #ifdef USB_DEBUG if (ohcidebug > 8) { DPRINTF(("data before transfer:\n")); - ohci_dump_itds(xfer->td_start); + ohci_dump_itds(xfer->td_transfer_first); } #endif - ed = xfer->qh_start; + ed = xfer->qh_start[xfer->flags_int.curr_dma_set]; if (UE_GET_DIR(xfer->endpoint) == UE_DIR_IN) ed_flags = (OHCI_ED_DIR_IN | OHCI_ED_FORMAT_ISO); @@ -2660,6 +2653,8 @@ nqh = 0; } +alloc_dma_set: + if (parm->err) { return; } @@ -2715,7 +2710,7 @@ } } - xfer->td_start = last_obj; + xfer->td_start[xfer->flags_int.curr_dma_set] = last_obj; last_obj = NULL; @@ -2744,8 +2739,12 @@ } } - xfer->qh_start = last_obj; + xfer->qh_start[xfer->flags_int.curr_dma_set] = last_obj; + if (!xfer->flags_int.curr_dma_set) { + xfer->flags_int.curr_dma_set = 1; + goto alloc_dma_set; + } return; } @@ -2808,10 +2807,22 @@ return; } +static void +ohci_do_dma_delay(struct usbd_bus *bus) +{ + /* + * Wait until hardware has finished any possible use of the + * transfer descriptor(s) and QH + */ + DELAY(1125); + return; +} + struct usbd_bus_methods ohci_bus_methods = { .pipe_init = ohci_pipe_init, .xfer_setup = ohci_xfer_setup, .xfer_unsetup = ohci_xfer_unsetup, .do_poll = ohci_do_poll, + .do_dma_delay = ohci_do_dma_delay, }; ==== //depot/projects/usb/src/sys/dev/usb/uhci.c#53 (text+ko) ==== @@ -1019,7 +1019,7 @@ return (last); } -static uint8_t +static void uhci_isoc_done(uhci_softc_t *sc, struct usbd_xfer *xfer) { struct usbd_page_search res; @@ -1028,7 +1028,6 @@ uint32_t offset = 0; uint32_t *plen = xfer->frlengths; uint16_t len = 0; - uint8_t need_delay = 0; uhci_td_t *td = xfer->td_transfer_first; uhci_td_t **pp_last = &sc->sc_isoc_p_last[xfer->qh_pos]; @@ -1056,11 +1055,6 @@ usbd_pc_cpu_invalidate(td->page_cache); status = le32toh(td->td_status); - /* check for active transfers */ - - if (status & UHCI_TD_ACTIVE) { - need_delay = 1; - } len = UHCI_TD_GET_ACTLEN(status); if (len > *plen) { @@ -1091,7 +1085,7 @@ xfer->aframes = xfer->nframes; - return (need_delay); + return; } static usbd_status_t @@ -1277,7 +1271,7 @@ uint32_t td_self; td = xfer->td_transfer_cache; - qh = xfer->qh_start; + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; td_token = td->obj_next->td_token; td = td->alt_next; @@ -1341,6 +1335,13 @@ usbd_pc_cpu_invalidate(td->page_cache); status = le32toh(td->td_status); + /* check also if the first is complete */ + + td = xfer->td_transfer_first; + + usbd_pc_cpu_invalidate(td->page_cache); + status |= le32toh(td->td_status); + if (!(status & UHCI_TD_ACTIVE)) { uhci_device_done(xfer, USBD_NORMAL_COMPLETION); goto transferred; @@ -1691,11 +1692,16 @@ temp.average = xfer->max_frame_size; temp.max_frame_size = xfer->max_frame_size; - xfer->td_transfer_first = xfer->td_start; - xfer->td_transfer_cache = xfer->td_start; + /* toggle the DMA set we are using */ + xfer->flags_int.curr_dma_set ^= 1; + + /* get next DMA set */ + td = xfer->td_start[xfer->flags_int.curr_dma_set]; + xfer->td_transfer_first = td; + xfer->td_transfer_cache = td; temp.td = NULL; - temp.td_next = xfer->td_start; + temp.td_next = td; temp.setup_alt_next = xfer->flags_int.short_frames_ok; uhci_mem_layout_init(&(temp.ml), xfer); @@ -1823,10 +1829,10 @@ if (uhcidebug > 8) { DPRINTF(("nexttog=%d; data before transfer:\n", xfer->pipe->toggle_next)); - uhci_dump_tds(xfer->td_start); + uhci_dump_tds(xfer->td_transfer_first); } #endif - return (xfer->td_start); + return (xfer->td_transfer_first); } /* NOTE: "done" can be run two times in a row, @@ -1838,45 +1844,38 @@ { struct usbd_pipe_methods *methods = xfer->pipe->methods; uhci_softc_t *sc = xfer->usb_sc; - uhci_td_t *td; uhci_qh_t *qh; - uint8_t need_delay; mtx_assert(&sc->sc_bus.mtx, MA_OWNED); - need_delay = 0; - DPRINTFN(1, ("xfer=%p, pipe=%p, error=%d\n", xfer, xfer->pipe, error)); - for (qh = xfer->qh_start; qh; qh = qh->obj_next) { + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; + if (qh) { usbd_pc_cpu_invalidate(qh->page_cache); - if (!(qh->qh_e_next & htole32(UHCI_PTR_T))) { - need_delay = 1; - } qh->e_next = 0; qh->qh_e_next = htole32(UHCI_PTR_T); usbd_pc_cpu_flush(qh->page_cache); } - if (xfer->flags_int.bandwidth_reclaimed) { xfer->flags_int.bandwidth_reclaimed = 0; uhci_rem_loop(sc); } if (methods == &uhci_device_bulk_methods) { - UHCI_REMOVE_QH(xfer->qh_start, sc->sc_bulk_p_last); + UHCI_REMOVE_QH(qh, sc->sc_bulk_p_last); } if (methods == &uhci_device_ctrl_methods) { if (xfer->udev->speed == USB_SPEED_LOW) { - UHCI_REMOVE_QH(xfer->qh_start, sc->sc_ls_ctl_p_last); + UHCI_REMOVE_QH(qh, sc->sc_ls_ctl_p_last); } else { - UHCI_REMOVE_QH(xfer->qh_start, sc->sc_fs_ctl_p_last); + UHCI_REMOVE_QH(qh, sc->sc_fs_ctl_p_last); } } if (methods == &uhci_device_intr_methods) { - UHCI_REMOVE_QH(xfer->qh_start, sc->sc_intr_p_last[xfer->qh_pos]); + UHCI_REMOVE_QH(qh, sc->sc_intr_p_last[xfer->qh_pos]); } /* * Only finish isochronous transfers once @@ -1885,46 +1884,11 @@ if (xfer->td_transfer_first && xfer->td_transfer_last) { if (methods == &uhci_device_isoc_methods) { - if (uhci_isoc_done(sc, xfer)) { - need_delay = 1; - } - } - if (need_delay) { - td = xfer->td_transfer_first; - - while (1) { - if (td == NULL) { - panic("%s:%d: out of TD's\n", - __FUNCTION__, __LINE__); - } - usbd_pc_cpu_invalidate(td->page_cache); - - td->td_status &= - htole32(~(UHCI_TD_ACTIVE | UHCI_TD_IOC)); - - usbd_pc_cpu_flush(td->page_cache); - - if (((void *)td) == xfer->td_transfer_last) { - td = NULL; - break; - } - td = td->obj_next; - } + uhci_isoc_done(sc, xfer); } xfer->td_transfer_first = NULL; xfer->td_transfer_last = NULL; } - if ((methods != &uhci_root_ctrl_methods) && - (methods != &uhci_root_intr_methods)) { - - /* - * wait until hardware has finished any possible use of the - * transfer and QH - * - * hardware finishes in 1 millisecond - */ - DELAY(need_delay ? ((3 * 1000) / 2) : UHCI_QH_REMOVE_DELAY); - } /* dequeue transfer and start next transfer */ usbd_transfer_dequeue(xfer, error); return; @@ -1965,7 +1929,7 @@ td = uhci_setup_standard_chain(xfer); /* setup QH */ - qh = xfer->qh_start; + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; UHCI_APPEND_QH(qh, td, sc->sc_bulk_p_last); uhci_add_loop(sc); @@ -2024,7 +1988,7 @@ td = uhci_setup_standard_chain(xfer); /* setup QH */ - qh = xfer->qh_start; + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; /* * NOTE: some devices choke on bandwidth- reclamation for control @@ -2121,7 +2085,7 @@ td = uhci_setup_standard_chain(xfer); /* setup QH */ - qh = xfer->qh_start; + qh = xfer->qh_start[xfer->flags_int.curr_dma_set]; /* enter QHs into the controller data structures */ UHCI_APPEND_QH(qh, td, sc->sc_intr_p_last[xfer->qh_pos]); @@ -2152,6 +2116,7 @@ { uhci_td_t *td; uint32_t td_token; + uint8_t ds; td_token = (UE_GET_DIR(xfer->endpoint) == UE_DIR_IN) ? @@ -2162,13 +2127,16 @@ /* initialize all TD's */ - for (td = xfer->td_start; td; td = td->obj_next) { + for (ds = 0; ds != 2; ds++) { + + for (td = xfer->td_start[ds]; td; td = td->obj_next) { - /* mark TD as inactive */ - td->td_status = htole32(UHCI_TD_IOS); - td->td_token = td_token; + /* mark TD as inactive */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 19:14:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F2DDA16A419; Wed, 19 Dec 2007 19:14:38 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A3EE116A417 for ; Wed, 19 Dec 2007 19:14:38 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 850A113C461 for ; Wed, 19 Dec 2007 19:14:38 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJJEcpL006307 for ; Wed, 19 Dec 2007 19:14:38 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJJEc62006304 for perforce@freebsd.org; Wed, 19 Dec 2007 19:14:38 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 19:14:38 GMT Message-Id: <200712191914.lBJJEc62006304@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131248 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 19:14:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131248 Change 131248 by hselasky@hselasky_laptop001 on 2007/12/19 19:14:30 Bugfix. An array was one unit too small. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#79 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#79 (text+ko) ==== @@ -2127,7 +2127,7 @@ usbd_callback_intr_td(void *arg) { struct usbd_memory_info *info = arg; - struct usbd_xfer *xfer[3]; + struct usbd_xfer *xfer[4]; uint8_t dropcount; mtx_lock(info->usb_mtx); From owner-p4-projects@FreeBSD.ORG Wed Dec 19 20:12:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D43216A41A; Wed, 19 Dec 2007 20:12:47 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B5BFE16A418 for ; Wed, 19 Dec 2007 20:12:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from speedfactory.net (mail6.speedfactory.net [66.23.216.219]) by mx1.freebsd.org (Postfix) with ESMTP id 7E92013C447 for ; Wed, 19 Dec 2007 20:12:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (unverified [66.23.211.162]) by speedfactory.net (SurgeMail 3.8q) with ESMTP id 225165660-1834499 for multiple; Wed, 19 Dec 2007 15:10:37 -0500 Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.8/8.13.8) with ESMTP id lBJKCT8f065584; Wed, 19 Dec 2007 15:12:31 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Hans Petter Selasky Date: Wed, 19 Dec 2007 14:33:13 -0500 User-Agent: KMail/1.9.6 References: <200712190137.lBJ1b8sJ006586@repoman.freebsd.org> In-Reply-To: <200712190137.lBJ1b8sJ006586@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200712191433.13837.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Wed, 19 Dec 2007 15:12:31 -0500 (EST) X-Virus-Scanned: ClamAV 0.91.2/5182/Wed Dec 19 12:36:58 2007 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 131191 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 20:12:47 -0000 On Tuesday 18 December 2007 08:37:08 pm Hans Petter Selasky wrote: > http://perforce.freebsd.org/chv.cgi?CH=131191 > > Change 131191 by hselasky@hselasky_laptop001 on 2007/12/19 01:36:11 > > > Bugfix: > It looks like you need to call "intr_event_destroy" and > not just "swi_remove". This was not well documented. > Else you get a memory leak. Looked through the sources > and I think others have made the same mistake aswell. That's because all other SWI's are owned by the system. You probably should just create plain old kernel threads via kthread_*() or kproc_*() instead of using the swi stuff. swi_add/swi_remove are for adding and removing handlers, not for managing the backing threads. swi_add() just happens to create the thread if it doesn't already exist. > Affected files ... > > .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#76 edit > > Differences ... > > ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#76 (text+ko) ==== > > @@ -835,9 +835,11 @@ > LIST_INIT(&(info->done_head)); > > /* create our interrupt thread */ > - if (swi_add(NULL, "usbcb", &usbd_callback_intr_td, > - info, SWI_CAMBIO, INTR_MPSAFE, &(info->done_cookie))) { > + if (swi_add(&(info->done_event), "usbcb", > + &usbd_callback_intr_td, info, SWI_CAMBIO, > + INTR_MPSAFE, &(info->done_cookie))) { > info->done_cookie = NULL; > + info->done_event = NULL; > parm.err = USBD_NO_INTR_THREAD; > goto done; > } > @@ -1073,6 +1075,7 @@ > /* teardown the interrupt thread, if any */ > if (info->done_cookie) { > swi_remove(info->done_cookie); > + intr_event_destroy(info->done_event); > } > /* > * free the "memory_base" last, > @@ -2434,7 +2437,7 @@ > type = (xfer->pipe->edesc->bmAttributes & UE_XFERTYPE); > if (type != UE_ISOCHRONOUS) { > xfer->pipe->is_stalled = 1; > - (xfer->pipe->methods->set_stall) ( > + (xfer->udev->bus->methods->set_stall) ( > xfer->udev, NULL, xfer->pipe); > goto done; > } > @@ -2823,11 +2826,11 @@ > * complete the USB transfer like in case of a timeout > * setting the error code "USBD_STALLED". > */ > - (pipe->methods->set_stall) (udev, xfer, pipe); > + (udev->bus->methods->set_stall) (udev, xfer, pipe); > } else { > pipe->toggle_next = 0; /* reset data toggle */ > > - (pipe->methods->clear_stall) (udev, pipe); > + (udev->bus->methods->clear_stall) (udev, pipe); > > /* start up the first transfer, if any */ > if (xfer) { > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Wed Dec 19 20:57:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 82D9E16A46C; Wed, 19 Dec 2007 20:57:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0A80D16A573 for ; Wed, 19 Dec 2007 20:57:29 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 01A0313C4DD for ; Wed, 19 Dec 2007 20:57:29 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJKvSaq033098 for ; Wed, 19 Dec 2007 20:57:28 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJKvS3f033095 for perforce@freebsd.org; Wed, 19 Dec 2007 20:57:28 GMT (envelope-from marcel@freebsd.org) Date: Wed, 19 Dec 2007 20:57:28 GMT Message-Id: <200712192057.lBJKvS3f033095@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 131253 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 20:57:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131253 Change 131253 by marcel@marcel_xcllnt on 2007/12/19 20:57:08 Resolve merge conflicts. Affected files ... .. //depot/projects/e500/sys/dev/powermac_nvram/powermac_nvram.c#4 edit .. //depot/projects/e500/sys/powerpc/powermac/grackle.c#6 edit .. //depot/projects/e500/sys/powerpc/powermac/uninorth.c#6 edit .. //depot/projects/e500/sys/powerpc/powerpc/bus_machdep.c#3 edit Differences ... ==== //depot/projects/e500/sys/dev/powermac_nvram/powermac_nvram.c#4 (text+ko) ==== @@ -38,7 +38,6 @@ #include #include -#include #include #include #include ==== //depot/projects/e500/sys/powerpc/powermac/grackle.c#6 (text+ko) ==== @@ -41,7 +41,6 @@ #include #include -#include #include #include #include ==== //depot/projects/e500/sys/powerpc/powermac/uninorth.c#6 (text+ko) ==== @@ -39,7 +39,6 @@ #include #include -#include #include #include #include ==== //depot/projects/e500/sys/powerpc/powerpc/bus_machdep.c#3 (text+ko) ==== @@ -36,43 +36,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -/*- - * Copyright (c) 1996 Charles M. Hannum. All rights reserved. - * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Christopher G. Demetriou - * for the NetBSD Project. - * 4. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $NetBSD: bus.h,v 1.9.4.1 2000/06/30 16:27:30 simonb Exp $ - * $FreeBSD: src/sys/powerpc/include/bus.h,v 1.17 2005/04/18 21:45:34 imp Exp $ - */ - -/* - * bus_space methods for MPC85xx on-chip peripherals bus space ops. - */ +#include +__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/bus_machdep.c,v 1.1 2007/12/19 18:00:50 marcel Exp $"); #include #include From owner-p4-projects@FreeBSD.ORG Wed Dec 19 21:47:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B017316A41A; Wed, 19 Dec 2007 21:47:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2E2B016A417 for ; Wed, 19 Dec 2007 21:47:23 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 10A1113C468 for ; Wed, 19 Dec 2007 21:47:23 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJLlMmo051988 for ; Wed, 19 Dec 2007 21:47:22 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJLlMXR051985 for perforce@freebsd.org; Wed, 19 Dec 2007 21:47:22 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 21:47:22 GMT Message-Id: <200712192147.lBJLlMXR051985@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131255 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 21:47:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131255 Change 131255 by jb@jb_freebsd1 on 2007/12/19 21:46:24 The duplication of symbols across all arm sub-machines prevents a LINT kernel being built like on other arches. For the time being, just use one of the current kernel configs to built in lieu of a true LINT. This lets me build universe like this: make NOCLEAN=1 KERNCONFS=LINT universe so that I can cut down the time to build the universe. Affected files ... .. //depot/projects/dtrace/src/sys/arm/conf/Makefile#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Dec 19 21:56:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4B5816A473; Wed, 19 Dec 2007 21:56:34 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8082316A421 for ; Wed, 19 Dec 2007 21:56:34 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 76C0413C46A for ; Wed, 19 Dec 2007 21:56:34 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJLuYgY055065 for ; Wed, 19 Dec 2007 21:56:34 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJLuXt3055062 for perforce@freebsd.org; Wed, 19 Dec 2007 21:56:33 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 19 Dec 2007 21:56:33 GMT Message-Id: <200712192156.lBJLuXt3055062@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131257 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 21:56:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=131257 Change 131257 by hselasky@hselasky_laptop001 on 2007/12/19 21:55:33 Switch over to using kthread instead of SWI's. I caught several panics when using "intr_event_destroy". Suggested by "John Baldwin". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#81 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#80 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#81 (text+ko) ==== @@ -632,8 +632,7 @@ LIST_HEAD(, usbd_xfer) dma_head; LIST_HEAD(, usbd_xfer) done_head; - struct intr_event *done_event; /* software interrupt event */ - void *done_cookie; /* software interrupt thread cookie */ + struct proc *done_thread; void *memory_base; struct mtx *priv_mtx; struct mtx *usb_mtx; @@ -659,6 +658,7 @@ * called */ uint8_t dma_tag_max; + uint8_t done_sleep; /* set if done thread is sleeping */ }; struct usbd_mbuf { ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#80 (text+ko) ==== @@ -43,8 +43,8 @@ #include #include #include -#include -#include +#include +#include #include #include @@ -55,15 +55,16 @@ static void usbd_pipe_enter_wrapper(struct usbd_xfer *xfer); static void usbd_compute_max_frame_size(struct usbd_xfer *xfer); -static void usbd_drop_refcount(struct usbd_memory_info *info, uint8_t dropcount); static uint8_t usbd_start_hardware_sub(struct usbd_xfer *xfer); static void usbd_premature_callback(struct usbd_xfer *xfer, usbd_status_t error); static void usbd_delayed_transfer_start(void *arg); static void usbd_bdma_work_loop(struct usbd_memory_info *info); static void usbd_bdma_cancel_event(struct usbd_xfer *xfer); static usbd_status_t usbd_handle_request(struct usbd_xfer *xfer); -static driver_intr_t usbd_callback_intr_td; +static void usbd_callback_intr_td(void *arg); static void usbd_transfer_unsetup_sub(struct usbd_memory_info *info); +static void usbd_callback_intr_sched(struct usbd_memory_info *info); + #ifdef USB_DEBUG void @@ -835,12 +836,10 @@ LIST_INIT(&(info->done_head)); - /* create our interrupt thread */ - if (swi_add(&(info->done_event), "usbcb", - &usbd_callback_intr_td, info, SWI_CAMBIO, - INTR_MPSAFE, &(info->done_cookie))) { - info->done_cookie = NULL; - info->done_event = NULL; + if (usb_thread_create + (&usbd_callback_intr_td, info, + &(info->done_thread), "USB interrupt thread")) { + info->done_thread = NULL; parm.err = USBD_NO_INTR_THREAD; goto done; } @@ -1018,23 +1017,6 @@ } /*------------------------------------------------------------------------* - * usbd_drop_refcount - * - * This function is called from various places, and its job is to - * wakeup "usbd_transfer_unsetup", when is safe to free the memory. - *------------------------------------------------------------------------*/ -static void -usbd_drop_refcount(struct usbd_memory_info *info, uint8_t dropcount) -{ - mtx_assert(info->usb_mtx, MA_OWNED); - - if ((info->memory_refcount -= dropcount) == 0) { - wakeup(info); - } - return; -} - -/*------------------------------------------------------------------------* * usbd_dma_delay * * The following function is called when we need to @@ -1075,16 +1057,16 @@ usbd_transfer_unsetup_sub(struct usbd_memory_info *info) { struct usbd_page_cache *pc; - int error; + + /* wait for interrupt thread to exit */ + + while (info->done_thread) { - /* - * wait for any USB callbacks to - * return - */ + usbd_callback_intr_sched(info); - while (info->memory_refcount > 0) { - error = mtx_sleep(info, info->usb_mtx, 0, - "usbdwait", 0); + if (mtx_sleep(&(info->done_thread), info->usb_mtx, + 0, "usbdwait", 0)) { + } } mtx_unlock(info->usb_mtx); @@ -1110,11 +1092,6 @@ usbd_dma_tag_unsetup(info->dma_tag_p, info->dma_tag_max); - /* teardown the interrupt thread, if any */ - if (info->done_cookie) { - swi_remove(info->done_cookie); - intr_event_destroy(info->done_event); - } /* * free the "memory_base" last, * hence the "info" structure is @@ -2116,6 +2093,18 @@ return; } +static void +usbd_callback_intr_sched(struct usbd_memory_info *info) +{ + mtx_assert(info->usb_mtx, MA_OWNED); + + if (info->done_sleep) { + info->done_sleep = 0; + wakeup(info); + } + return; +} + /*------------------------------------------------------------------------* * usbd_callback_intr_td * @@ -2190,12 +2179,23 @@ mtx_unlock(info->priv_mtx); mtx_lock(info->usb_mtx); - usbd_drop_refcount(info, dropcount); + info->memory_refcount -= dropcount; goto repeat; } else { - mtx_unlock(info->usb_mtx); + if (info->memory_refcount != 0) { + info->done_sleep = 1; + if (mtx_sleep(info, info->usb_mtx, 0, "usbdone", 0)) { + /* should not happen */ + } + goto repeat; + } } + + wakeup(&(info->done_thread)); + info->done_thread = NULL; + mtx_unlock(info->usb_mtx); + usb_thread_exit(0); return; } @@ -2313,7 +2313,7 @@ info->memory_refcount++; LIST_INSERT_HEAD(&(info->done_head), xfer, done_list); - swi_sched(info->done_cookie, 0); + usbd_callback_intr_sched(info); } return; } else { From owner-p4-projects@FreeBSD.ORG Wed Dec 19 22:10:50 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F401016A419; Wed, 19 Dec 2007 22:10:49 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8DDCF16A417 for ; Wed, 19 Dec 2007 22:10:49 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 888CF13C43E for ; Wed, 19 Dec 2007 22:10:49 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJMAnh1060776 for ; Wed, 19 Dec 2007 22:10:49 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJMAnAp060773 for perforce@freebsd.org; Wed, 19 Dec 2007 22:10:49 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 22:10:49 GMT Message-Id: <200712192210.lBJMAnAp060773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131259 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 22:10:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=131259 Change 131259 by jb@jb_freebsd1 on 2007/12/19 22:10:48 Revert these files to match CVS. There isn't much point doing and sun4v work until it is stable. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/sun4v/exception.S#12 edit .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tick.c#10 edit .. //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#21 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/exception.S#12 (text+ko) ==== @@ -700,6 +700,7 @@ .align 32 .endm +#ifdef KDTRACE .macro dtrace_fasttrap sethi %hi(dtrace_fasttrap_probe_ptr), %g4 ldx [%g4 + %lo(dtrace_fasttrap_probe_ptr)], %g4 @@ -722,6 +723,22 @@ sub %g0, 1, %g4 .align 32 .endm +#else + .macro dtrace_fasttrap + nop + .align 32 + .endm + + .macro dtrace_pid + nop + .align 32 + .endm + + .macro dtrace_return + nop + .align 32 + .endm +#endif ! fetch FP context into local registers .macro tl0_fpemu_context ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/tick.c#10 (text+ko) ==== @@ -193,15 +193,3 @@ intr_restore_all(s); } -/* - * DTrace needs a high resolution time function which can - * be called from a probe context and guaranteed not to have - * instrumented with probes itself. - * - * Returns nanoseconds since boot. - */ -uint64_t -dtrace_gethrtime() -{ - return (rd(tick) * (uint64_t) 1000000000 / tick_freq); -} ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#21 (text+ko) ==== @@ -43,10 +43,8 @@ #include "opt_ddb.h" #include "opt_ktr.h" #include "opt_ktrace.h" -#include "opt_trap_trace.h" #include -#include #include #include #include @@ -98,19 +96,6 @@ #include -#include - -/* - * These are hooks which are initialised by the dtrace module - * when it is loaded. This keeps the DTrace implementation - * opaque. - * - * This is a hook which is initialised by the systrace module - * when it is loaded. This keeps the DTrace syscall provider - * implementation opaque. - */ -systrace_probe_func_t systrace_probe_func; - void trap(struct trapframe *tf, int64_t type, uint64_t data); void syscall(struct trapframe *tf); @@ -305,9 +290,6 @@ td = curthread; -#ifdef TRAP_TRACING -hv_ttrace_addentry(0, (uint64_t) trap, (uint64_t) td, type, data); -#endif CTR4(KTR_TRAP, "trap: %p type=%s (%s) pil=%#lx", td, trap_msg[trapno], (TRAPF_USERMODE(tf) ? "user" : "kernel"), rdpr(pil)); @@ -694,31 +676,9 @@ PTRACESTOP_SC(p, td, S_PT_SCE); AUDIT_SYSCALL_ENTER(code, td); - - /* - * If the systrace module has registered it's probe - * callback and if there is a probe active for the - * syscall 'entry', process the probe. - */ - if (systrace_probe_func != NULL && callp->sy_entry != 0) - (*systrace_probe_func)(callp->sy_entry, code, callp, - args); - error = (*callp->sy_call)(td, argp); AUDIT_SYSCALL_EXIT(error, td); - /* Save the error return variable for DTrace to reference. */ - td->td_errno = error; - - /* - * If the systrace module has registered it's probe - * callback and if there is a probe active for the - * syscall 'return', process the probe. - */ - if (systrace_probe_func != NULL && callp->sy_return != 0) - (*systrace_probe_func)(callp->sy_return, code, callp, - args); - CTR5(KTR_SYSC, "syscall: p=%p error=%d %s return %#lx %#lx ", p, error, syscallnames[code], td->td_retval[0], td->td_retval[1]); From owner-p4-projects@FreeBSD.ORG Wed Dec 19 22:12:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1EB9816A420; Wed, 19 Dec 2007 22:12:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D866316A41A for ; Wed, 19 Dec 2007 22:12:51 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D08AA13C461 for ; Wed, 19 Dec 2007 22:12:51 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJMCpOT061630 for ; Wed, 19 Dec 2007 22:12:51 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJMCpVM061625 for perforce@freebsd.org; Wed, 19 Dec 2007 22:12:51 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 22:12:51 GMT Message-Id: <200712192212.lBJMCpVM061625@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131260 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 22:12:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131260 Change 131260 by jb@jb_freebsd1 on 2007/12/19 22:11:58 DTrace-specific functions will only be in the dtrace module. Affected files ... .. //depot/projects/dtrace/src/sys/i386/i386/tsc.c#10 edit Differences ... ==== //depot/projects/dtrace/src/sys/i386/i386/tsc.c#10 (text+ko) ==== @@ -244,16 +244,3 @@ { return (rdtsc()); } - -/* - * DTrace needs a high resolution time function which can - * be called from a probe context and guaranteed not to have - * instrumented with probes itself. - * - * Returns nanoseconds since boot. - */ -uint64_t -dtrace_gethrtime() -{ - return (rdtsc() * (uint64_t) 1000000000 / tsc_freq); -} From owner-p4-projects@FreeBSD.ORG Wed Dec 19 22:38:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A22516A418; Wed, 19 Dec 2007 22:38:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EE3EE16A46B for ; Wed, 19 Dec 2007 22:38:18 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E71E813C45D for ; Wed, 19 Dec 2007 22:38:18 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJMcIhc065126 for ; Wed, 19 Dec 2007 22:38:18 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJMcIwB065123 for perforce@freebsd.org; Wed, 19 Dec 2007 22:38:18 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 22:38:18 GMT Message-Id: <200712192238.lBJMcIwB065123@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131264 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 22:38:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131264 Change 131264 by jb@jb_freebsd1 on 2007/12/19 22:37:51 Reset these to match CVS for now. Some of the code here relies on CDDL headers that Sun won't relicense. This means that the code will have to be part of the dtrace module and hooked in when that is loaded. Affected files ... .. //depot/projects/dtrace/src/sys/i386/i386/exception.s#13 edit .. //depot/projects/dtrace/src/sys/i386/i386/trap.c#23 edit Differences ... ==== //depot/projects/dtrace/src/sys/i386/i386/exception.s#13 (text+ko) ==== @@ -34,13 +34,6 @@ * $FreeBSD: src/sys/i386/i386/exception.s,v 1.118 2007/12/07 08:20:16 jkoshy Exp $ */ -/* - * The DTrace parts of this file are: - * - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - #include "opt_apic.h" #include "opt_hwpmc_hooks.h" #include "opt_npx.h" @@ -48,12 +41,10 @@ #include #include #include -#include #include "assym.s" #define SEL_RPL_MASK 0x0003 -#define GSEL_KPL 0x0020 /* GSEL(GCODE_SEL, SEL_KPL) */ .text #ifdef HWPMC_HOOKS @@ -104,6 +95,8 @@ pushl $0; TRAP(T_OFLOW) IDTVEC(bnd) pushl $0; TRAP(T_BOUND) +IDTVEC(ill) + pushl $0; TRAP(T_PRIVINFLT) IDTVEC(dna) pushl $0; TRAP(T_DNA) IDTVEC(fpusegm) @@ -160,162 +153,6 @@ jmp doreti /* - * Privileged instruction fault. - */ - SUPERALIGN_TEXT -IDTVEC(ill) - /* - * DTrace uses invalid instructions to hook itself into - * the executable code. A privileged instruction fault in - * kernel code probably is the result of a 'Function Boundary - * Tracing' (FBT) or 'Statically Defined Tracing' (SDT) - * probe. - * - * Check if there is an invalid instruction function registered. - * (see trap.c for the global variable referenced) - */ - cmpl $0, (dtrace_invop_func) - - /* If not, just handle it as a normal trap. */ - jz norm_ill - - /* Check if this is a user fault. */ - cmpl $GSEL_KPL, 4(%esp) /* Check the code segment. */ - - /* If so, just handle it as a normal trap. */ - jne norm_ill - - /* - * This is a kernel instruction fault that might have been caused - * by a DTrace provider. - */ - pushal /* Push all registers onto the stack. */ - - /* - * Setup the stack to contain the arguments to: - * int dtrace_invop(uintptr_t addr, uintptr_t *stack, uintptr_t eax); - */ - pushl %eax /* Push %eax -- may contain the return value. */ - pushl %esp /* Push the stack pointer. */ - addl $48, (%esp) /* Adjust to incoming args. */ - pushl 40(%esp) /* Push the calling EIP. */ - - /* Call the registered function (dtrace_invop). */ - call *dtrace_invop_func /* Call the registered function. */ - -ALTENTRY(dtrace_invop_callsite) - /* - * Drop the arguments to dtrace_invop from the stack, leaving - * the registers. - */ - addl $12, %esp - - /* Process according to the return value from dtrace_invop. */ - cmpl $DTRACE_INVOP_PUSHL_EBP, %eax - je __dtrace_invop_pushl_ebp - cmpl $DTRACE_INVOP_POPL_EBP, %eax - je __dtrace_invop_popl_ebp - cmpl $DTRACE_INVOP_LEAVE, %eax - je __dtrace_invop_leave - cmpl $DTRACE_INVOP_NOP, %eax - je __dtrace_invop_nop - - /* - * The registered DTrace invalid instruction functions didn't - * match the fault address to a probe, so process the trap in - * the normal way. - &/ - * normal way because the registered DTrace invalid instruction - * functions didn't match it to a probe. - */ - jmp norm_ill - - /* case DTRACE_INVOP_PUSHL_EBP: */ -__dtrace_invop_pushl_ebp: - /* - * We must emulate a "pushl %ebp". To do this, we pull the stack - * down 4 bytes, and then store the base pointer. - */ - popal - subl $4, %esp /* make room for %ebp */ - pushl %eax /* push temp */ - movl 8(%esp), %eax /* load calling EIP */ - incl %eax /* increment over LOCK prefix */ - movl %eax, 4(%esp) /* store calling EIP */ - movl 12(%esp), %eax /* load calling CS */ - movl %eax, 8(%esp) /* store calling CS */ - movl 16(%esp), %eax /* load calling EFLAGS */ - movl %eax, 12(%esp) /* store calling EFLAGS */ - movl %ebp, 16(%esp) /* push %ebp */ - popl %eax /* pop off temp */ - iret /* return from interrupt */ - - /* case DTRACE_INVOP_POPL_EBP: */ -__dtrace_invop_popl_ebp: - /* - * We must emulate a "popl %ebp". To do this, we do the opposite of - * the above: we remove the %ebp from the stack, and squeeze up the - * saved state from the trap. - */ - popal - pushl %eax /* push temp */ - movl 16(%esp), %ebp /* pop %ebp */ - movl 12(%esp), %eax /* load calling EFLAGS */ - movl %eax, 16(%esp) /* store calling EFLAGS */ - movl 8(%esp), %eax /* load calling CS */ - movl %eax, 12(%esp) /* store calling CS */ - movl 4(%esp), %eax /* load calling EIP */ - incl %eax /* increment over LOCK prefix */ - movl %eax, 8(%esp) /* store calling EIP */ - popl %eax /* pop off temp */ - addl $4, %esp /* adjust stack pointer */ - iret /* return from interrupt */ - - /* case DTRACE_INVOP_LEAVE: */ -__dtrace_invop_leave: - /* - * We must emulate a "leave", which is the same as a "movl %ebp, %esp" - * followed by a "popl %ebp". This looks similar to the above, but - * requires two temporaries: one for the new base pointer, and one - * for the staging register. - */ - popal - pushl %eax /* push temp */ - pushl %ebx /* push temp */ - movl %ebp, %ebx /* set temp to old %ebp */ - movl (%ebx), %ebp /* pop %ebp */ - movl 16(%esp), %eax /* load calling EFLAGS */ - movl %eax, (%ebx) /* store calling EFLAGS */ - movl 12(%esp), %eax /* load calling CS */ - movl %eax, -4(%ebx) /* store calling CS */ - movl 8(%esp), %eax /* load calling EIP */ - incl %eax /* increment over LOCK prefix */ - movl %eax, -8(%ebx) /* store calling EIP */ - movl %ebx, -4(%esp) /* temporarily store new %esp */ - popl %ebx /* pop off temp */ - popl %eax /* pop off temp */ - movl -12(%esp), %esp /* set stack pointer */ - subl $8, %esp /* adjust for three pushes, one pop */ - iret /* return from interrupt */ - - /* case DTRACE_INVOP_NOP: */ -__dtrace_invop_nop: - /* - * We must emulate a "nop". This is obviously not hard: we need only - * advance the %eip by one. - */ - popal - incl (%esp) - iret - -norm_ill: - /* - * Process the instruction fault in the normal way. - */ - pushl $0 - TRAP(T_PRIVINFLT) - -/* * SYSCALL CALL GATE (old entry point for a.out binaries) * * The intersegment call has been set up to specify one dummy parameter. ==== //depot/projects/dtrace/src/sys/i386/i386/trap.c#23 (text+ko) ==== @@ -102,30 +102,6 @@ #include #endif -/* - * These are hooks which are initialised by the dtrace module - * when it is loaded. This keeps the DTrace implementation - * opaque. - * - * All that the trap() function below needs to determine - * is how many instruction bytes to offset the instruction - * pointer before returning from a trap that occured durin a - * 'no-fault' DTrace probe. - */ -dtrace_instr_size_func_t dtrace_instr_size_func; - -/* - * This hook handles invalid opcodes. - */ -dtrace_invop_func_t dtrace_invop_func; - -/* - * This is a hook which is initialised by the systrace module - * when it is loaded. This keeps the DTrace syscall provider - * implementation opaque. - */ -systrace_probe_func_t systrace_probe_func; - extern void trap(struct trapframe *frame); extern void syscall(struct trapframe *frame); @@ -242,66 +218,6 @@ goto out; #endif - /* - * A trap can occur while DTrace executes a probe. Before - * executing the probe, DTrace blocks re-scheduling and sets - * a flag in it's per-cpu flags to indicate that it doesn't - * want to fault. On returning from the the probe, the no-fault - * flag is cleared and finally re-scheduling is enabled. - * - * Check if DTrace has enabled 'no-fault' mode: - * - */ - if ((cpu_core[curcpu].cpuc_dtrace_flags & CPU_DTRACE_NOFAULT) != 0) { - /* - * When the dtrace module was loaded (or initialised - * if linked into the kernel), it should have set it's - * machine dependent instruction size function pointer - * for use here. If not, the trap will just end up - * being processed as a panic like any other. - */ - if (dtrace_instr_size_func != NULL) { - /* - * There are only a couple of trap types that - * are expected. All the rest will be handled - * in the usual way. - */ - switch (type) { - /* General protection fault. */ - case T_PROTFLT: - /* Flag an illegal operation. */ - cpu_core[curcpu].cpuc_dtrace_flags |= CPU_DTRACE_ILLOP; - - /* - * Offset the instruction pointer - * to the instruction following the - * one casing the fault. - */ - frame.tf_eip += (*dtrace_instr_size_func)((u_char *) frame.tf_eip); - goto out; - /* Page fault. */ - case T_PAGEFLT: - /* Flag a bad address. */ - cpu_core[curcpu].cpuc_dtrace_flags |= CPU_DTRACE_BADADDR; - cpu_core[curcpu].cpuc_dtrace_illval = rcr2(); - - /* - * Offset the instruction pointer - * to the instruction following the - * one casing the fault. - */ - frame.tf_eip += (*dtrace_instr_size_func)((u_char *) frame.tf_eip); - goto out; - default: - /* - * Handle all other traps in the usual - * way. - */ - break; - } - } - } - if ((frame->tf_eflags & PSL_I) == 0) { /* * Buggy application or kernel code has disabled @@ -1114,30 +1030,9 @@ PTRACESTOP_SC(p, td, S_PT_SCE); - /* - * If the systrace module has registered it's probe - * callback and if there is a probe active for the - * syscall 'entry', process the probe. - */ - if (systrace_probe_func != NULL && callp->sy_entry != 0) - (*systrace_probe_func)(callp->sy_entry, code, callp, - args); - AUDIT_SYSCALL_ENTER(code, td); error = (*callp->sy_call)(td, args); AUDIT_SYSCALL_EXIT(error, td); - - /* Save the error return variable for DTrace to reference. */ - td->td_errno = error; - - /* - * If the systrace module has registered it's probe - * callback and if there is a probe active for the - * syscall 'return', process the probe. - */ - if (systrace_probe_func != NULL && callp->sy_return != 0) - (*systrace_probe_func)(callp->sy_return, code, callp, - args); } switch (error) { From owner-p4-projects@FreeBSD.ORG Wed Dec 19 22:53:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1707C16A477; Wed, 19 Dec 2007 22:53:37 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9259B16A421 for ; Wed, 19 Dec 2007 22:53:36 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8C53613C46B for ; Wed, 19 Dec 2007 22:53:36 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJMraQV068628 for ; Wed, 19 Dec 2007 22:53:36 GMT (envelope-from swise@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJMraY2068624 for perforce@freebsd.org; Wed, 19 Dec 2007 22:53:36 GMT (envelope-from swise@FreeBSD.org) Date: Wed, 19 Dec 2007 22:53:36 GMT Message-Id: <200712192253.lBJMraY2068624@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swise@FreeBSD.org using -f From: Steve Wise To: Perforce Change Reviews Cc: Subject: PERFORCE change 131266 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 22:53:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131266 Change 131266 by swise@swise:vic10:iwarp on 2007/12/19 22:52:53 Lots of rdma fixes... - passive side MPA negotiation working - idrs fixed - udb bar region mapped - gid cache correctly populated Affected files ... .. //depot/projects/iwarp/sys/contrib/rdma/rdma_cache.c#3 edit .. //depot/projects/iwarp/sys/contrib/rdma/rdma_cma.c#9 edit .. //depot/projects/iwarp/sys/contrib/rdma/rdma_iwcm.c#6 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_adapter.h#5 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_main.c#5 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.c#6 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_cm.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_provider.c#3 edit .. //depot/projects/iwarp/sys/sys/linux_compat.h#8 edit .. //depot/projects/iwarp/sys/sys/linux_pci.h#2 edit Differences ... ==== //depot/projects/iwarp/sys/contrib/rdma/rdma_cache.c#3 (text+ko) ==== @@ -129,7 +129,7 @@ for (p = 0; p <= end_port(device) - start_port(device); ++p) { cache = device->cache.gid_cache[p]; for (i = 0; i < cache->table_len; ++i) { - if (!memcmp(gid, &cache->table[i], sizeof *gid)) { + if (!memcmp(gid, &cache->table[i], 6)) { /* XXX */ *port_num = p + start_port(device); if (index) *index = i; ==== //depot/projects/iwarp/sys/contrib/rdma/rdma_cma.c#9 (text+ko) ==== @@ -1307,6 +1307,7 @@ struct rdma_cm_event event; int ret; struct ifaddr *ifa; + uint16_t port; listen_id = cm_id->context; if (cma_disable_remove(listen_id, CMA_LISTEN)) @@ -1326,7 +1327,10 @@ mtx_unlock_spin(&conn_id->lock); conn_id->state = CMA_CONNECT; + port = iw_event->local_addr.sin_port; + iw_event->local_addr.sin_port = 0; ifa = ifa_ifwithaddr((struct sockaddr *)&iw_event->local_addr); + iw_event->local_addr.sin_port = port; if (!ifa) { ret = EADDRNOTAVAIL; cma_enable_remove(conn_id); @@ -2952,7 +2956,6 @@ switch (cmd) { case MOD_LOAD: printf("Loading rdma_cma.\n"); - cma_init(); break; case MOD_QUIESCE: ==== //depot/projects/iwarp/sys/contrib/rdma/rdma_iwcm.c#6 (text+ko) ==== ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_adapter.h#5 (text+ko) ==== @@ -341,6 +341,8 @@ /* PCI register resources */ int regs_rid; struct resource *regs_res; + int udbs_rid; + struct resource *udbs_res; bus_space_handle_t bh; bus_space_tag_t bt; bus_size_t mmio_len; ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_main.c#5 (text+ko) ==== @@ -448,9 +448,16 @@ sc->regs_rid = PCIR_BAR(0); if ((sc->regs_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &sc->regs_rid, RF_ACTIVE)) == NULL) { - device_printf(dev, "Cannot allocate BAR\n"); + device_printf(dev, "Cannot allocate BAR region 0\n"); return (ENXIO); } + sc->udbs_rid = PCIR_BAR(2); + if ((sc->udbs_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + &sc->udbs_rid, RF_ACTIVE)) == NULL) { + device_printf(dev, "Cannot allocate BAR region 1\n"); + error = ENXIO; + goto out; + } snprintf(sc->lockbuf, ADAPTER_LOCK_NAME_LEN, "cxgb controller lock %d", device_get_unit(dev)); @@ -706,6 +713,10 @@ cxgb_offload_exit(); + if (sc->udbs_res != NULL) + bus_release_resource(sc->dev, SYS_RES_MEMORY, sc->udbs_rid, + sc->udbs_res); + if (sc->regs_res != NULL) bus_release_resource(sc->dev, SYS_RES_MEMORY, sc->regs_rid, sc->regs_res); ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.c#6 (text+ko) ==== @@ -294,15 +294,15 @@ case RDMA_GET_PARAMS: { struct rdma_info *req = data; - req->udbell_physbase = rman_get_start(adapter->regs_res); - req->udbell_len = rman_get_size(adapter->regs_res); + req->udbell_physbase = rman_get_start(adapter->udbs_res); + req->udbell_len = rman_get_size(adapter->udbs_res); req->tpt_base = t3_read_reg(adapter, A_ULPTX_TPT_LLIMIT); req->tpt_top = t3_read_reg(adapter, A_ULPTX_TPT_ULIMIT); req->pbl_base = t3_read_reg(adapter, A_ULPTX_PBL_LLIMIT); req->pbl_top = t3_read_reg(adapter, A_ULPTX_PBL_ULIMIT); req->rqt_base = t3_read_reg(adapter, A_ULPRX_RQ_LLIMIT); req->rqt_top = t3_read_reg(adapter, A_ULPRX_RQ_ULIMIT); - req->kdb_addr = (void *)(rman_get_start(adapter->regs_res) + A_SG_KDOORBELL); + req->kdb_addr = (void *)((unsigned long)rman_get_virtual(adapter->regs_res) + A_SG_KDOORBELL); req->pdev = adapter->dev; break; } ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.c#3 (text+ko) ==== ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_cm.c#3 (text+ko) ==== @@ -377,30 +377,16 @@ __be32 peer_ip, __be16 local_port, __be16 peer_port, u8 tos) { -#ifdef netyet - struct rtable *rt; - struct flowi fl = { - .oif = 0, - .nl_u = { - .ip4_u = { - .daddr = peer_ip, - .saddr = local_ip, - .tos = tos} - }, - .proto = IPPROTO_TCP, - .uli_u = { - .ports = { - .sport = local_port, - .dport = peer_port} - } - }; - - if (ip_route_output_flow(&rt, &fl, NULL, 0)) - return NULL; - return rt; - -#endif - return NULL; + struct route iproute; + struct sockaddr_in *dst = (struct sockaddr_in *)&iproute.ro_dst; + + bzero(&iproute, sizeof iproute); + dst->sin_family = AF_INET; + dst->sin_len = sizeof *dst; + dst->sin_addr.s_addr = peer_ip; + + rtalloc(&iproute); + return iproute.ro_rt; } static unsigned int @@ -879,13 +865,11 @@ err = (EINVAL); goto err; } -#ifdef notyet + /* * copy the new data into our accumulation buffer. */ - skb_copy_from_linear_data(skb, &(ep->mpa_pkt[ep->mpa_pkt_len]), - skb->len); -#endif + m_copydata(m, 0, m->m_len, &(ep->mpa_pkt[ep->mpa_pkt_len])); ep->mpa_pkt_len += m->m_len; /* @@ -897,10 +881,12 @@ /* Validate MPA header. */ if (mpa->revision != mpa_rev) { + PDBG("%s bad mpa rev %d\n", __FUNCTION__, mpa->revision); err = EPROTO; goto err; } if (memcmp(mpa->key, MPA_KEY_REP, sizeof(mpa->key))) { + PDBG("%s bad mpa key |%16s|\n", __FUNCTION__, mpa->key); err = EPROTO; goto err; } @@ -911,6 +897,7 @@ * Fail if there's too much private data. */ if (plen > MPA_MAX_PRIVATE_DATA) { + PDBG("%s plen too big %d\n", __FUNCTION__, plen); err = EPROTO; goto err; } @@ -919,6 +906,7 @@ * If plen does not account for pkt size */ if (ep->mpa_pkt_len > (sizeof(*mpa) + plen)) { + PDBG("%s pkt too big %d\n", __FUNCTION__, ep->mpa_pkt_len); err = EPROTO; goto err; } @@ -942,6 +930,7 @@ * start reply message including private data. And * the MPA header is valid. */ + PDBG("%s mpa rpl looks good!\n", __FUNCTION__); state_set(&ep->com, FPDU_MODE); ep->mpa_attr.crc_enabled = (mpa->flags & MPA_CRC) | crc_enabled ? 1 : 0; ep->mpa_attr.recv_marker_enabled = markers_enabled; @@ -996,39 +985,39 @@ * then we must fail this connection. */ if (ep->mpa_pkt_len + m->m_len > sizeof(ep->mpa_pkt)) { + PDBG("%s mpa message too big %d\n", __FUNCTION__, ep->mpa_pkt_len + m->m_len); abort_connection(ep, m, M_NOWAIT); return; } - PDBG("%s enter (%s line %u)\n", __FUNCTION__, __FILE__, __LINE__); -#ifdef notyet /* * Copy the new data into our accumulation buffer. */ - skb_copy_from_linear_data(skb, &(ep->mpa_pkt[ep->mpa_pkt_len]), - skb->len); -#endif + m_copydata(m, 0, m->m_len, &(ep->mpa_pkt[ep->mpa_pkt_len])); ep->mpa_pkt_len += m->m_len; /* * If we don't even have the mpa message, then bail. * We'll continue process when more data arrives. */ - if (ep->mpa_pkt_len < sizeof(*mpa)) + if (ep->mpa_pkt_len < sizeof(*mpa)) { + PDBG("%s not enough header %d...waiting...\n", __FUNCTION__, ep->mpa_pkt_len); return; - PDBG("%s enter (%s line %u)\n", __FUNCTION__, __FILE__, __LINE__); + } mpa = (struct mpa_message *) ep->mpa_pkt; /* * Validate MPA Header. */ if (mpa->revision != mpa_rev) { + PDBG("%s bad mpa rev %d\n", __FUNCTION__, mpa->revision); abort_connection(ep, m, M_NOWAIT); return; } if (memcmp(mpa->key, MPA_KEY_REQ, sizeof(mpa->key))) { + PDBG("%s bad mpa key |%16s|\n", __FUNCTION__, mpa->key); abort_connection(ep, m, M_NOWAIT); return; } @@ -1039,6 +1028,7 @@ * Fail if there's too much private data. */ if (plen > MPA_MAX_PRIVATE_DATA) { + PDBG("%s plen too big %d\n", __FUNCTION__, plen); abort_connection(ep, m, M_NOWAIT); return; } @@ -1047,6 +1037,7 @@ * If plen does not account for pkt size */ if (ep->mpa_pkt_len > (sizeof(*mpa) + plen)) { + PDBG("%s more data after private data %d\n", __FUNCTION__, ep->mpa_pkt_len); abort_connection(ep, m, M_NOWAIT); return; } @@ -1055,8 +1046,10 @@ /* * If we don't have all the pdata yet, then bail. */ - if (ep->mpa_pkt_len < (sizeof(*mpa) + plen)) + if (ep->mpa_pkt_len < (sizeof(*mpa) + plen)) { + PDBG("%s more mpa msg to come %d\n", __FUNCTION__, ep->mpa_pkt_len); return; + } /* * If we get here we have accumulated the entire mpa @@ -1400,6 +1393,7 @@ printf("%s - failed to find route !\n", __FUNCTION__); goto reject; } + printf("%s ifname |%s|\n", __FUNCTION__, dst->rt_ifp->if_xname); l2t = t3_l2t_get(tdev, dst, dst->rt_ifp); if (l2t == NULL) { printf("%s - failed to allocate l2t entry!\n", __FUNCTION__); @@ -1417,9 +1411,11 @@ state_set(&child_ep->com, CONNECTING); child_ep->com.tdev = tdev; child_ep->com.cm_id = NULL; + child_ep->com.local_addr.sin_len = sizeof(struct sockaddr_in); child_ep->com.local_addr.sin_family = PF_INET; child_ep->com.local_addr.sin_port = req->local_port; child_ep->com.local_addr.sin_addr.s_addr = req->local_ip; + child_ep->com.remote_addr.sin_len = sizeof(struct sockaddr_in); child_ep->com.remote_addr.sin_family = PF_INET; child_ep->com.remote_addr.sin_port = req->peer_port; child_ep->com.remote_addr.sin_addr.s_addr = req->peer_ip; ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_provider.c#3 (text+ko) ==== @@ -97,7 +97,7 @@ static struct ib_ah *iwch_ah_create(struct ib_pd *pd, struct ib_ah_attr *ah_attr) { - return ERR_PTR(ENOSYS); + return ERR_PTR(-ENOSYS); } static int iwch_ah_destroy(struct ib_ah *ah) @@ -150,7 +150,7 @@ PDBG("%s ibdev %p\n", __FUNCTION__, ibdev); context = kzalloc(sizeof(*context), M_WAITOK); if (!context) - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); cxio_init_ucontext(&rhp->rdev, &context->uctx); TAILQ_INIT(&context->mmaps); mtx_init(&context->mmap_lock, "ucontext mmap", NULL, MTX_DEF); @@ -186,15 +186,15 @@ PDBG("%s ib_dev %p entries %d\n", __FUNCTION__, ibdev, entries); rhp = to_iwch_dev(ibdev); chp = kzalloc(sizeof(*chp), M_WAITOK); - if (!chp) - return ERR_PTR(ENOMEM); - + if (!chp) { + return ERR_PTR(-ENOMEM); + } if (ib_context) { ucontext = to_iwch_ucontext(ib_context); if (!t3a_device(rhp)) { if (ib_copy_from_udata(&ureq, udata, sizeof (ureq))) { cxfree(chp); - return ERR_PTR(EFAULT); + return ERR_PTR(-EFAULT); } chp->user_rptr_addr = (u32 __user *)(unsigned long)ureq.user_rptr_addr; } @@ -218,7 +218,7 @@ if (cxio_create_cq(&rhp->rdev, &chp->cq)) { cxfree(chp); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } chp->rhp = rhp; chp->ibcq.cqe = (1 << chp->cq.size_log2) - 1; @@ -233,7 +233,7 @@ mm = kmalloc(sizeof *mm, M_WAITOK); if (!mm) { iwch_destroy_cq(&chp->ibcq); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } uresp.cqid = chp->cq.cqid; uresp.size_log2 = chp->cq.size_log2; @@ -244,7 +244,7 @@ if (ib_copy_to_udata(udata, &uresp, sizeof (uresp))) { cxfree(mm); iwch_destroy_cq(&chp->ibcq); - return ERR_PTR(EFAULT); + return ERR_PTR(-EFAULT); } mm->key = uresp.key; mm->addr = virt_to_phys(chp->cq.queue); @@ -444,18 +444,18 @@ rhp = (struct iwch_dev *) ibdev; pdid = cxio_hal_get_pdid(rhp->rdev.rscp); if (!pdid) - return ERR_PTR(EINVAL); + return ERR_PTR(-EINVAL); php = kzalloc(sizeof(*php), M_WAITOK); if (!php) { cxio_hal_put_pdid(rhp->rdev.rscp, pdid); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } php->pdid = pdid; php->rhp = rhp; if (context) { if (ib_copy_to_udata(udata, &php->pdid, sizeof (__u32))) { iwch_deallocate_pd(&php->ibpd); - return ERR_PTR(EFAULT); + return ERR_PTR(-EFAULT); } } PDBG("%s pdid 0x%0x ptr 0x%p\n", __FUNCTION__, pdid, php); @@ -509,7 +509,7 @@ mhp = kzalloc(sizeof(*mhp), M_WAITOK); if (!mhp) - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); /* First check that we have enough alignment */ if ((*iova_start & ~PAGE_MASK) != (buffer_list[0].addr & ~PAGE_MASK)) { @@ -546,7 +546,7 @@ return &mhp->ibmr; err: cxfree(mhp); - return ERR_PTR(ret); + return ERR_PTR(-ret); } @@ -636,13 +636,13 @@ rhp = php->rhp; mhp = kzalloc(sizeof(*mhp), M_WAITOK); if (!mhp) - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); mhp->umem = ib_umem_get(pd->uobject->context, start, length, acc); if (IS_ERR(mhp->umem)) { err = PTR_ERR(mhp->umem); cxfree(mhp); - return ERR_PTR(err); + return ERR_PTR(-err); } shift = ffs(mhp->umem->page_size) - 1; @@ -701,7 +701,7 @@ err: ib_umem_release(mhp->umem); cxfree(mhp); - return ERR_PTR(err); + return ERR_PTR(-err); } static struct ib_mr *iwch_get_dma_mr(struct ib_pd *pd, int acc) @@ -735,11 +735,11 @@ rhp = php->rhp; mhp = kzalloc(sizeof(*mhp), M_WAITOK); if (!mhp) - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); ret = cxio_allocate_window(&rhp->rdev, &stag, php->pdid); if (ret) { cxfree(mhp); - return ERR_PTR(ret); + return ERR_PTR(-ret); } mhp->rhp = rhp; mhp->attr.pdid = php->pdid; @@ -812,13 +812,13 @@ PDBG("%s ib_pd %p\n", __FUNCTION__, pd); if (attrs->qp_type != IB_QPT_RC) - return ERR_PTR(EINVAL); + return ERR_PTR(-EINVAL); php = to_iwch_pd(pd); rhp = php->rhp; schp = get_chp(rhp, ((struct iwch_cq *) attrs->send_cq)->cq.cqid); rchp = get_chp(rhp, ((struct iwch_cq *) attrs->recv_cq)->cq.cqid); if (!schp || !rchp) - return ERR_PTR(EINVAL); + return ERR_PTR(-EINVAL); /* The RQT size must be # of entries + 1 rounded up to a power of two */ rqsize = roundup_pow_of_two(attrs->cap.max_recv_wr); @@ -830,10 +830,10 @@ rqsize = 16; if (rqsize > T3_MAX_RQ_SIZE) - return ERR_PTR(EINVAL); + return ERR_PTR(-EINVAL); if (attrs->cap.max_inline_data > T3_MAX_INLINE) - return ERR_PTR(EINVAL); + return ERR_PTR(-EINVAL); /* * NOTE: The SQ and total WQ sizes don't need to be @@ -846,7 +846,7 @@ wqsize, sqsize, rqsize); qhp = kzalloc(sizeof(*qhp), M_WAITOK); if (!qhp) - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); qhp->wq.size_log2 = ilog2(wqsize); qhp->wq.rq_size_log2 = ilog2(rqsize); qhp->wq.sq_size_log2 = ilog2(sqsize); @@ -854,7 +854,7 @@ if (cxio_create_qp(&rhp->rdev, !udata, &qhp->wq, ucontext ? &ucontext->uctx : &rhp->rdev.uctx)) { cxfree(qhp); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } attrs->cap.max_recv_wr = rqsize - 1; attrs->cap.max_send_wr = sqsize; @@ -893,14 +893,14 @@ mm1 = kmalloc(sizeof *mm1, M_WAITOK); if (!mm1) { iwch_destroy_qp(&qhp->ibqp); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } mm2 = kmalloc(sizeof *mm2, M_WAITOK); if (!mm2) { cxfree(mm1); iwch_destroy_qp(&qhp->ibqp); - return ERR_PTR(ENOMEM); + return ERR_PTR(-ENOMEM); } uresp.qpid = qhp->wq.qpid; @@ -917,7 +917,7 @@ cxfree(mm1); cxfree(mm2); iwch_destroy_qp(&qhp->ibqp); - return ERR_PTR(EFAULT); + return ERR_PTR(-EFAULT); } mm1->key = uresp.key; mm1->addr = virt_to_phys(qhp->wq.queue); ==== //depot/projects/iwarp/sys/sys/linux_compat.h#8 (text+ko) ==== @@ -106,18 +106,23 @@ static inline void *idr_find(struct idr *x, uint32_t key) { struct idr *i; - for (i=x;i;i=i->next) if (i->key==key) return(i->value); + for (i=x->next;i;i=i->next) if (i->key==key) return(i->value); return(0); } static inline int idr_pre_get(struct idr *idp, unsigned int gfp){return(1);} -static inline int idr_get_new(struct idr **idp, void *ptr, int *id) +static inline int idr_get_new(struct idr *idp, void *ptr, int *id) { - struct idr *i=malloc(sizeof(struct idr),M_TEMP,M_WAITOK); + struct idr *i; + + for (i=idp->next;i;i=i->next) + if (i->key == *id) + return -EEXIST; + i=malloc(sizeof(struct idr),M_TEMP,M_WAITOK); i->key=*id; i->value=ptr; - i->next=*idp; - *idp=i; + i->next = idp->next; + idp->next = i; return(0); } @@ -126,14 +131,14 @@ int newid = starting_id; struct idr *i; - for (i=idp;i;i=((i)->next)) + for (i=idp->next;i;i=i->next) if (i->key > newid) newid = i->key; i=malloc(sizeof(struct idr),M_TEMP,M_WAITOK); i->key=newid; i->value=ptr; - i->next=idp; - idp=i; + i->next=idp->next; + idp->next=i; *id = newid; return(0); } @@ -141,22 +146,30 @@ static inline void idr_remove(struct idr *idp, int id) { /* leak */ - struct idr *i; - for (i=idp;i;i=((i)->next)) + struct idr *i, *prev=NULL; + for (i=idp->next;i;prev=i,i=i->next) if ((i)->key==id) { - i=(i)->next; + if (!prev) + idp->next = i->next; + else + prev->next = i->next; + free(i, M_TEMP); return; } } -static inline void idr_init(struct idr *idp){} +static inline void idr_init(struct idr *idp) +{ + idp->next = NULL; +} static inline void idr_destroy(struct idr *idp) { struct idr *i, *tmp; for (i=idp->next;i;i=tmp) { - tmp=(i)->next; + tmp=i->next; free(i, M_TEMP); } + idp->next = NULL; } static __inline void ==== //depot/projects/iwarp/sys/sys/linux_pci.h#2 (text+ko) ==== @@ -232,7 +232,11 @@ static inline void *dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, int flag) { - return(pci_alloc_consistent(0,size,dma_handle)); + void *r; + + r = contigmalloc(size, M_DEVBUF, M_WAITOK, 0ul, ~0ul, 4096, 0); + if (r) *dma_handle=virt_to_phys(r); + return(r); } static inline void dma_free_coherent(struct device **dev, size_t size, From owner-p4-projects@FreeBSD.ORG Wed Dec 19 23:02:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B1CD616A418; Wed, 19 Dec 2007 23:02:48 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4AF4C16A468 for ; Wed, 19 Dec 2007 23:02:48 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3AE8513C45A for ; Wed, 19 Dec 2007 23:02:48 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJN2mQu069890 for ; Wed, 19 Dec 2007 23:02:48 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJN2kAc069883 for perforce@freebsd.org; Wed, 19 Dec 2007 23:02:46 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 19 Dec 2007 23:02:46 GMT Message-Id: <200712192302.lBJN2kAc069883@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131267 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 23:02:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131267 Change 131267 by kmacy@kmacy_home:ethng on 2007/12/19 23:01:58 IFC Affected files ... .. //depot/projects/ethng/src/etc/rc.d/ldconfig#3 integrate .. //depot/projects/ethng/src/games/fortune/datfiles/fortunes#6 integrate .. //depot/projects/ethng/src/games/fortune/datfiles/fortunes-o.real#5 integrate .. //depot/projects/ethng/src/include/complex.h#3 integrate .. //depot/projects/ethng/src/include/pthread_np.h#3 integrate .. //depot/projects/ethng/src/lib/libc/Versions.def#2 integrate .. //depot/projects/ethng/src/lib/libfetch/Makefile#2 integrate .. //depot/projects/ethng/src/lib/libfetch/common.c#2 integrate .. //depot/projects/ethng/src/lib/libfetch/common.h#2 integrate .. //depot/projects/ethng/src/lib/libfetch/fetch.c#2 integrate .. //depot/projects/ethng/src/lib/libfetch/file.c#2 integrate .. //depot/projects/ethng/src/lib/libfetch/ftp.c#2 integrate .. //depot/projects/ethng/src/lib/libfetch/http.c#2 integrate .. //depot/projects/ethng/src/lib/libthr/pthread.map#3 integrate .. //depot/projects/ethng/src/lib/libthr/thread/thr_mutex.c#5 integrate .. //depot/projects/ethng/src/lib/libthr/thread/thr_private.h#5 integrate .. //depot/projects/ethng/src/lib/msun/Makefile#3 integrate .. //depot/projects/ethng/src/lib/msun/Symbol.map#2 integrate .. //depot/projects/ethng/src/lib/msun/man/csqrt.3#1 branch .. //depot/projects/ethng/src/lib/msun/man/sqrt.3#2 integrate .. //depot/projects/ethng/src/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/ethng/src/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/ethng/src/sbin/natd/natd.8#3 integrate .. //depot/projects/ethng/src/share/man/man3/tgmath.3#2 integrate .. //depot/projects/ethng/src/share/man/man4/Makefile#8 integrate .. //depot/projects/ethng/src/share/man/man4/hptrr.4#1 branch .. //depot/projects/ethng/src/sys/amd64/conf/GENERIC#9 integrate .. //depot/projects/ethng/src/sys/amd64/conf/MULTIQ#6 edit .. //depot/projects/ethng/src/sys/amd64/conf/NOTES#5 integrate .. //depot/projects/ethng/src/sys/conf/files.amd64#12 integrate .. //depot/projects/ethng/src/sys/conf/files.i386#10 integrate .. //depot/projects/ethng/src/sys/conf/files.powerpc#4 integrate .. //depot/projects/ethng/src/sys/conf/options#8 integrate .. //depot/projects/ethng/src/sys/conf/options.powerpc#2 integrate .. //depot/projects/ethng/src/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/ethng/src/sys/dev/ata/ata-chipset.c#9 integrate .. //depot/projects/ethng/src/sys/dev/ata/ata-dma.c#3 integrate .. //depot/projects/ethng/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_adapter.h#26 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_include.h#4 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_l2t.c#5 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_l2t.h#5 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_main.c#29 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_offload.c#8 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_offload.h#6 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_osdep.h#18 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_sge.c#37 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/sys/mbufq.h#4 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/sys/mvec.h#11 edit .. //depot/projects/ethng/src/sys/dev/cxgb/sys/uipc_mvec.c#17 edit .. //depot/projects/ethng/src/sys/dev/cxgb/t3cdev.h#4 edit .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/array.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/him.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/list.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/ethng/src/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/ethng/src/sys/dev/sound/pci/hda/hdac.c#4 integrate .. //depot/projects/ethng/src/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/ethng/src/sys/i386/conf/GENERIC#7 integrate .. //depot/projects/ethng/src/sys/i386/conf/NOTES#5 integrate .. //depot/projects/ethng/src/sys/i386/conf/PAE#4 integrate .. //depot/projects/ethng/src/sys/kern/Makefile#2 integrate .. //depot/projects/ethng/src/sys/kern/kern_event.c#2 integrate .. //depot/projects/ethng/src/sys/kern/kern_mbuf.c#11 integrate .. //depot/projects/ethng/src/sys/kern/kern_mutex.c#5 integrate .. //depot/projects/ethng/src/sys/kern/kern_rwlock.c#6 integrate .. //depot/projects/ethng/src/sys/kern/kern_sx.c#5 integrate .. //depot/projects/ethng/src/sys/kern/kern_thread.c#6 integrate .. //depot/projects/ethng/src/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/ethng/src/sys/kern/sched_ule.c#10 integrate .. //depot/projects/ethng/src/sys/kern/subr_lock.c#4 integrate .. //depot/projects/ethng/src/sys/kern/sys_generic.c#3 integrate .. //depot/projects/ethng/src/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/ethng/src/sys/kern/uipc_sockbuf.c#3 integrate .. //depot/projects/ethng/src/sys/modules/Makefile#9 integrate .. //depot/projects/ethng/src/sys/modules/cxgb/Makefile#11 edit .. //depot/projects/ethng/src/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/ethng/src/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/ethng/src/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/ethng/src/sys/modules/netgraph/Makefile#2 edit .. //depot/projects/ethng/src/sys/net/if.h#4 integrate .. //depot/projects/ethng/src/sys/netinet/if_ether.c#11 integrate .. //depot/projects/ethng/src/sys/netinet/tcp.h#2 integrate .. //depot/projects/ethng/src/sys/netinet/toedev.h#2 integrate .. //depot/projects/ethng/src/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/ethng/src/sys/netncp/ncp_sock.c#2 integrate .. //depot/projects/ethng/src/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/ethng/src/sys/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/ethng/src/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/conf/GENERIC#5 integrate .. //depot/projects/ethng/src/sys/powerpc/conf/NOTES#3 integrate .. //depot/projects/ethng/src/sys/powerpc/include/fpu.h#2 integrate .. //depot/projects/ethng/src/sys/powerpc/powerpc/clock.c#3 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/interrupt.c#4 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/locore.S#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/machdep.c#4 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/mmu_oea.c#3 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/nexus.c#3 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/swtch.S#3 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/trap.c#4 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/uio_machdep.c#2 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/uma_machdep.c#3 delete .. //depot/projects/ethng/src/sys/powerpc/powerpc/vm_machdep.c#4 delete .. //depot/projects/ethng/src/sys/sys/_lock.h#2 integrate .. //depot/projects/ethng/src/sys/sys/kerneldump.h#2 integrate .. //depot/projects/ethng/src/sys/sys/lock_profile.h#3 integrate .. //depot/projects/ethng/src/sys/sys/pcpu.h#4 integrate .. //depot/projects/ethng/src/sys/sys/proc.h#8 integrate .. //depot/projects/ethng/src/sys/sys/selinfo.h#2 integrate .. //depot/projects/ethng/src/sys/sys/socketvar.h#2 integrate .. //depot/projects/ethng/src/sys/sys/sx.h#2 integrate .. //depot/projects/ethng/src/sys/sys/systm.h#5 integrate .. //depot/projects/ethng/src/sys/sys/tty.h#2 integrate .. //depot/projects/ethng/src/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/ethng/src/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/ethng/src/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/ethng/src/tools/tools/ath/athdebug/athdebug.c#3 integrate .. //depot/projects/ethng/src/tools/tools/ath/athstats/Makefile#2 integrate .. //depot/projects/ethng/src/tools/tools/ath/athstats/athstats.c#3 integrate .. //depot/projects/ethng/src/tools/tools/ath/athstats/main.c#3 integrate .. //depot/projects/ethng/src/tools/tools/ath/athstats/statfoo.c#3 integrate .. //depot/projects/ethng/src/usr.bin/vmstat/Makefile#2 integrate .. //depot/projects/ethng/src/usr.bin/vmstat/vmstat.8#2 integrate .. //depot/projects/ethng/src/usr.bin/vmstat/vmstat.c#2 integrate .. //depot/projects/ethng/src/usr.bin/xinstall/xinstall.c#2 integrate Differences ... ==== //depot/projects/ethng/src/etc/rc.d/ldconfig#3 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/ldconfig,v 1.18 2007/12/08 07:20:22 dougb Exp $ +# $FreeBSD: src/etc/rc.d/ldconfig,v 1.19 2007/12/13 00:51:01 jhb Exp $ # # PROVIDE: ldconfig @@ -49,8 +49,14 @@ fi fi done - echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} - ${ldconfig} -32 -m ${_ins} ${ldconfig32_paths} + _LDC="" + for i in ${ldconfig32_paths}; do + if [ -r "${i}" ]; then + _LDC="${_LDC} ${i}" + fi + done + echo '32-bit compatibility ldconfig path:' ${_LDC} + ${ldconfig} -32 -m ${_ins} ${_LDC} ;; esac ==== //depot/projects/ethng/src/games/fortune/datfiles/fortunes#6 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.249 2007/12/09 01:00:11 dougb Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.250 2007/12/14 01:47:11 wes Exp $ % ======================================================================= || || @@ -56259,6 +56259,9 @@ % Where am I? Who am I? Am I? I % +Where am I, and what am I doing in this handbasket? + -- Mark A. Matthews, to Wes Peters, circa 1996 +% Where are the calculations that go with a calculated risk? % WHERE CAN THE MATTER BE ==== //depot/projects/ethng/src/games/fortune/datfiles/fortunes-o.real#5 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.28 2007/12/09 01:00:11 dougb Exp $ +%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.29 2007/12/14 21:58:58 des Exp $ % PLAYGIRL, Inc. Philadelphia, Pa. 19369 @@ -755,7 +755,7 @@ "What is amiss, my friend?" asked the king. "My lord," gasped Lancelot, "you have given me the wrong key!" % - "Before we get married," said the young woman to her fiancee, + "Before we get married," said the young woman to her fiance, "I want to confess some affairs that I've had in the past." "But you told me all about those a few weeks ago," her young man replied. ==== //depot/projects/ethng/src/include/complex.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2001 The FreeBSD Project. + * Copyright (c) 2001-2007 The FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/complex.h,v 1.7 2007/12/12 23:43:51 das Exp $ + * $FreeBSD: src/include/complex.h,v 1.8 2007/12/15 08:38:44 das Exp $ */ #ifndef _COMPLEX_H @@ -57,6 +57,8 @@ double creal(double complex); float crealf(float complex); long double creall(long double complex); +double complex csqrt(double complex); +float complex csqrtf(float complex); __END_DECLS ==== //depot/projects/ethng/src/include/pthread_np.h#3 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread_np.h,v 1.17 2007/10/29 00:31:54 imp Exp $ + * $FreeBSD: src/include/pthread_np.h,v 1.18 2007/12/14 06:25:56 davidxu Exp $ */ #ifndef _PTHREAD_NP_H_ #define _PTHREAD_NP_H_ @@ -49,6 +49,10 @@ void pthread_resume_all_np(void); int pthread_resume_np(pthread_t); void pthread_set_name_np(pthread_t, const char *); +int pthread_mutex_getspinloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setspinloops_np(pthread_mutex_t *mutex, int count); +int pthread_mutex_getyieldloops_np(pthread_mutex_t *mutex, int *count); +int pthread_mutex_setyieldloops_np(pthread_mutex_t *mutex, int count); int pthread_single_np(void); void pthread_suspend_all_np(void); int pthread_suspend_np(pthread_t); ==== //depot/projects/ethng/src/lib/libc/Versions.def#2 (text) ==== @@ -1,9 +1,14 @@ -# $FreeBSD: src/lib/libc/Versions.def,v 1.3 2007/04/29 16:14:17 kan Exp $ +# $FreeBSD: src/lib/libc/Versions.def,v 1.4 2007/12/14 20:49:06 deischen Exp $ # This is our first version; it depends on no other. +# This version was first added to 7.0-current. FBSD_1.0 { }; +# This version was first added to 8.0-current. +FBSD_1.1 { +} FBSD_1.0; + # This is our private namespace. Any global interfaces that are # strictly for use only by other FreeBSD applications and libraries # are listed here. We use a separate namespace so we can write ==== //depot/projects/ethng/src/lib/libfetch/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.49 2007/05/24 20:28:14 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ .include @@ -28,7 +28,7 @@ SHLIB_MAJOR= 5 ftperr.h: ftp.errors - @echo "static struct fetcherr _ftp_errlist[] = {" > ${.TARGET} + @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} @cat ${.ALLSRC} \ | grep -v ^# \ | sort \ @@ -39,7 +39,7 @@ @echo "};" >> ${.TARGET} httperr.h: http.errors - @echo "static struct fetcherr _http_errlist[] = {" > ${.TARGET} + @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} @cat ${.ALLSRC} \ | grep -v ^# \ | sort \ ==== //depot/projects/ethng/src/lib/libfetch/common.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.50 2005/02/16 12:46:46 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.51 2007/12/14 10:26:58 des Exp $"); #include #include @@ -53,7 +53,7 @@ /* * Error messages for resolver errors */ -static struct fetcherr _netdb_errlist[] = { +static struct fetcherr netdb_errlist[] = { #ifdef EAI_NODATA { EAI_NODATA, FETCH_RESOLV, "Host not found" }, #endif @@ -73,7 +73,7 @@ * Map error code to string */ static struct fetcherr * -_fetch_finderr(struct fetcherr *p, int e) +fetch_finderr(struct fetcherr *p, int e) { while (p->num != -1 && p->num != e) p++; @@ -84,9 +84,9 @@ * Set error code */ void -_fetch_seterr(struct fetcherr *p, int e) +fetch_seterr(struct fetcherr *p, int e) { - p = _fetch_finderr(p, e); + p = fetch_finderr(p, e); fetchLastErrCode = p->cat; snprintf(fetchLastErrString, MAXERRSTRING, "%s", p->string); } @@ -95,7 +95,7 @@ * Set error code according to errno */ void -_fetch_syserr(void) +fetch_syserr(void) { switch (errno) { case 0: @@ -155,7 +155,7 @@ * Emit status message */ void -_fetch_info(const char *fmt, ...) +fetch_info(const char *fmt, ...) { va_list ap; @@ -172,7 +172,7 @@ * Return the default port for a scheme */ int -_fetch_default_port(const char *scheme) +fetch_default_port(const char *scheme) { struct servent *se; @@ -189,7 +189,7 @@ * Return the default proxy port for a scheme */ int -_fetch_default_proxy_port(const char *scheme) +fetch_default_proxy_port(const char *scheme) { if (strcasecmp(scheme, SCHEME_FTP) == 0) return (FTP_DEFAULT_PROXY_PORT); @@ -203,7 +203,7 @@ * Create a connection for an existing descriptor. */ conn_t * -_fetch_reopen(int sd) +fetch_reopen(int sd) { conn_t *conn; @@ -220,7 +220,7 @@ * Bump a connection's reference count. */ conn_t * -_fetch_ref(conn_t *conn) +fetch_ref(conn_t *conn) { ++conn->ref; @@ -232,7 +232,7 @@ * Bind a socket to a specific local address */ int -_fetch_bind(int sd, int af, const char *addr) +fetch_bind(int sd, int af, const char *addr) { struct addrinfo hints, *res, *res0; int err; @@ -254,7 +254,7 @@ * Establish a TCP connection to the specified port on the specified host. */ conn_t * -_fetch_connect(const char *host, int port, int af, int verbose) +fetch_connect(const char *host, int port, int af, int verbose) { conn_t *conn; char pbuf[10]; @@ -265,7 +265,7 @@ DEBUG(fprintf(stderr, "---> %s:%d\n", host, port)); if (verbose) - _fetch_info("looking up %s", host); + fetch_info("looking up %s", host); /* look up host name and set up socket address structure */ snprintf(pbuf, sizeof(pbuf), "%d", port); @@ -274,13 +274,13 @@ hints.ai_socktype = SOCK_STREAM; hints.ai_protocol = 0; if ((err = getaddrinfo(host, pbuf, &hints, &res0)) != 0) { - _netdb_seterr(err); + netdb_seterr(err); return (NULL); } bindaddr = getenv("FETCH_BIND_ADDRESS"); if (verbose) - _fetch_info("connecting to %s:%d", host, port); + fetch_info("connecting to %s:%d", host, port); /* try to connect */ for (sd = -1, res = res0; res; sd = -1, res = res->ai_next) { @@ -288,8 +288,8 @@ res->ai_protocol)) == -1) continue; if (bindaddr != NULL && *bindaddr != '\0' && - _fetch_bind(sd, res->ai_family, bindaddr) != 0) { - _fetch_info("failed to bind to '%s'", bindaddr); + fetch_bind(sd, res->ai_family, bindaddr) != 0) { + fetch_info("failed to bind to '%s'", bindaddr); close(sd); continue; } @@ -299,12 +299,12 @@ } freeaddrinfo(res0); if (sd == -1) { - _fetch_syserr(); + fetch_syserr(); return (NULL); } - if ((conn = _fetch_reopen(sd)) == NULL) { - _fetch_syserr(); + if ((conn = fetch_reopen(sd)) == NULL) { + fetch_syserr(); close(sd); } return (conn); @@ -315,7 +315,7 @@ * Enable SSL on a connection. */ int -_fetch_ssl(conn_t *conn, int verbose) +fetch_ssl(conn_t *conn, int verbose) { #ifdef WITH_SSL @@ -373,7 +373,7 @@ * Read a character from a connection w/ timeout */ ssize_t -_fetch_read(conn_t *conn, char *buf, size_t len) +fetch_read(conn_t *conn, char *buf, size_t len) { struct timeval now, timeout, wait; fd_set readfds; @@ -399,7 +399,7 @@ } if (wait.tv_sec < 0) { errno = ETIMEDOUT; - _fetch_syserr(); + fetch_syserr(); return (-1); } errno = 0; @@ -407,7 +407,7 @@ if (r == -1) { if (errno == EINTR && fetchRestartCalls) continue; - _fetch_syserr(); + fetch_syserr(); return (-1); } } @@ -438,7 +438,7 @@ #define MIN_BUF_SIZE 1024 int -_fetch_getln(conn_t *conn) +fetch_getln(conn_t *conn) { char *tmp; size_t tmpsize; @@ -457,7 +457,7 @@ conn->buflen = 0; do { - len = _fetch_read(conn, &c, 1); + len = fetch_read(conn, &c, 1); if (len == -1) return (-1); if (len == 0) @@ -485,13 +485,13 @@ * Write to a connection w/ timeout */ ssize_t -_fetch_write(conn_t *conn, const char *buf, size_t len) +fetch_write(conn_t *conn, const char *buf, size_t len) { struct iovec iov; iov.iov_base = __DECONST(char *, buf); iov.iov_len = len; - return _fetch_writev(conn, &iov, 1); + return fetch_writev(conn, &iov, 1); } /* @@ -499,7 +499,7 @@ * Note: can modify the iovec. */ ssize_t -_fetch_writev(conn_t *conn, struct iovec *iov, int iovcnt) +fetch_writev(conn_t *conn, struct iovec *iov, int iovcnt) { struct timeval now, timeout, wait; fd_set writefds; @@ -525,7 +525,7 @@ } if (wait.tv_sec < 0) { errno = ETIMEDOUT; - _fetch_syserr(); + fetch_syserr(); return (-1); } errno = 0; @@ -547,7 +547,7 @@ if (wlen == 0) { /* we consider a short write a failure */ errno = EPIPE; - _fetch_syserr(); + fetch_syserr(); return (-1); } if (wlen < 0) { @@ -574,7 +574,7 @@ * Write a line of text to a connection w/ timeout */ int -_fetch_putln(conn_t *conn, const char *str, size_t len) +fetch_putln(conn_t *conn, const char *str, size_t len) { struct iovec iov[2]; int ret; @@ -585,9 +585,9 @@ iov[1].iov_base = __DECONST(char *, ENDL); iov[1].iov_len = sizeof(ENDL); if (len == 0) - ret = _fetch_writev(conn, &iov[1], 1); + ret = fetch_writev(conn, &iov[1], 1); else - ret = _fetch_writev(conn, iov, 2); + ret = fetch_writev(conn, iov, 2); if (ret == -1) return (-1); return (0); @@ -598,7 +598,7 @@ * Close connection */ int -_fetch_close(conn_t *conn) +fetch_close(conn_t *conn) { int ret; @@ -614,7 +614,7 @@ /*** Directory-related utility functions *************************************/ int -_fetch_add_entry(struct url_ent **p, int *size, int *len, +fetch_add_entry(struct url_ent **p, int *size, int *len, const char *name, struct url_stat *us) { struct url_ent *tmp; @@ -628,7 +628,7 @@ tmp = realloc(*p, (*size * 2 + 1) * sizeof(**p)); if (tmp == NULL) { errno = ENOMEM; - _fetch_syserr(); + fetch_syserr(); return (-1); } *size = (*size * 2 + 1); @@ -649,7 +649,7 @@ /*** Authentication-related utility functions ********************************/ static const char * -_fetch_read_word(FILE *f) +fetch_read_word(FILE *f) { static char word[1024]; @@ -662,7 +662,7 @@ * Get authentication data for a URL from .netrc */ int -_fetch_netrc_auth(struct url *url) +fetch_netrc_auth(struct url *url) { char fn[PATH_MAX]; const char *word; @@ -671,7 +671,7 @@ if ((p = getenv("NETRC")) != NULL) { if (snprintf(fn, sizeof(fn), "%s", p) >= (int)sizeof(fn)) { - _fetch_info("$NETRC specifies a file name " + fetch_info("$NETRC specifies a file name " "longer than PATH_MAX"); return (-1); } @@ -689,39 +689,39 @@ if ((f = fopen(fn, "r")) == NULL) return (-1); - while ((word = _fetch_read_word(f)) != NULL) { + while ((word = fetch_read_word(f)) != NULL) { if (strcmp(word, "default") == 0) { - DEBUG(_fetch_info("Using default .netrc settings")); + DEBUG(fetch_info("Using default .netrc settings")); break; } if (strcmp(word, "machine") == 0 && - (word = _fetch_read_word(f)) != NULL && + (word = fetch_read_word(f)) != NULL && strcasecmp(word, url->host) == 0) { - DEBUG(_fetch_info("Using .netrc settings for %s", word)); + DEBUG(fetch_info("Using .netrc settings for %s", word)); break; } } if (word == NULL) goto ferr; - while ((word = _fetch_read_word(f)) != NULL) { + while ((word = fetch_read_word(f)) != NULL) { if (strcmp(word, "login") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; if (snprintf(url->user, sizeof(url->user), "%s", word) > (int)sizeof(url->user)) { - _fetch_info("login name in .netrc is too long"); + fetch_info("login name in .netrc is too long"); url->user[0] = '\0'; } } else if (strcmp(word, "password") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; if (snprintf(url->pwd, sizeof(url->pwd), "%s", word) > (int)sizeof(url->pwd)) { - _fetch_info("password in .netrc is too long"); + fetch_info("password in .netrc is too long"); url->pwd[0] = '\0'; } } else if (strcmp(word, "account") == 0) { - if ((word = _fetch_read_word(f)) == NULL) + if ((word = fetch_read_word(f)) == NULL) goto ferr; /* XXX not supported! */ } else { ==== //depot/projects/ethng/src/lib/libfetch/common.h#2 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE 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/libfetch/common.h,v 1.28 2004/09/21 18:35:20 des Exp $ + * $FreeBSD: src/lib/libfetch/common.h,v 1.29 2007/12/14 10:26:58 des Exp $ */ #ifndef _COMMON_H_INCLUDED @@ -68,33 +68,33 @@ const char *string; }; -/* for _fetch_writev */ +/* for fetch_writev */ struct iovec; -void _fetch_seterr(struct fetcherr *, int); -void _fetch_syserr(void); -void _fetch_info(const char *, ...); -int _fetch_default_port(const char *); -int _fetch_default_proxy_port(const char *); -int _fetch_bind(int, int, const char *); -conn_t *_fetch_connect(const char *, int, int, int); -conn_t *_fetch_reopen(int); -conn_t *_fetch_ref(conn_t *); -int _fetch_ssl(conn_t *, int); -ssize_t _fetch_read(conn_t *, char *, size_t); -int _fetch_getln(conn_t *); -ssize_t _fetch_write(conn_t *, const char *, size_t); -ssize_t _fetch_writev(conn_t *, struct iovec *, int); -int _fetch_putln(conn_t *, const char *, size_t); -int _fetch_close(conn_t *); -int _fetch_add_entry(struct url_ent **, int *, int *, +void fetch_seterr(struct fetcherr *, int); +void fetch_syserr(void); +void fetch_info(const char *, ...); +int fetch_default_port(const char *); +int fetch_default_proxy_port(const char *); +int fetch_bind(int, int, const char *); +conn_t *fetch_connect(const char *, int, int, int); +conn_t *fetch_reopen(int); +conn_t *fetch_ref(conn_t *); +int fetch_ssl(conn_t *, int); +ssize_t fetch_read(conn_t *, char *, size_t); +int fetch_getln(conn_t *); +ssize_t fetch_write(conn_t *, const char *, size_t); +ssize_t fetch_writev(conn_t *, struct iovec *, int); +int fetch_putln(conn_t *, const char *, size_t); +int fetch_close(conn_t *); +int fetch_add_entry(struct url_ent **, int *, int *, const char *, struct url_stat *); -int _fetch_netrc_auth(struct url *url); +int fetch_netrc_auth(struct url *url); -#define _ftp_seterr(n) _fetch_seterr(_ftp_errlist, n) -#define _http_seterr(n) _fetch_seterr(_http_errlist, n) -#define _netdb_seterr(n) _fetch_seterr(_netdb_errlist, n) -#define _url_seterr(n) _fetch_seterr(_url_errlist, n) +#define ftp_seterr(n) fetch_seterr(ftp_errlist, n) +#define http_seterr(n) fetch_seterr(http_errlist, n) +#define netdb_seterr(n) fetch_seterr(netdb_errlist, n) +#define url_seterr(n) fetch_seterr(url_errlist, n) #ifndef NDEBUG #define DEBUG(x) do { if (fetchDebug) { x; } } while (0) @@ -103,7 +103,7 @@ #endif /* - * I don't really like exporting _http_request() and _ftp_request(), + * I don't really like exporting http_request() and ftp_request(), * but the HTTP and FTP code occasionally needs to cross-call * eachother, and this saves me from adding a lot of special-case code * to handle those cases. @@ -111,9 +111,9 @@ * Note that _*_request() free purl, which is way ugly but saves us a * whole lot of trouble. */ -FILE *_http_request(struct url *, const char *, +FILE *http_request(struct url *, const char *, struct url_stat *, struct url *, const char *); -FILE *_ftp_request(struct url *, const char *, +FILE *ftp_request(struct url *, const char *, struct url_stat *, struct url *, const char *); /* ==== //depot/projects/ethng/src/lib/libfetch/fetch.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.38 2004/09/21 18:35:20 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.39 2007/12/14 10:26:58 des Exp $"); #include #include @@ -56,7 +56,7 @@ #define URL_MALFORMED 1 #define URL_BAD_SCHEME 2 #define URL_BAD_PORT 3 -static struct fetcherr _url_errlist[] = { +static struct fetcherr url_errlist[] = { { URL_MALFORMED, FETCH_URL, "Malformed URL" }, { URL_BAD_SCHEME, FETCH_URL, "Invalid URL scheme" }, { URL_BAD_PORT, FETCH_URL, "Invalid server port" }, @@ -89,7 +89,7 @@ return (fetchXGetHTTP(URL, us, flags)); else if (strcasecmp(URL->scheme, SCHEME_HTTPS) == 0) return (fetchXGetHTTP(URL, us, flags)); - _url_seterr(URL_BAD_SCHEME); + url_seterr(URL_BAD_SCHEME); return (NULL); } @@ -121,7 +121,7 @@ return (fetchPutHTTP(URL, flags)); else if (strcasecmp(URL->scheme, SCHEME_HTTPS) == 0) return (fetchPutHTTP(URL, flags)); - _url_seterr(URL_BAD_SCHEME); + url_seterr(URL_BAD_SCHEME); return (NULL); } @@ -147,7 +147,7 @@ return (fetchStatHTTP(URL, us, flags)); else if (strcasecmp(URL->scheme, SCHEME_HTTPS) == 0) return (fetchStatHTTP(URL, us, flags)); - _url_seterr(URL_BAD_SCHEME); + url_seterr(URL_BAD_SCHEME); return (-1); } @@ -169,7 +169,7 @@ return (fetchListHTTP(URL, flags)); else if (strcasecmp(URL->scheme, SCHEME_HTTPS) == 0) return (fetchListHTTP(URL, flags)); - _url_seterr(URL_BAD_SCHEME); + url_seterr(URL_BAD_SCHEME); return (NULL); } @@ -264,23 +264,23 @@ struct url *u; if (!scheme || (!host && !doc)) { - _url_seterr(URL_MALFORMED); + url_seterr(URL_MALFORMED); return (NULL); } if (port < 0 || port > 65535) { - _url_seterr(URL_BAD_PORT); + url_seterr(URL_BAD_PORT); return (NULL); } /* allocate struct url */ if ((u = calloc(1, sizeof(*u))) == NULL) { - _fetch_syserr(); + fetch_syserr(); return (NULL); } if ((u->doc = strdup(doc ? doc : "/")) == NULL) { - _fetch_syserr(); + fetch_syserr(); free(u); return (NULL); } @@ -311,7 +311,7 @@ /* allocate struct url */ if ((u = calloc(1, sizeof(*u))) == NULL) { - _fetch_syserr(); + fetch_syserr(); return (NULL); } @@ -373,7 +373,7 @@ u->port = u->port * 10 + (*q - '0'); else { /* invalid port */ - _url_seterr(URL_BAD_PORT); + url_seterr(URL_BAD_PORT); goto ouch; } p = q; @@ -390,7 +390,7 @@ /* percent-escape whitespace. */ if ((doc = malloc(strlen(p) * 3 + 1)) == NULL) { - _fetch_syserr(); + fetch_syserr(); goto ouch; } u->doc = doc; @@ -406,7 +406,7 @@ } *doc = '\0'; } else if ((u->doc = strdup(p)) == NULL) { - _fetch_syserr(); + fetch_syserr(); goto ouch; } ==== //depot/projects/ethng/src/lib/libfetch/file.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/file.c,v 1.17 2004/09/21 18:35:20 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/file.c,v 1.18 2007/12/14 10:26:58 des Exp $"); #include #include @@ -50,11 +50,11 @@ f = fopen(u->doc, "r"); if (f == NULL) - _fetch_syserr(); + fetch_syserr(); if (u->offset && fseeko(f, u->offset, SEEK_SET) == -1) { fclose(f); - _fetch_syserr(); + fetch_syserr(); } return (f); @@ -77,25 +77,25 @@ f = fopen(u->doc, "w+"); if (f == NULL) - _fetch_syserr(); + fetch_syserr(); if (u->offset && fseeko(f, u->offset, SEEK_SET) == -1) { fclose(f); - _fetch_syserr(); + fetch_syserr(); } return (f); } static int -_fetch_stat_file(const char *fn, struct url_stat *us) +fetch_stat_file(const char *fn, struct url_stat *us) { struct stat sb; us->size = -1; us->atime = us->mtime = 0; if (stat(fn, &sb) == -1) { - _fetch_syserr(); + fetch_syserr(); return (-1); } us->size = sb.st_size; @@ -107,7 +107,7 @@ int fetchStatFile(struct url *u, struct url_stat *us, const char *flags __unused) { - return (_fetch_stat_file(u->doc, us)); + return (fetch_stat_file(u->doc, us)); } struct url_ent * @@ -122,7 +122,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 23:30:20 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A68716A41A; Wed, 19 Dec 2007 23:30:20 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0B81D16A418 for ; Wed, 19 Dec 2007 23:30:20 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0546513C442 for ; Wed, 19 Dec 2007 23:30:20 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJNUJ2i075433 for ; Wed, 19 Dec 2007 23:30:19 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJNUJsj075429 for perforce@freebsd.org; Wed, 19 Dec 2007 23:30:19 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 23:30:19 GMT Message-Id: <200712192330.lBJNUJsj075429@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131271 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 23:30:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131271 Change 131271 by jb@jb_freebsd1 on 2007/12/19 23:29:36 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/committers-guide/article.sgml#15 integrate .. //depot/projects/dtrace/ports/LEGAL#29 integrate .. //depot/projects/dtrace/ports/Tools/scripts/addport#6 integrate .. //depot/projects/dtrace/src/lib/libc/stdtime/localtime.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/sys/select.2#5 integrate .. //depot/projects/dtrace/src/lib/libfetch/Makefile#7 integrate .. //depot/projects/dtrace/src/share/man/man4/syncache.4#5 integrate .. //depot/projects/dtrace/src/share/man/man9/BUS_SETUP_INTR.9#6 integrate .. //depot/projects/dtrace/src/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/dtrace/src/share/misc/bsd-family-tree#13 integrate .. //depot/projects/dtrace/src/sys/arm/at91/at91.c#11 integrate .. //depot/projects/dtrace/src/sys/boot/forth/support.4th#5 integrate .. //depot/projects/dtrace/src/sys/conf/files.powerpc#15 integrate .. //depot/projects/dtrace/src/sys/dev/aac/aac.c#9 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi.c#12 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi_pci.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/powermac_nvram/powermac_nvram.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/uart/uart_cpu_powerpc.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/subr_bus.c#11 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_syncache.c#17 integrate .. //depot/projects/dtrace/src/sys/powerpc/aim/ofw_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/NOTES#11 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/_bus.h#4 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/bus.h#5 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/grackle.c#6 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/macio.c#5 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/uninorth.c#7 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/powerpc/psim/iobus.c#5 integrate .. //depot/projects/dtrace/src/sys/vm/vm_page.c#27 integrate .. //depot/projects/dtrace/src/sys/vm/vm_phys.c#2 integrate .. //depot/projects/dtrace/src/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/dtrace/src/usr.bin/ministat/Makefile#1 branch .. //depot/projects/dtrace/src/usr.bin/ministat/README#1 branch .. //depot/projects/dtrace/src/usr.bin/ministat/chameleon#1 branch .. //depot/projects/dtrace/src/usr.bin/ministat/iguana#1 branch .. //depot/projects/dtrace/src/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/boot98cfg/boot98cfg.c#4 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/committers-guide/article.sgml#15 (text+ko) ==== @@ -13,7 +13,7 @@ - $FreeBSD: doc/en_US.ISO8859-1/articles/committers-guide/article.sgml,v 1.269 2007/10/15 13:27:28 marck Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/committers-guide/article.sgml,v 1.270 2007/12/19 19:25:51 pav Exp $ 1999 @@ -2472,8 +2472,8 @@ It will also add an entry to the CVSROOT/modules file and the port's category Makefile. It was - written by &a.mharo; and &a.will;, but Will is the current - maintainer so please send questions/patches about + written by &a.mharo; and &a.will;, and is currently maintained + by &a.garga;, so please send questions/patches about addport to him. ==== //depot/projects/dtrace/ports/LEGAL#29 (text+ko) ==== @@ -1,5 +1,5 @@ # Creator: Jordan Hubbard -# $FreeBSD: ports/LEGAL,v 1.560 2007/12/14 23:08:17 pav Exp $ +# $FreeBSD: ports/LEGAL,v 1.561 2007/12/19 17:20:32 pav Exp $ ********************************************************************** *** NOTE TO COMMITTERS *** @@ -96,6 +96,7 @@ citrix_ica-* german/citrix_ica License prohibits redistribution citrix_ica-* japanese/citrix_ica License prohibits redistribution citrix_ica-* net/citrix_ica License prohibits redistribution +cli_freebsd* sysutils/arcconf May not be redistributed cfs-* security/cfs Crypto; export-controlled code2000-*/CODE2000.ZIP x11-fonts/code2000 Only unmodified original package can be distributed ==== //depot/projects/dtrace/ports/Tools/scripts/addport#6 (text+ko) ==== @@ -32,7 +32,7 @@ # # Id: addport,v 1.2 2000/04/02 06:21:13 will Exp (original shell script) # Id: addport,v 1.5 2000/04/22 22:19:43 mharo Exp (perl conversion) -# $FreeBSD: ports/Tools/scripts/addport,v 1.51 2007/04/20 12:45:01 garga Exp $ +# $FreeBSD: ports/Tools/scripts/addport,v 1.52 2007/12/19 16:54:37 garga Exp $ # # MAINTAINER= garga@FreeBSD.org # @@ -341,7 +341,7 @@ } # figure out where the port name belongs in category Makefile - my @ports = &lsports; + my ($spaces, @ports) = &lsports; errx(1, "Error: $portname already exists in $category\'s Makefile") if (&contains($portname, @ports)); my $port = ""; foreach my $tmp (sort(@ports)) { @@ -364,16 +364,16 @@ # there were previous SUBDIR lines, but none was greater than we are, # means, we're the last port, so, add ourselves after the last port $port = $ports[$#ports]; - $cmd = "/^ SUBDIR += $port/\na\n"; + $cmd = "/^" . $spaces . "SUBDIR += $port/\na\n"; } else { # OK, append ourselves in the right place, so things *stay* sorted. - $cmd = "/^ SUBDIR += $port/\ni\n"; + $cmd = "/^" . $spaces . "SUBDIR += $port/\ni\n"; } } print "Inserting new port into $category/Makefile...\n"; open(ED, "|ed Makefile") || die "Cannot start ed to actually insert module\n"; - print ED "$cmd SUBDIR += $portname\n.\nw\nq\n"; - close(ED); + print ED "$cmd" . $spaces . "SUBDIR += $portname\n.\nw\nq\n"; + close(ED); # commit the actual port. chdir "$tmpdir/$category" or err(1, "$tmpdir/$category"); @@ -499,18 +499,25 @@ sub lsports() { my @rv = (); + my $spaces; open(F, "Makefile") || die "can't open Makefile: $!"; while() { chomp; chomp; next if $_ !~ m/SUBDIR/; + + if ( !defined($spaces) ) { + m/^([\s\t]+)[^\s\t]/; + $spaces = $1; + } + s/^[ \t]+SUBDIR[ \t]+\+?=[\ \t]+//; push(@rv, $_); } close(F); - return @rv; + return ($spaces, @rv); } # this finds the last comment in the Makefile ==== //depot/projects/dtrace/src/lib/libc/stdtime/localtime.c#5 (text+ko) ==== @@ -9,7 +9,7 @@ static char elsieid[] __unused = "@(#)localtime.c 7.78"; #endif /* !defined NOID */ #endif /* !defined lint */ -__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.41 2007/01/19 01:16:35 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.42 2007/12/19 04:30:10 imp Exp $"); /* ** Leap second handling from Bradley White (bww@k.gp.cs.cmu.edu). @@ -1093,14 +1093,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&localtime_mutex); if (localtime_key < 0) { - if (_pthread_key_create(&localtime_key, free) < 0) { - _pthread_mutex_unlock(&localtime_mutex); - return(NULL); + _pthread_mutex_lock(&localtime_mutex); + if (localtime_key < 0) { + if (_pthread_key_create(&localtime_key, free) < 0) { + _pthread_mutex_unlock(&localtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&localtime_mutex); } - _pthread_mutex_unlock(&localtime_mutex); p_tm = _pthread_getspecific(localtime_key); if (p_tm == NULL) { if ((p_tm = (struct tm *)malloc(sizeof(struct tm))) @@ -1146,16 +1148,18 @@ const long offset; struct tm * const tmp; { - _MUTEX_LOCK(&gmt_mutex); if (!gmt_is_set) { - gmt_is_set = TRUE; + _MUTEX_LOCK(&gmt_mutex); + if (!gmt_is_set) { #ifdef ALL_STATE - gmtptr = (struct state *) malloc(sizeof *gmtptr); - if (gmtptr != NULL) + gmtptr = (struct state *) malloc(sizeof *gmtptr); + if (gmtptr != NULL) #endif /* defined ALL_STATE */ - gmtload(gmtptr); + gmtload(gmtptr); + gmt_is_set = TRUE; + } + _MUTEX_UNLOCK(&gmt_mutex); } - _MUTEX_UNLOCK(&gmt_mutex); timesub(timep, offset, gmtptr, tmp); #ifdef TM_ZONE /* @@ -1187,14 +1191,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&gmtime_mutex); if (gmtime_key < 0) { - if (_pthread_key_create(&gmtime_key, free) < 0) { - _pthread_mutex_unlock(&gmtime_mutex); - return(NULL); + _pthread_mutex_lock(&gmtime_mutex); + if (gmtime_key < 0) { + if (_pthread_key_create(&gmtime_key, free) < 0) { + _pthread_mutex_unlock(&gmtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&gmtime_mutex); } - _pthread_mutex_unlock(&gmtime_mutex); /* * Changed to follow POSIX.1 threads standard, which * is what BSD currently has. ==== //depot/projects/dtrace/src/lib/libc/sys/select.2#5 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 -.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.33 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.34 2007/12/19 03:33:13 imp Exp $ .\" .Dd November 17, 2002 .Dt SELECT 2 @@ -222,3 +222,6 @@ by the .Fn select system call. +.Fx +does not modify the return value, which can cause problems for applications +ported from other systems. ==== //depot/projects/dtrace/src/lib/libfetch/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.51 2007/12/19 05:10:07 ru Exp $ .include @@ -27,9 +27,9 @@ SHLIB_MAJOR= 5 -ftperr.h: ftp.errors +ftperr.h: ftp.errors ${.CURDIR}/Makefile @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/ftp.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ @@ -38,9 +38,9 @@ @echo " { -1, FETCH_UNKNOWN, \"Unknown FTP error\" }" >> ${.TARGET} @echo "};" >> ${.TARGET} -httperr.h: http.errors +httperr.h: http.errors ${.CURDIR}/Makefile @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/http.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ ==== //depot/projects/dtrace/src/share/man/man4/syncache.4#5 (text+ko) ==== @@ -10,9 +10,9 @@ .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" -.\" $FreeBSD: src/share/man/man4/syncache.4,v 1.3 2006/04/11 15:30:13 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/syncache.4,v 1.4 2007/12/19 16:58:54 ru Exp $ .\" -.Dd August 31, 2001 +.Dd December 18, 2007 .Dt SYNCACHE 4 .Os .Sh NAME @@ -132,7 +132,7 @@ .Xr loader 8 . .It Va rexmtlimit Maximum number of times a SYN,ACK is retransmitted before being discarded. -The default of 3 retransmits corresponds to a 15 second timeout, this value +The default of 3 retransmits corresponds to a 45 second timeout, this value may be increased depending on the RTT to client machines. Tunable via .Xr sysctl 3 . ==== //depot/projects/dtrace/src/share/man/man9/BUS_SETUP_INTR.9#6 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.21 2007/12/19 01:26:34 imp Exp $ +.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.22 2007/12/19 08:01:24 brueffer Exp $ .\" .Dd December 18, 2007 .Dt BUS_SETUP_INTR 9 @@ -206,7 +206,7 @@ .Xr device 9 , .Xr driver 9 , .Xr mtx_init 9 , -.Xr wakeup +.Xr wakeup 9 .Sh AUTHORS .An -nosplit This manual page was written by ==== //depot/projects/dtrace/src/share/man/man9/sf_buf.9#2 (text+ko) ==== @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH .\" DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/sf_buf.9,v 1.2 2007/01/31 09:40:31 rwatson Exp $ +.\" $FreeBSD: src/share/man/man9/sf_buf.9,v 1.3 2007/12/19 20:34:09 rwatson Exp $ .\" .Dd January 28, 2007 .Dt SF_BUF 9 @@ -133,6 +133,7 @@ .Xr sendfile 2 , .Xr vm_page_wire 9 .Sh AUTHORS +.An -nosplit The .Vt "struct sf_buf" API was designed and implemented by ==== //depot/projects/dtrace/src/share/misc/bsd-family-tree#13 (text+ko) ==== @@ -213,6 +213,7 @@ | | | | OpenBSD 4.1 | | | | | | DragonFly 1.10.0 | | | | OpenBSD 4.2 | + | | | NetBSD 4.0 | | | V | | | | FreeBSD 7 -current | NetBSD -current OpenBSD -current | | | | | | @@ -470,6 +471,7 @@ OpenBSD 4.1 2007-05-01 [OBD] DragonFly 1.10.0 2007-08-06 [DFB] OpenBSD 4.2 2007-11-01 [OBD] +NetBSD 4.0 2007-12-19 [NBD] Bibliography ------------------------ @@ -530,4 +532,4 @@ Copyright (c) 1997-2007 Wolfram Schneider URL: http://cvsweb.freebsd.org/src/share/misc/bsd-family-tree -$FreeBSD: src/share/misc/bsd-family-tree,v 1.116 2007/11/02 19:25:06 maxim Exp $ +$FreeBSD: src/share/misc/bsd-family-tree,v 1.117 2007/12/19 18:19:53 maxim Exp $ ==== //depot/projects/dtrace/src/sys/arm/at91/at91.c#11 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.14 2007/12/17 05:08:54 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.15 2007/12/19 17:34:17 imp Exp $"); #include #include @@ -396,6 +396,48 @@ #define NORMDEV 50 +/* + * Standard priority levels for the system. 0 is lowest and 7 is highest. + * These values are the ones Atmel uses for its Linux port, which differ + * a little form the ones that are in the standard distribution. Also, + * the ones marked with 'TWEEK' are different based on experience. + */ +static int irq_prio[32] = +{ + 7, /* Advanced Interrupt Controller (FIQ) */ + 7, /* System Peripherals */ + 1, /* Parallel IO Controller A */ + 1, /* Parallel IO Controller B */ + 1, /* Parallel IO Controller C */ + 1, /* Parallel IO Controller D */ + 5, /* USART 0 */ + 5, /* USART 1 */ + 5, /* USART 2 */ + 5, /* USART 3 */ + 0, /* Multimedia Card Interface */ + 2, /* USB Device Port */ + 4, /* Two-Wire Interface */ /* TWEEK */ + 5, /* Serial Peripheral Interface */ + 4, /* Serial Synchronous Controller 0 */ + 6, /* Serial Synchronous Controller 1 */ /* TWEEK */ + 4, /* Serial Synchronous Controller 2 */ + 0, /* Timer Counter 0 */ + 6, /* Timer Counter 1 */ /* TWEEK */ + 0, /* Timer Counter 2 */ + 0, /* Timer Counter 3 */ + 0, /* Timer Counter 4 */ + 0, /* Timer Counter 5 */ + 2, /* USB Host port */ + 3, /* Ethernet MAC */ + 0, /* Advanced Interrupt Controller (IRQ0) */ + 0, /* Advanced Interrupt Controller (IRQ1) */ + 0, /* Advanced Interrupt Controller (IRQ2) */ + 0, /* Advanced Interrupt Controller (IRQ3) */ + 0, /* Advanced Interrupt Controller (IRQ4) */ + 0, /* Advanced Interrupt Controller (IRQ5) */ + 0 /* Advanced Interrupt Controller (IRQ6) */ +}; + static int at91_attach(device_t dev) { @@ -432,13 +474,11 @@ bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SVR + i * 4, i); /* Priority. */ - /* XXX: Give better priorities to IRQs */ bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SMR + i * 4, - 0); + irq_prio[i]); if (i < 8) bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_EOICR, 1); - } bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SPU, 32); /* No debug. */ ==== //depot/projects/dtrace/src/sys/boot/forth/support.4th#5 (text+ko) ==== @@ -22,7 +22,7 @@ \ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF \ SUCH DAMAGE. \ -\ $FreeBSD: src/sys/boot/forth/support.4th,v 1.16 2006/10/13 20:48:17 ru Exp $ +\ $FreeBSD: src/sys/boot/forth/support.4th,v 1.17 2007/12/19 17:06:32 ambrisko Exp $ \ Loader.rc support functions: \ @@ -463,8 +463,10 @@ : digit? line_pointer c@ >r + r@ [char] - = r@ [char] 0 >= r> [char] 9 <= and + or ; : quote? ==== //depot/projects/dtrace/src/sys/conf/files.powerpc#15 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.powerpc,v 1.70 2007/12/16 01:02:47 marcel Exp $ +# $FreeBSD: src/sys/conf/files.powerpc,v 1.71 2007/12/19 18:00:48 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -85,6 +85,7 @@ powerpc/powerpc/atomic.S standard powerpc/powerpc/autoconf.c standard powerpc/powerpc/bcopy.c standard +powerpc/powerpc/bus_machdep.c standard powerpc/powerpc/busdma_machdep.c standard powerpc/powerpc/copystr.c standard powerpc/powerpc/cpu.c standard ==== //depot/projects/dtrace/src/sys/dev/aac/aac.c#9 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.125 2007/12/07 18:05:41 emaste Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.126 2007/12/19 14:33:40 emaste Exp $"); /* * Driver for the Adaptec 'FSA' family of PCI/SCSI RAID adapters. @@ -2980,15 +2980,13 @@ switch (event->ev_type) { case AAC_EVENT_CMFREE: - mtx_lock(&sc->aac_io_lock); + mtx_assert(&sc->aac_io_lock, MA_OWNED); if (aac_alloc_command(sc, (struct aac_command **)arg)) { aac_add_event(sc, event); - mtx_unlock(&sc->aac_io_lock); return; } free(event, M_AACBUF); wakeup(arg); - mtx_unlock(&sc->aac_io_lock); break; default: break; ==== //depot/projects/dtrace/src/sys/dev/mfi/mfi.c#12 (text) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.33 2007/08/25 23:58:44 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.34 2007/12/19 17:22:07 ambrisko Exp $"); #include "opt_mfi.h" @@ -774,16 +774,12 @@ free(log_state, M_MFIBUF); return (error); } - /* - * Don't run them yet since we can't parse them. - * We can indirectly get the contents from - * the AEN mechanism via setting it lower then - * current. The firmware will iterate through them. - */ + /* The message log is a circular buffer */ for (seq = log_state->shutdown_seq_num; - seq <= log_state->newest_seq_num; seq++) { + seq != log_state->newest_seq_num; seq++) { mfi_get_entry(sc, seq); } + mfi_get_entry(sc, seq); } else seq = seq_start; mfi_aen_register(sc, seq, class_locale.word); ==== //depot/projects/dtrace/src/sys/dev/mfi/mfi_pci.c#7 (text) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.9 2007/08/25 23:58:45 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.10 2007/12/19 17:23:47 ambrisko Exp $"); /* PCI/PCI-X/PCIe bus interface for the LSI MegaSAS controllers */ @@ -117,6 +117,7 @@ {0x1000, 0x0411, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Brocton IOP */ {0x1000, 0x0413, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Verde ZCR */ {0x1028, 0x0015, 0xffff, 0xffff, MFI_FLAGS_1064R, "Dell PERC 5/i"}, + {0x1000, 0x0060, 0x1028, 0xffff, MFI_FLAGS_1078, "Dell PERC 6"}, {0x1000, 0x0060, 0xffff, 0xffff, MFI_FLAGS_1078, "LSI MegaSAS 1078"}, {0, 0, 0, 0, 0, NULL} }; ==== //depot/projects/dtrace/src/sys/dev/powermac_nvram/powermac_nvram.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.1 2006/08/01 22:19:00 sobomax Exp $ + * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.2 2007/12/19 18:00:48 marcel Exp $ */ #include @@ -40,6 +40,7 @@ #include #include #include +#include #include #include ==== //depot/projects/dtrace/src/sys/dev/uart/uart_cpu_powerpc.c#5 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_powerpc.c,v 1.3 2007/04/02 22:00:22 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_powerpc.c,v 1.4 2007/12/19 18:00:49 marcel Exp $"); #include #include @@ -38,8 +38,8 @@ #include #include -bus_space_tag_t uart_bus_space_io = PPC_BUS_SPACE_IO; -bus_space_tag_t uart_bus_space_mem = PPC_BUS_SPACE_MEM; +bus_space_tag_t uart_bus_space_io = &bs_le_tag; +bus_space_tag_t uart_bus_space_mem = &bs_le_tag; int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2) ==== //depot/projects/dtrace/src/sys/kern/subr_bus.c#11 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.202 2007/11/30 21:30:14 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.203 2007/12/19 22:05:07 imp Exp $"); #include "opt_bus.h" @@ -1220,13 +1220,16 @@ * @brief Get the maximum unit number used in a devclass * * Note that this is one greater than the highest currently-allocated - * unit. + * unit. If a null devclass_t is passed in, -1 is returned to indicate + * that not even the devclass has been allocated yet. * * @param dc the devclass to examine */ int devclass_get_maxunit(devclass_t dc) { + if (dc == NULL) + return (-1); return (dc->maxunit); } ==== //depot/projects/dtrace/src/sys/netgraph/ng_car.c#2 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netgraph/ng_car.c,v 1.4 2007/06/13 11:01:17 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_car.c,v 1.5 2007/12/19 22:50:14 mav Exp $ */ /* @@ -263,6 +263,7 @@ hook_p dest = hinfo->dest; struct mbuf *m = NULL; int error = 0; + int len; /* Node is useless without destination hook. */ if (dest == NULL) { @@ -298,11 +299,18 @@ } \ } while (0) + /* Packet is counted as 128 tokens for better resolution */ + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + len = 128; + } else { + len = m->m_pkthdr.len; + } + /* Check commited token bucket. */ - if (hinfo->tc - m->m_pkthdr.len >= 0) { + if (hinfo->tc - len >= 0) { /* This packet is green. */ ++hinfo->stats.green_pkts; - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.green_action); } else { @@ -310,10 +318,10 @@ ng_car_refillhook(hinfo); /* Check commited token bucket again after refill. */ - if (hinfo->tc - m->m_pkthdr.len >= 0) { + if (hinfo->tc - len >= 0) { /* This packet is green */ ++hinfo->stats.green_pkts; - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.green_action); /* If not green and mode is SHAPE, enqueue packet. */ @@ -324,8 +332,7 @@ /* If not green and mode is RED, calculate probability. */ } else if (hinfo->conf.mode == NG_CAR_RED) { /* Is packet is bigger then extended burst? */ - if (m->m_pkthdr.len - (hinfo->tc - m->m_pkthdr.len) > - hinfo->conf.ebs) { + if (len - (hinfo->tc - len) > hinfo->conf.ebs) { /* This packet is definitely red. */ ++hinfo->stats.red_pkts; hinfo->te = 0; @@ -333,13 +340,13 @@ /* Use token bucket to simulate RED-like drop probability. */ - } else if (hinfo->te + (m->m_pkthdr.len - hinfo->tc) < + } else if (hinfo->te + (len - hinfo->tc) < hinfo->conf.ebs) { /* This packet is yellow */ ++hinfo->stats.yellow_pkts; - hinfo->te += m->m_pkthdr.len - hinfo->tc; + hinfo->te += len - hinfo->tc; /* Go to negative tokens. */ - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.yellow_action); } else { /* This packet is probaly red. */ @@ -350,10 +357,10 @@ /* If not green and mode is SINGLE/DOUBLE RATE. */ } else { /* Check extended token bucket. */ - if (hinfo->te - m->m_pkthdr.len >= 0) { + if (hinfo->te - len >= 0) { /* This packet is yellow */ ++hinfo->stats.yellow_pkts; - hinfo->te -= m->m_pkthdr.len; + hinfo->te -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.yellow_action); } else { /* This packet is red */ @@ -430,6 +437,19 @@ sizeof(bconf->downstream)); bcopy(&priv->lower.conf, &bconf->upstream, sizeof(bconf->upstream)); + /* Convert internal 1/(8*128) of pps into pps */ + if (bconf->downstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->downstream.cir /= 1024; + bconf->downstream.pir /= 1024; + bconf->downstream.cbs /= 128; + bconf->downstream.ebs /= 128; + } + if (bconf->upstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->upstream.cir /= 1024; + bconf->upstream.pir /= 1024; + bconf->upstream.cbs /= 128; + bconf->upstream.ebs /= 128; + } } break; case NGM_CAR_SET_CONF: @@ -438,19 +458,45 @@ (struct ng_car_bulkconf *)msg->data; /* Check for invalid or illegal config. */ - if ((msg->header.arglen != sizeof(*bconf)) - || (bconf->downstream.cir > 1000000000) - || (bconf->downstream.pir > 1000000000) - || (bconf->upstream.cir > 1000000000) - || (bconf->upstream.pir > 1000000000) - || (bconf->downstream.cbs == 0 - && bconf->downstream.ebs == 0) - || (bconf->upstream.cbs == 0 - && bconf->upstream.ebs == 0)) + if (msg->header.arglen != sizeof(*bconf)) { + error = EINVAL; + break; + } + /* Convert pps into internal 1/(8*128) of pps */ + if (bconf->downstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->downstream.cir *= 1024; + bconf->downstream.pir *= 1024; + bconf->downstream.cbs *= 125; + bconf->downstream.ebs *= 125; + } + if (bconf->upstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->upstream.cir *= 1024; + bconf->upstream.pir *= 1024; + bconf->upstream.cbs *= 125; + bconf->upstream.ebs *= 125; + } + if ((bconf->downstream.cir > 1000000000) || + (bconf->downstream.pir > 1000000000) || + (bconf->upstream.cir > 1000000000) || + (bconf->upstream.pir > 1000000000) || + (bconf->downstream.cbs == 0 && + bconf->downstream.ebs == 0) || + (bconf->upstream.cbs == 0 && + bconf->upstream.ebs == 0)) { error = EINVAL; break; } + if ((bconf->upstream.mode == NG_CAR_SHAPE) && + (bconf->upstream.cir == 0)) { + error = EINVAL; + break; + } + if ((bconf->downstream.mode == NG_CAR_SHAPE) && + (bconf->downstream.cir == 0)) { + error = EINVAL; + break; + } /* Copy downstream config. */ bcopy(&bconf->downstream, &priv->upper.conf, @@ -653,7 +699,11 @@ /* If we have more packet, try it. */ m = hinfo->q[hinfo->q_first]; - hinfo->tc -= m->m_pkthdr.len; + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + hinfo->tc -= 128; + } else { + hinfo->tc -= m->m_pkthdr.len; + } } } @@ -707,7 +757,11 @@ /* If this is a first packet in the queue. */ if (len == 0) { - hinfo->tc -= m->m_pkthdr.len; + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + hinfo->tc -= 128; + } else { + hinfo->tc -= m->m_pkthdr.len; + } /* Schedule queue processing. */ ng_car_schedule(hinfo); ==== //depot/projects/dtrace/src/sys/netgraph/ng_car.h#2 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netgraph/ng_car.h,v 1.1 2007/05/15 16:09:23 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_car.h,v 1.2 2007/12/19 22:50:14 mav Exp $ */ #ifndef _NETGRAPH_NG_CAR_H_ @@ -115,6 +115,7 @@ /* mode options (opt) */ #define NG_CAR_COLOR_AWARE 1 +#define NG_CAR_COUNT_PACKETS 2 /* Bulk config */ struct ng_car_bulkconf { ==== //depot/projects/dtrace/src/sys/netinet/tcp_offload.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/tcp_offload.c,v 1.1 2007/12/17 07:56:27 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/tcp_offload.c,v 1.2 2007/12/19 05:17:40 kmacy Exp $"); #include #include @@ -72,23 +72,17 @@ ifp = rt->rt_ifp; if ((ifp->if_capenable & IFCAP_TOE) == 0) { - printf("no toe capability on %p\n", ifp); - error = EINVAL; goto fail; } tdev = TOEDEV(ifp); if (tdev == NULL) { - printf("tdev not set\n"); - error = EPERM; goto fail; } if (tdev->tod_can_offload(tdev, so) == 0) { - printf("not offloadable\n"); - error = EPERM; goto fail; } ==== //depot/projects/dtrace/src/sys/netinet/tcp_syncache.c#17 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/tcp_syncache.c,v 1.140 2007/12/17 07:56:27 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/tcp_syncache.c,v 1.141 2007/12/19 16:56:28 ru Exp $"); #include "opt_inet.h" #include "opt_inet6.h" @@ -42,6 +42,7 @@ #include #include #include +#include #include #include #include @@ -111,7 +112,7 @@ struct syncache { TAILQ_ENTRY(syncache) sc_hash; struct in_conninfo sc_inc; /* addresses */ - u_long sc_rxttime; /* retransmit time */ + int sc_rxttime; /* retransmit time */ u_int16_t sc_rxmits; /* retransmit counter */ u_int32_t sc_tsreflect; /* timestamp to reflect */ @@ -183,7 +184,7 @@ /* * Transmit the SYN,ACK fewer times than TCP_MAXRXTSHIFT specifies. - * 3 retransmits corresponds to a timeout of (1 + 2 + 4 + 8 == 15) seconds, + * 3 retransmits corresponds to a timeout of 3 * (1 + 2 + 4 + 8) == 45 seconds, * the odds are that the user has given up attempting to connect by then. */ #define SYNCACHE_MAXREXMTS 3 @@ -344,6 +345,8 @@ sch->sch_length++; /* Reinitialize the bucket row's timer. */ + if (sch->sch_length == 1) + sch->sch_nextc = ticks + INT_MAX; syncache_timeout(sc, sch, 1); SCH_UNLOCK(sch); @@ -382,11 +385,12 @@ sc->sc_rxttime = ticks + TCPTV_RTOBASE * (tcp_backoff[sc->sc_rxmits]); sc->sc_rxmits++; - if (sch->sch_nextc > sc->sc_rxttime) + if (TSTMP_LT(sc->sc_rxttime, sch->sch_nextc)) { sch->sch_nextc = sc->sc_rxttime; - if (!TAILQ_EMPTY(&sch->sch_bucket) && docallout) - callout_reset(&sch->sch_timer, sch->sch_nextc - ticks, - syncache_timer, (void *)sch); + if (docallout) + callout_reset(&sch->sch_timer, sch->sch_nextc - ticks, + syncache_timer, (void *)sch); + } } /* @@ -405,6 +409,12 @@ /* NB: syncache_head has already been locked by the callout. */ SCH_LOCK_ASSERT(sch); + /* + * In the following cycle we may remove some entries and/or + * advance some timeouts, so re-initialize the bucket timer. + */ + sch->sch_nextc = tick + INT_MAX; + TAILQ_FOREACH_SAFE(sc, &sch->sch_bucket, sc_hash, nsc) { /* * We do not check if the listen socket still exists @@ -414,8 +424,8 @@ * then the RST will be sent by the time the remote * host does the SYN/ACK->ACK. */ - if (sc->sc_rxttime > tick) { - if (sc->sc_rxttime < sch->sch_nextc) + if (TSTMP_GT(sc->sc_rxttime, tick)) { + if (TSTMP_LT(sc->sc_rxttime, sch->sch_nextc)) sch->sch_nextc = sc->sc_rxttime; continue; } ==== //depot/projects/dtrace/src/sys/powerpc/aim/ofw_machdep.c#3 (text+ko) ==== @@ -32,7 +32,7 @@ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 23:42:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C89A616A468; Wed, 19 Dec 2007 23:42:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 35EC216A478 for ; Wed, 19 Dec 2007 23:42:38 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2006813C4E1 for ; Wed, 19 Dec 2007 23:42:38 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJNgbVc077574 for ; Wed, 19 Dec 2007 23:42:37 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJNgX6F077564 for perforce@freebsd.org; Wed, 19 Dec 2007 23:42:33 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 19 Dec 2007 23:42:33 GMT Message-Id: <200712192342.lBJNgX6F077564@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131273 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 23:42:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131273 Change 131273 by kmacy@kmacy_home:ethng on 2007/12/19 23:42:12 IFC: 131269 Affected files ... .. //depot/projects/ethng/src/bin/mv/mv.c#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/hexnan.c#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/strtof.c#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/strtorQ.c#2 integrate .. //depot/projects/ethng/src/contrib/gdtoa/strtorx.c#2 integrate .. //depot/projects/ethng/src/lib/libc/amd64/Symbol.map#2 integrate .. //depot/projects/ethng/src/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/ethng/src/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/ethng/src/lib/libc/gdtoa/Symbol.map#3 integrate .. //depot/projects/ethng/src/lib/libc/i386/Symbol.map#2 integrate .. //depot/projects/ethng/src/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/ethng/src/lib/libc/ia64/Symbol.map#3 integrate .. //depot/projects/ethng/src/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/ethng/src/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/ethng/src/lib/libc/sparc64/Symbol.map#2 integrate .. //depot/projects/ethng/src/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/ethng/src/lib/libc/stdio/Symbol.map#2 integrate .. //depot/projects/ethng/src/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/ethng/src/lib/libc/stdlib/malloc.c#3 integrate .. //depot/projects/ethng/src/lib/libc/stdlib/strtod.3#2 integrate .. //depot/projects/ethng/src/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/ethng/src/lib/libc/sys/select.2#2 integrate .. //depot/projects/ethng/src/lib/libfetch/Makefile#3 integrate .. //depot/projects/ethng/src/lib/libfetch/common.c#3 integrate .. //depot/projects/ethng/src/lib/libfetch/common.h#3 integrate .. //depot/projects/ethng/src/lib/libfetch/fetch.3#2 integrate .. //depot/projects/ethng/src/lib/libfetch/fetch.c#3 integrate .. //depot/projects/ethng/src/lib/libfetch/ftp.c#3 integrate .. //depot/projects/ethng/src/lib/libfetch/http.c#3 integrate .. //depot/projects/ethng/src/lib/libkse/sys/thr_error.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_accept.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_aio_suspend.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_atfork.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_destroy.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_get_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getdetachstate.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getguardsize.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getinheritsched.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getschedparam.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getschedpolicy.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getscope.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getstack.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getstackaddr.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_getstacksize.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_init.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setdetachstate.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setguardsize.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setinheritsched.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setschedparam.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setschedpolicy.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setscope.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setstack.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setstackaddr.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_attr_setstacksize.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_barrier.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_barrierattr.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_cancel.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_clean.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_close.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_concurrency.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_cond.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_condattr_destroy.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_condattr_init.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_connect.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_creat.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_create.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_detach.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_equal.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_execve.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_exit.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_fcntl.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_fork.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_fsync.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_getprio.c#3 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_getschedparam.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_info.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_init.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_join.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_kill.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_main_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mattr_init.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mattr_kind_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_msync.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_multi_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mutex.c#5 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mutex_prioceiling.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mutex_protocol.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_mutexattr_destroy.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_nanosleep.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_once.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_open.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_pause.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_poll.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_private.h#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_pselect.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_pspinlock.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_raise.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_read.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_readv.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_resume_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_rwlock.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_rwlockattr.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_select.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_self.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sem.c#3 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_setprio.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_setschedparam.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigaction.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigaltstack.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigmask.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigpending.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigprocmask.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigsuspend.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sigwait.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_single_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_sleep.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_spec.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_spinlock.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_suspend_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_switch_np.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_symbols.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_system.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_tcdrain.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_vfork.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_wait.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_wait4.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_waitpid.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_write.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_writev.c#4 integrate .. //depot/projects/ethng/src/lib/libkse/thread/thr_yield.c#4 integrate .. //depot/projects/ethng/src/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/ethng/src/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/ethng/src/lib/libthr/thread/thr_mutex.c#6 integrate .. //depot/projects/ethng/src/lib/libufs/Makefile#2 integrate .. //depot/projects/ethng/src/lib/libufs/block.c#2 integrate .. //depot/projects/ethng/src/lib/libufs/bread.3#2 integrate .. //depot/projects/ethng/src/lib/libufs/libufs.h#2 integrate .. //depot/projects/ethng/src/lib/msun/Makefile#4 integrate .. //depot/projects/ethng/src/lib/msun/Symbol.map#3 integrate .. //depot/projects/ethng/src/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/ethng/src/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/ethng/src/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/ethng/src/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/ethng/src/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/ethng/src/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/ethng/src/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/ethng/src/lib/msun/man/math.3#2 integrate .. //depot/projects/ethng/src/lib/msun/man/nan.3#1 branch .. //depot/projects/ethng/src/lib/msun/src/math.h#2 integrate .. //depot/projects/ethng/src/lib/msun/src/math_private.h#2 integrate .. //depot/projects/ethng/src/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/ethng/src/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/ethng/src/lib/msun/src/s_nan.c#1 branch .. //depot/projects/ethng/src/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/ethng/src/release/doc/en_US.ISO8859-1/hardware/article.sgml#8 integrate .. //depot/projects/ethng/src/release/doc/share/misc/dev.archlist.txt#7 integrate .. //depot/projects/ethng/src/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/ethng/src/sbin/growfs/growfs.c#2 integrate .. //depot/projects/ethng/src/sbin/ipfw/ipfw2.c#6 integrate .. //depot/projects/ethng/src/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/ethng/src/sbin/newfs/newfs.8#3 integrate .. //depot/projects/ethng/src/sbin/newfs/newfs.c#3 integrate .. //depot/projects/ethng/src/sbin/newfs/newfs.h#3 integrate .. //depot/projects/ethng/src/share/man/man4/syncache.4#2 integrate .. //depot/projects/ethng/src/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/ethng/src/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/ethng/src/share/misc/Makefile#2 integrate .. //depot/projects/ethng/src/share/misc/bsd-family-tree#4 integrate .. //depot/projects/ethng/src/sys/arm/at91/at91.c#2 integrate .. //depot/projects/ethng/src/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/ethng/src/sys/boot/forth/support.4th#2 integrate .. //depot/projects/ethng/src/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/ethng/src/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/ethng/src/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/ethng/src/sys/cam/cam_xpt.c#3 integrate .. //depot/projects/ethng/src/sys/conf/NOTES#8 integrate .. //depot/projects/ethng/src/sys/conf/files#14 integrate .. //depot/projects/ethng/src/sys/conf/files.powerpc#5 integrate .. //depot/projects/ethng/src/sys/dev/aac/aac.c#6 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_adapter.h#27 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_config.h#2 edit .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_include.h#5 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_l2t.c#6 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_l2t.h#6 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_main.c#30 edit .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_offload.c#9 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_offload.h#7 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_osdep.h#19 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/cxgb_sge.c#38 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/sys/mvec.h#12 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/t3cdev.h#5 edit .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 edit .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 edit .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_listen.c#2 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/tom/cxgb_tom.c#2 integrate .. //depot/projects/ethng/src/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/ethng/src/sys/dev/mfi/mfi_pci.c#4 integrate .. //depot/projects/ethng/src/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/ethng/src/sys/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/ethng/src/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/ethng/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/ethng/src/sys/geom/geom_io.c#3 integrate .. //depot/projects/ethng/src/sys/i386/i386/machdep.c#6 integrate .. //depot/projects/ethng/src/sys/kern/kern_sig.c#4 integrate .. //depot/projects/ethng/src/sys/kern/kern_umtx.c#3 integrate .. //depot/projects/ethng/src/sys/kern/subr_bus.c#3 integrate .. //depot/projects/ethng/src/sys/kern/uipc_sockbuf.c#4 integrate .. //depot/projects/ethng/src/sys/modules/Makefile#10 integrate .. //depot/projects/ethng/src/sys/modules/cxgb/Makefile#12 integrate .. //depot/projects/ethng/src/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/ethng/src/sys/net/if_bridge.c#5 integrate .. //depot/projects/ethng/src/sys/net/if_lagg.c#7 integrate .. //depot/projects/ethng/src/sys/net/route.c#11 integrate .. //depot/projects/ethng/src/sys/net/route.h#6 integrate .. //depot/projects/ethng/src/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/ethng/src/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/ethng/src/sys/netinet/if_ether.c#12 integrate .. //depot/projects/ethng/src/sys/netinet/if_ether.h#2 integrate .. //depot/projects/ethng/src/sys/netinet/sctp_bsd_addr.c#4 integrate .. //depot/projects/ethng/src/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/ethng/src/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/ethng/src/sys/netinet/tcp_ofld.c#2 delete .. //depot/projects/ethng/src/sys/netinet/tcp_ofld.h#2 delete .. //depot/projects/ethng/src/sys/netinet/tcp_subr.c#8 integrate .. //depot/projects/ethng/src/sys/netinet/tcp_syncache.c#9 integrate .. //depot/projects/ethng/src/sys/netinet/tcp_usrreq.c#6 integrate .. //depot/projects/ethng/src/sys/netinet6/in6_pcb.c#3 integrate .. //depot/projects/ethng/src/sys/powerpc/aim/ofw_machdep.c#2 integrate .. //depot/projects/ethng/src/sys/powerpc/conf/NOTES#4 integrate .. //depot/projects/ethng/src/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/ethng/src/sys/powerpc/include/bus.h#2 integrate .. //depot/projects/ethng/src/sys/powerpc/powermac/grackle.c#3 integrate .. //depot/projects/ethng/src/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/ethng/src/sys/powerpc/powermac/uninorth.c#3 integrate .. //depot/projects/ethng/src/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/ethng/src/sys/powerpc/psim/iobus.c#2 integrate .. //depot/projects/ethng/src/sys/security/mac/mac_posix_sem.c#4 integrate .. //depot/projects/ethng/src/sys/sys/ata.h#4 integrate .. //depot/projects/ethng/src/sys/sys/socketvar.h#3 integrate .. //depot/projects/ethng/src/sys/vm/vm_page.c#9 integrate .. //depot/projects/ethng/src/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/ethng/src/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/ethng/src/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/ethng/src/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/ethng/src/tools/regression/lib/msun/Makefile#3 integrate .. //depot/projects/ethng/src/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/ethng/src/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/ethng/src/tools/regression/lib/msun/test-next.c#3 integrate .. //depot/projects/ethng/src/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/ethng/src/tools/regression/usr.bin/sed/regress.sh#2 integrate .. //depot/projects/ethng/src/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/ethng/src/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/ethng/src/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/ethng/src/usr.bin/ministat/Makefile#1 branch .. //depot/projects/ethng/src/usr.bin/ministat/README#1 branch .. //depot/projects/ethng/src/usr.bin/ministat/chameleon#1 branch .. //depot/projects/ethng/src/usr.bin/ministat/iguana#1 branch .. //depot/projects/ethng/src/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/ethng/src/usr.bin/netstat/inet.c#2 integrate .. //depot/projects/ethng/src/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/ethng/src/usr.sbin/iostat/iostat.c#2 integrate .. //depot/projects/ethng/src/usr.sbin/sysinstall/dist.c#3 integrate .. //depot/projects/ethng/src/usr.sbin/sysinstall/dist.h#3 integrate Differences ... ==== //depot/projects/ethng/src/bin/mv/mv.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -355,8 +355,34 @@ int copy(char *from, char *to) { + struct stat sb; + enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; + char *cleanup[CLEAN_MAX]; int pid, status; + volatile int i, rval; + + rval = 0; + for (i = 0; i < CLEAN_MAX; i++) + cleanup[i] = NULL; + /* + * If "to" exists and is a directory, get it out of the way. + * When the copy succeeds, delete it. + */ + if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { + if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { + warnx("asprintf failed"); + return (1); + } + if (rename(to, cleanup[CLEAN_ODEST]) < 0) { + warn("rename of existing target from %s to %s failed", + to, cleanup[CLEAN_ODEST]); + free(cleanup[CLEAN_ODEST]); + return (1); + } + } + /* Copy source to destination. */ + cleanup[CLEAN_DEST] = to; if ((pid = fork()) == 0) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); @@ -365,36 +391,77 @@ } if (waitpid(pid, &status, 0) == -1) { warn("%s: waitpid", _PATH_CP); - return (1); + rval = 1; + goto done; } if (!WIFEXITED(status)) { warnx("%s: did not terminate normally", _PATH_CP); - return (1); + rval = 1; + goto done; } if (WEXITSTATUS(status)) { warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); - return (1); + rval = 1; + goto done; } - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); - warn("%s", _PATH_RM); - _exit(1); + /* + * The copy succeeded. From now on the destination is where users + * will find their files. + */ + cleanup[CLEAN_DEST] = NULL; + cleanup[CLEAN_SOURCE] = from; +done: + /* Clean what needs to be cleaned. */ + for (i = 0; i < CLEAN_MAX; i++) { + if (cleanup[i] == NULL) + continue; + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], + (char *)NULL); + _exit(EX_OSERR); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", + _PATH_RM, cleanup[i]); + rval = 1; + continue; + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, cleanup[i], WEXITSTATUS(status)); + rval = 1; + continue; + } + /* + * If the copy failed, and we just deleted the copy's trash, + * try to salvage the original destination, + */ + if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { + if (rename(cleanup[CLEAN_ODEST], to) < 0) { + warn("rename back renamed existing target from %s to %s failed", + cleanup[CLEAN_ODEST], to); + rval = 1; + } + free(cleanup[CLEAN_ODEST]); + cleanup[CLEAN_ODEST] = NULL; + } } - if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_RM); - return (1); - } - if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_RM); - return (1); - } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_RM, WEXITSTATUS(status)); - return (1); - } - return (0); + if (cleanup[CLEAN_ODEST]) + free(cleanup[CLEAN_ODEST]); + return (rval); } void ==== //depot/projects/ethng/src/contrib/gdtoa/gdtoaimp.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/ethng/src/contrib/gdtoa/hexnan.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/ethng/src/contrib/gdtoa/strtod.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/ethng/src/contrib/gdtoa/strtof.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; + break; + case STRTOG_Denormal: u.L[0] = bits[0]; break; ==== //depot/projects/ethng/src/contrib/gdtoa/strtorQ.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorQ.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -63,11 +65,18 @@ break; case STRTOG_Normal: + L[_3] = bits[0]; + L[_2] = bits[1]; + L[_1] = bits[2]; + L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + break; + case STRTOG_NaNbits: L[_3] = bits[0]; L[_2] = bits[1]; L[_1] = bits[2]; - L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + L[_0] = (bits[3] & ~0x10000) + | (((exp + 0x3fff + 112) << 16) | (1 << 15)); break; case STRTOG_Denormal: ==== //depot/projects/ethng/src/contrib/gdtoa/strtorx.c#2 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorx.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -69,7 +71,6 @@ goto normal_bits; case STRTOG_Normal: - case STRTOG_NaNbits: L[_0] = exp + 0x3fff + 63; normal_bits: L[_4] = (UShort)bits[0]; @@ -78,6 +79,14 @@ L[_1] = (UShort)(bits[1] >> 16); break; + case STRTOG_NaNbits: + L[_0] = exp + 0x3fff + 63; + L[_4] = (UShort)bits[0]; + L[_3] = (UShort)(bits[0] >> 16); + L[_2] = (UShort)bits[1]; + L[_1] = (UShort)((bits[1] >> 16) | (3 << 14)); + break; + case STRTOG_Infinite: L[_0] = 0x7fff; L[_1] = L[_2] = L[_3] = L[_4] = 0; ==== //depot/projects/ethng/src/lib/libc/amd64/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.4 2007/05/31 13:01:32 deischen Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* ==== //depot/projects/ethng/src/lib/libc/amd64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/amd64/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/ethng/src/lib/libc/arm/gd_qnan.h#2 (text+ko) ==== @@ -6,18 +6,18 @@ * * XXX I don't have ARM hardware, so I just guessed. --das * - * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.1 2007/01/03 05:00:02 das Exp $ + * $FreeBSD: src/lib/libc/arm/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/ethng/src/lib/libc/gdtoa/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.5 2007/10/13 14:40:16 deischen Exp $ + * $FreeBSD: src/lib/libc/gdtoa/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ */ FBSD_1.0 { @@ -12,3 +12,8 @@ /* FreeBSD additions */ strtold; }; + +FBSDprivate_1.0 { + /* used in libm */ + __hexnan_D2A; +}; ==== //depot/projects/ethng/src/lib/libc/i386/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.5 2007/05/31 13:01:33 deischen Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* ==== //depot/projects/ethng/src/lib/libc/i386/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/i386/gd_qnan.h,v 1.2 2007/12/16 21:15:08 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/ethng/src/lib/libc/ia64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.4 2007/10/18 11:28:38 yar Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* ==== //depot/projects/ethng/src/lib/libc/ia64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/ia64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0xffc00000 +#define f_QNAN 0x7fc00000 #define d_QNAN0 0x0 -#define d_QNAN1 0xfff80000 +#define d_QNAN1 0x7ff80000 #define ld_QNAN0 0x0 #define ld_QNAN1 0xc0000000 -#define ld_QNAN2 0xffff +#define ld_QNAN2 0x7fff #define ld_QNAN3 0x0 #define ldus_QNAN0 0x0 #define ldus_QNAN1 0x0 #define ldus_QNAN2 0x0 #define ldus_QNAN3 0xc000 -#define ldus_QNAN4 0xffff +#define ldus_QNAN4 0x7fff ==== //depot/projects/ethng/src/lib/libc/net/nsdispatch.c#3 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.15 2007/12/12 10:08:03 bushman Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.16 2007/12/17 16:12:57 bushman Exp $"); #include "namespace.h" #include @@ -592,9 +592,7 @@ return (match->method); } } - if (is_dynamic()) - nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, - method); + *mdata = NULL; return (NULL); } @@ -701,12 +699,18 @@ if (result & (srclist[i].flags)) break; - } else if (fb_method != NULL) { - fallback_dispatch = 1; - va_start(ap, defaults); - result = fb_method(retval, (void *)srclist[i].name, ap); - va_end(ap); - fallback_dispatch = 0; + } else { + if (fb_method != NULL) { + fallback_dispatch = 1; + va_start(ap, defaults); + result = fb_method(retval, + (void *)srclist[i].name, ap); + va_end(ap); + fallback_dispatch = 0; + } else + nss_log(LOG_DEBUG, "%s, %s, %s, not found, " + "and no fallback provided", + srclist[i].name, database, method_name); } } ==== //depot/projects/ethng/src/lib/libc/sparc64/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.5 2007/05/31 13:01:34 deischen Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* ==== //depot/projects/ethng/src/lib/libc/sparc64/gd_qnan.h#2 (text+ko) ==== @@ -4,18 +4,18 @@ * This file can be generated by compiling and running contrib/gdtoa/qnan.c * on the target architecture after arith.h has been generated. * - * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.1 2007/01/03 05:00:03 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/gd_qnan.h,v 1.2 2007/12/16 21:15:09 das Exp $ */ -#define f_QNAN 0x7fffffff -#define d_QNAN0 0x7fffffff -#define d_QNAN1 0xffffffff -#define ld_QNAN0 0x7fffffff -#define ld_QNAN1 0xffffffff -#define ld_QNAN2 0xffffffff -#define ld_QNAN3 0xffffffff +#define f_QNAN 0x7fc00000 +#define d_QNAN0 0x7ff80000 +#define d_QNAN1 0x00000000 +#define ld_QNAN0 0x7fff8000 +#define ld_QNAN1 0x00000000 +#define ld_QNAN2 0x00000000 +#define ld_QNAN3 0x00000000 #define ldus_QNAN0 0x7fff -#define ldus_QNAN1 0xffff -#define ldus_QNAN2 0xffff -#define ldus_QNAN3 0xffff -#define ldus_QNAN4 0xffff +#define ldus_QNAN1 0x8000 +#define ldus_QNAN2 0x0000 +#define ldus_QNAN3 0x0000 +#define ldus_QNAN4 0x0000 ==== //depot/projects/ethng/src/lib/libc/stdio/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.5 2007/04/29 14:05:19 deischen Exp $ + * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.6 2007/12/18 23:49:05 das Exp $ */ FBSD_1.0 { @@ -108,6 +108,19 @@ __swbuf; wprintf; wscanf; +}; + +FBSDprivate_1.0 { + _flockfile; + _flockfile_debug_stub; + _flockfile_debug; + _ftrylockfile; + _funlockfile; + __vfscanf; + + /* + * xprintf support + */ __use_xprintf; __lowercase_hex; __uppercase_hex; @@ -136,12 +149,3 @@ __printf_arginfo_vis; __printf_render_vis; }; - -FBSDprivate_1.0 { - _flockfile; - _flockfile_debug_stub; - _flockfile_debug; - _ftrylockfile; - _funlockfile; - __vfscanf; -}; ==== //depot/projects/ethng/src/lib/libc/stdio/vfwprintf.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #endif /* LIBC_SCCS and not lint */ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.27 2007/01/09 00:28:08 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.28 2007/12/18 01:20:33 das Exp $"); /* * Actual wprintf innards. @@ -902,6 +902,7 @@ } else cp = (ch >= 'a') ? L"inf" : L"INF"; size = 3; + flags &= ~ZEROPAD; break; } flags |= FPT; ==== //depot/projects/ethng/src/lib/libc/stdlib/malloc.c#3 (text+ko) ==== @@ -101,11 +101,32 @@ /* #define MALLOC_PRODUCTION */ #ifndef MALLOC_PRODUCTION + /* + * MALLOC_DEBUG enables assertions and other sanity checks, and disables + * inline functions. + */ # define MALLOC_DEBUG + + /* MALLOC_STATS enables statistics calculation. */ +# define MALLOC_STATS #endif +/* + * MALLOC_LAZY_FREE enables the use of a per-thread vector of slots that free() + * can atomically stuff object pointers into. This can reduce arena lock + * contention. + */ +#define MALLOC_LAZY_FREE + +/* + * MALLOC_BALANCE enables monitoring of arena lock contention and dynamically + * re-balances arena load if exponentially averaged contention exceeds a + * certain threshold. + */ +#define MALLOC_BALANCE + #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.152 2007/11/28 00:17:34 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.154 2007/12/18 05:27:57 jasone Exp $"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 19 23:52:50 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 46B8116A420; Wed, 19 Dec 2007 23:52:50 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DBF5A16A41B for ; Wed, 19 Dec 2007 23:52:49 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BEE0C13C4EF for ; Wed, 19 Dec 2007 23:52:49 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBJNqnrv079161 for ; Wed, 19 Dec 2007 23:52:49 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBJNqnMl079157 for perforce@freebsd.org; Wed, 19 Dec 2007 23:52:49 GMT (envelope-from jb@freebsd.org) Date: Wed, 19 Dec 2007 23:52:49 GMT Message-Id: <200712192352.lBJNqnMl079157@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131276 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 23:52:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=131276 Change 131276 by jb@jb_freebsd1 on 2007/12/19 23:52:28 Add an empty NOTES file as a hack to get the LINT hack to build. Affected files ... .. //depot/projects/dtrace/src/sys/arm/conf/NOTES#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Dec 20 01:33:36 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA50716A418; Thu, 20 Dec 2007 01:33:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8378116A468 for ; Thu, 20 Dec 2007 01:33:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 63B0013C467 for ; Thu, 20 Dec 2007 01:33:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK1XZQl007237 for ; Thu, 20 Dec 2007 01:33:35 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK1XZMm007234 for perforce@freebsd.org; Thu, 20 Dec 2007 01:33:35 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 01:33:35 GMT Message-Id: <200712200133.lBK1XZMm007234@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131279 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 01:33:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=131279 Change 131279 by kmacy@kmacy_home:ethng on 2007/12/20 01:33:20 remove reference to local bits Affected files ... .. //depot/projects/ethng/src/sys/modules/netgraph/Makefile#3 edit Differences ... ==== //depot/projects/ethng/src/sys/modules/netgraph/Makefile#3 (text+ko) ==== @@ -51,10 +51,7 @@ tty \ UI \ vjc \ - vlan \ - web \ - webserver -# webclient \ + vlan .if ${MACHINE_ARCH} == "i386" _sync_ar= sync_ar From owner-p4-projects@FreeBSD.ORG Thu Dec 20 03:09:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E6F7E16A418; Thu, 20 Dec 2007 03:09:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2330116A419 for ; Thu, 20 Dec 2007 03:09:17 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1C8D713C43E for ; Thu, 20 Dec 2007 03:09:17 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK39GdZ022815 for ; Thu, 20 Dec 2007 03:09:16 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK39GHB022812 for perforce@freebsd.org; Thu, 20 Dec 2007 03:09:16 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 03:09:16 GMT Message-Id: <200712200309.lBK39GHB022812@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131281 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 03:09:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131281 Change 131281 by jb@jb_freebsd1 on 2007/12/20 03:08:21 Add the hook for the 'systrace' (syscall) provider and the entry and return calls using it. The implementation is opaque. The sysent support for this was added to current prior to the RELENG_7 branch. Add a hook for the DTrace 'safety' implementation. This is an opaque implementation of the previous one I did which assumed that certain OpenSolaris headers would be relicensed. Now that I know that won't happen, the code that relies on them *must* be loaded as part of the dtrace kernel module. In OpenSolaris there is a 'cpu_core' array that is has fields that DTrace uses to flag the fact that it is executing a probe. If a trap occurs with that flag set, then it assumes that the trap was caused by it (by referencing an address that isn't mapped, for example) and it sets an error flag in the same array and just returns from the trap, expecting that the RISC engine executing the DIF (DTrace intermediate format) will detect the error and just abort the probe processing. The new DTrace port will still rely on the cpu_core array, but it will be private to the DTrace module, thereby keeping the CDDL licensed code together. Affected files ... .. //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#19 edit .. //depot/projects/dtrace/src/sys/i386/i386/trap.c#24 edit .. //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#19 (text+ko) ==== @@ -49,6 +49,7 @@ #include "opt_hwpmc_hooks.h" #include "opt_isa.h" #include "opt_kdb.h" +#include "opt_kdtrace.h" #include "opt_ktrace.h" #include @@ -94,6 +95,24 @@ #endif #include +#ifdef KDTRACE_HOOKS +#include + +/* + * This is a hook which is initialised by the dtrace module + * to handle traps which might occur during DTrace probe + * execution. + */ +dtrace_trap_func_t dtrace_trap_func; + +/* + * This is a hook which is initialised by the systrace module + * when it is loaded. This keeps the DTrace syscall provider + * implementation opaque. + */ +systrace_probe_func_t systrace_probe_func; +#endif + extern void trap(struct trapframe *frame); extern void syscall(struct trapframe *frame); void dblfault_handler(struct trapframe *frame); @@ -199,6 +218,24 @@ goto out; #endif +#ifdef KDTRACE_HOOKS + /* + * A trap can occur while DTrace executes a probe. Before + * executing the probe, DTrace blocks re-scheduling and sets + * a flag in it's per-cpu flags to indicate that it doesn't + * want to fault. On returning from the the probe, the no-fault + * flag is cleared and finally re-scheduling is enabled. + * + * If the DTrace kernel module has registered a trap handler, + * call it and if it returns non-zero, assume that it has + * handled the trap and modified the trap frame so that this + * function can return normally. + */ + if (dtrace_trap_func != NULL) + if ((*dtrace_trap_func)(frame)) + goto out; +#endif + if ((frame->tf_rflags & PSL_I) == 0) { /* * Buggy application or kernel code has disabled @@ -847,9 +884,35 @@ PTRACESTOP_SC(p, td, S_PT_SCE); +#ifdef KDTRACE_HOOKS + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'entry', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_entry != 0) + (*systrace_probe_func)(callp->sy_entry, code, callp, + args); +#endif + AUDIT_SYSCALL_ENTER(code, td); error = (*callp->sy_call)(td, argp); AUDIT_SYSCALL_EXIT(error, td); + +#ifdef KDTRACE_HOOKS + /* Save the error return variable for DTrace to reference. */ + args[0] = error; + args[1] = error; + + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'return', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_return != 0) + (*systrace_probe_func)(callp->sy_return, code, callp, + args); +#endif } switch (error) { ==== //depot/projects/dtrace/src/sys/i386/i386/trap.c#24 (text+ko) ==== @@ -49,6 +49,7 @@ #include "opt_hwpmc_hooks.h" #include "opt_isa.h" #include "opt_kdb.h" +#include "opt_kdtrace.h" #include "opt_ktrace.h" #include "opt_npx.h" #include "opt_trap.h" @@ -102,6 +103,24 @@ #include #endif +#ifdef KDTRACE_HOOKS +#include + +/* + * This is a hook which is initialised by the dtrace module + * to handle traps which might occur during DTrace probe + * execution. + */ +dtrace_trap_func_t dtrace_trap_func; + +/* + * This is a hook which is initialised by the systrace module + * when it is loaded. This keeps the DTrace syscall provider + * implementation opaque. + */ +systrace_probe_func_t systrace_probe_func; +#endif + extern void trap(struct trapframe *frame); extern void syscall(struct trapframe *frame); @@ -218,6 +237,24 @@ goto out; #endif +#ifdef KDTRACE_HOOKS + /* + * A trap can occur while DTrace executes a probe. Before + * executing the probe, DTrace blocks re-scheduling and sets + * a flag in it's per-cpu flags to indicate that it doesn't + * want to fault. On returning from the the probe, the no-fault + * flag is cleared and finally re-scheduling is enabled. + * + * If the DTrace kernel module has registered a trap handler, + * call it and if it returns non-zero, assume that it has + * handled the trap and modified the trap frame so that this + * function can return normally. + */ + if (dtrace_trap_func != NULL) + if ((*dtrace_trap_func)(frame)) + goto out; +#endif + if ((frame->tf_eflags & PSL_I) == 0) { /* * Buggy application or kernel code has disabled @@ -1030,9 +1067,35 @@ PTRACESTOP_SC(p, td, S_PT_SCE); +#ifdef KDTRACE_HOOKS + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'entry', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_entry != 0) + (*systrace_probe_func)(callp->sy_entry, code, callp, + args); +#endif + AUDIT_SYSCALL_ENTER(code, td); error = (*callp->sy_call)(td, args); AUDIT_SYSCALL_EXIT(error, td); + +#ifdef KDTRACE_HOOKS + /* Save the error return variable for DTrace to reference. */ + args[0] = error; + args[1] = error; + + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'return', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_return != 0) + (*systrace_probe_func)(callp->sy_return, code, callp, + args); +#endif } switch (error) { ==== //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#4 (text+ko) ==== @@ -37,6 +37,13 @@ */ typedef void (*cyclic_clock_func_t)(void); +/* + * The dtrace module handles traps that occur during a DTrace probe. + * This type definition is used in the trap handler to provide a + * hook for the dtrace module to register it's handler with. + */ +typedef int (*dtrace_trap_func_t)(struct trapframe *); + /* Used by the machine dependent trap() code. */ typedef int (*dtrace_invop_func_t)(uintptr_t, uintptr_t *, uintptr_t); From owner-p4-projects@FreeBSD.ORG Thu Dec 20 03:33:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5BD4C16A469; Thu, 20 Dec 2007 03:33:43 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C602C16A41A for ; Thu, 20 Dec 2007 03:33:42 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A717713C4E1 for ; Thu, 20 Dec 2007 03:33:42 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK3Xglc027158 for ; Thu, 20 Dec 2007 03:33:42 GMT (envelope-from swise@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK3XgPA027155 for perforce@freebsd.org; Thu, 20 Dec 2007 03:33:42 GMT (envelope-from swise@FreeBSD.org) Date: Thu, 20 Dec 2007 03:33:42 GMT Message-Id: <200712200333.lBK3XgPA027155@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swise@FreeBSD.org using -f From: Steve Wise To: Perforce Change Reviews Cc: Subject: PERFORCE change 131282 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 03:33:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131282 Change 131282 by swise@swise:vic10:iwarp on 2007/12/20 03:33:03 fixed gen_pool shim code. Affected files ... .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.h#3 edit Differences ... ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.h#3 (text+ko) ==== @@ -235,6 +235,7 @@ free(gp, M_DEVBUF); return (NULL); } + blist_free(gp->gen_list, 0, len >> chunk_shift); gp->gen_base = base; gp->gen_chunk_shift = chunk_shift; From owner-p4-projects@FreeBSD.ORG Thu Dec 20 05:33:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D486C16A41A; Thu, 20 Dec 2007 05:33:07 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6DC1716A418 for ; Thu, 20 Dec 2007 05:33:07 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 637AA13C447 for ; Thu, 20 Dec 2007 05:33:07 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK5X77j056183 for ; Thu, 20 Dec 2007 05:33:07 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK5WiYH056015 for perforce@freebsd.org; Thu, 20 Dec 2007 05:32:44 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 05:32:44 GMT Message-Id: <200712200532.lBK5WiYH056015@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131286 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 05:33:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131286 Change 131286 by kmacy@kmacy:entropy:iwarp on 2007/12/20 05:32:44 IFethng 131279 integrate TOE drop in to CVS Affected files ... .. //depot/projects/iwarp/Makefile#3 integrate .. //depot/projects/iwarp/Makefile.inc1#4 integrate .. //depot/projects/iwarp/ObsoleteFiles.inc#6 integrate .. //depot/projects/iwarp/bin/ed/Makefile#2 integrate .. //depot/projects/iwarp/bin/mv/mv.c#2 integrate .. //depot/projects/iwarp/bin/sh/sh.1#2 integrate .. //depot/projects/iwarp/contrib/amd/AUTHORS#2 integrate .. //depot/projects/iwarp/contrib/amd/BUGS#2 integrate .. //depot/projects/iwarp/contrib/amd/COPYING#2 integrate .. //depot/projects/iwarp/contrib/amd/ChangeLog#2 integrate .. //depot/projects/iwarp/contrib/amd/FAQ#1 branch .. //depot/projects/iwarp/contrib/amd/FREEBSD-Xlist#2 integrate .. //depot/projects/iwarp/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/iwarp/contrib/amd/INSTALL#2 integrate .. //depot/projects/iwarp/contrib/amd/NEWS#2 integrate .. //depot/projects/iwarp/contrib/amd/README.attrcache#1 branch .. //depot/projects/iwarp/contrib/amd/README.ldap#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/am_ops.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amd.8#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amd.h#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_auto.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_direct.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_error.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_generic.c#1 branch .. //depot/projects/iwarp/contrib/amd/amd/amfs_host.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_inherit.c#2 delete .. //depot/projects/iwarp/contrib/amd/amd/amfs_link.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_linkx.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_nfsl.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_nfsx.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_program.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_root.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_toplvl.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amfs_union.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amq_subr.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/amq_svc.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/autil.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/clock.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/conf.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/conf_parse.y#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/conf_tok.l#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/get_args.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_exec.c#1 branch .. //depot/projects/iwarp/contrib/amd/amd/info_file.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_hesiod.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_ldap.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_ndbm.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_nis.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_nisplus.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_passwd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/info_union.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/map.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/mapc.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/mntfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/nfs_prot_svc.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/nfs_start.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/nfs_subr.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_TEMPLATE.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_cachefs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_cdfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_efs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_lofs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_mfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_nfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_nfs3.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_nullfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_pcfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_tfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_tmpfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_ufs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_umapfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_unionfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/ops_xfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/opts.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/readdir.c#1 branch .. //depot/projects/iwarp/contrib/amd/amd/restart.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/rpc_fwd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/sched.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/srvr_amfs_auto.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amd/srvr_nfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/amq.8#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/amq.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/amq.h#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/amq_clnt.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/amq_xdr.c#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/pawd.1#2 integrate .. //depot/projects/iwarp/contrib/amd/amq/pawd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/aux_conf.h.in#2 integrate .. //depot/projects/iwarp/contrib/amd/bootstrap#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/checkmount/checkmount_bsd44.c#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/mtab/mtab_bsd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/transp/transp_sockets.c#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/trap/trap_default.h#2 integrate .. //depot/projects/iwarp/contrib/amd/conf/umount/umount_bsd44.c#2 integrate .. //depot/projects/iwarp/contrib/amd/doc/am-utils.texi#2 integrate .. //depot/projects/iwarp/contrib/amd/doc/stamp-vti#1 branch .. //depot/projects/iwarp/contrib/amd/doc/texinfo.tex#2 integrate .. //depot/projects/iwarp/contrib/amd/doc/version.texi#2 integrate .. //depot/projects/iwarp/contrib/amd/fixmount/fixmount.8#2 integrate .. //depot/projects/iwarp/contrib/amd/fixmount/fixmount.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_analyze.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_data.h#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_dict.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_gram.y#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_lex.l#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsi_util.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsinfo.8#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsinfo.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/fsinfo.h#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/wr_atab.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/wr_bparam.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/wr_dumpset.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/wr_exportfs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/fsinfo/wr_fstab.c#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/hlfsd.8#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/hlfsd.c#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/hlfsd.h#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/homedir.c#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/nfs_prot_svc.c#2 integrate .. //depot/projects/iwarp/contrib/amd/hlfsd/stubs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/include/am_compat.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/am_defs.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/am_utils.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/am_xdr_func.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/amq_defs.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/mount_headers1.h#2 integrate .. //depot/projects/iwarp/contrib/amd/include/mount_headers2.h#2 integrate .. //depot/projects/iwarp/contrib/amd/ldap-id.ms#2 integrate .. //depot/projects/iwarp/contrib/amd/ldap.schema#1 branch .. //depot/projects/iwarp/contrib/amd/libamu/alloca.c#2 delete .. //depot/projects/iwarp/contrib/amd/libamu/amu.h#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/hasmntopt.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/misc_rpc.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/mount_fs.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/mtab.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/nfs_prot_xdr.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/strerror.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/strutil.c#1 branch .. //depot/projects/iwarp/contrib/amd/libamu/util.c#2 delete .. //depot/projects/iwarp/contrib/amd/libamu/wire.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/xdr_func.c#2 integrate .. //depot/projects/iwarp/contrib/amd/libamu/xutil.c#2 integrate .. //depot/projects/iwarp/contrib/amd/m4/GNUmakefile#2 delete .. //depot/projects/iwarp/contrib/amd/m4/amdgrep#2 delete .. //depot/projects/iwarp/contrib/amd/m4/amindent#2 delete .. //depot/projects/iwarp/contrib/amd/m4/autopat#2 delete .. //depot/projects/iwarp/contrib/amd/m4/chop-aclocal.pl#2 delete .. //depot/projects/iwarp/contrib/amd/m4/copy-if-newbig#2 delete .. //depot/projects/iwarp/contrib/amd/m4/macros/HEADER#2 delete .. //depot/projects/iwarp/contrib/amd/m4/macros/TRAILER#2 delete .. //depot/projects/iwarp/contrib/amd/m4/mk-aclocal#2 delete .. //depot/projects/iwarp/contrib/amd/m4/mkconf#2 delete .. //depot/projects/iwarp/contrib/amd/m4/rmtspc#2 delete .. //depot/projects/iwarp/contrib/amd/m4/update_build_version#2 delete .. //depot/projects/iwarp/contrib/amd/mk-amd-map/mk-amd-map.8#2 integrate .. //depot/projects/iwarp/contrib/amd/mk-amd-map/mk-amd-map.c#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/am-eject.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/amd.conf-sample#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/amd.conf.5#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/amd2ldif.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/amd2sun.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/automount2amd.8#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/automount2amd.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/ctl-amd.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/ctl-hlfsd.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/expn.1#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/expn.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/fix-amd-map.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/fixrmtab.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/redhat-ctl-amd.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/test-attrcache.in#1 branch .. //depot/projects/iwarp/contrib/amd/scripts/wait4amd.in#2 integrate .. //depot/projects/iwarp/contrib/amd/scripts/wait4amd2die.in#2 integrate .. //depot/projects/iwarp/contrib/amd/tasks#2 integrate .. //depot/projects/iwarp/contrib/amd/vers.m4#1 branch .. //depot/projects/iwarp/contrib/amd/wire-test/wire-test.8#2 integrate .. //depot/projects/iwarp/contrib/amd/wire-test/wire-test.c#2 integrate .. //depot/projects/iwarp/contrib/gcc/config/sparc/freebsd.h#2 integrate .. //depot/projects/iwarp/contrib/gcc/fold-const.c#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/hexnan.c#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/strtof.c#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/strtorQ.c#2 integrate .. //depot/projects/iwarp/contrib/gdtoa/strtorx.c#2 integrate .. //depot/projects/iwarp/etc/rc.d/DAEMON#2 integrate .. //depot/projects/iwarp/etc/rc.d/LOGIN#2 integrate .. //depot/projects/iwarp/etc/rc.d/Makefile#3 integrate .. //depot/projects/iwarp/etc/rc.d/NETWORKING#2 integrate .. //depot/projects/iwarp/etc/rc.d/SERVERS#2 integrate .. //depot/projects/iwarp/etc/rc.d/accounting#2 integrate .. //depot/projects/iwarp/etc/rc.d/amd#3 integrate .. //depot/projects/iwarp/etc/rc.d/apmd#2 integrate .. //depot/projects/iwarp/etc/rc.d/bootconf.sh#2 delete .. //depot/projects/iwarp/etc/rc.d/bootparams#2 integrate .. //depot/projects/iwarp/etc/rc.d/ccd#2 integrate .. //depot/projects/iwarp/etc/rc.d/cron#2 integrate .. //depot/projects/iwarp/etc/rc.d/dhclient#2 integrate .. //depot/projects/iwarp/etc/rc.d/dmesg#2 integrate .. //depot/projects/iwarp/etc/rc.d/fsck#2 integrate .. //depot/projects/iwarp/etc/rc.d/ftp-proxy#2 integrate .. //depot/projects/iwarp/etc/rc.d/inetd#2 integrate .. //depot/projects/iwarp/etc/rc.d/ipfilter#2 integrate .. //depot/projects/iwarp/etc/rc.d/ipfs#2 integrate .. //depot/projects/iwarp/etc/rc.d/ipmon#2 integrate .. //depot/projects/iwarp/etc/rc.d/ipnat#2 integrate .. //depot/projects/iwarp/etc/rc.d/ipsec#2 integrate .. //depot/projects/iwarp/etc/rc.d/isdnd#2 integrate .. //depot/projects/iwarp/etc/rc.d/keyserv#2 integrate .. //depot/projects/iwarp/etc/rc.d/ldconfig#2 integrate .. //depot/projects/iwarp/etc/rc.d/local#2 integrate .. //depot/projects/iwarp/etc/rc.d/lockd#2 integrate .. //depot/projects/iwarp/etc/rc.d/lpd#2 integrate .. //depot/projects/iwarp/etc/rc.d/motd#2 integrate .. //depot/projects/iwarp/etc/rc.d/mountcritlocal#2 integrate .. //depot/projects/iwarp/etc/rc.d/mountcritremote#2 integrate .. //depot/projects/iwarp/etc/rc.d/mountd#2 integrate .. //depot/projects/iwarp/etc/rc.d/moused#2 integrate .. //depot/projects/iwarp/etc/rc.d/mrouted#2 integrate .. //depot/projects/iwarp/etc/rc.d/newsyslog#2 integrate .. //depot/projects/iwarp/etc/rc.d/nfsd#2 integrate .. //depot/projects/iwarp/etc/rc.d/power_profile#2 integrate .. //depot/projects/iwarp/etc/rc.d/pwcheck#2 integrate .. //depot/projects/iwarp/etc/rc.d/quota#2 integrate .. //depot/projects/iwarp/etc/rc.d/rarpd#2 integrate .. //depot/projects/iwarp/etc/rc.d/resolv#2 integrate .. //depot/projects/iwarp/etc/rc.d/root#2 integrate .. //depot/projects/iwarp/etc/rc.d/route6d#2 integrate .. //depot/projects/iwarp/etc/rc.d/routed#2 integrate .. //depot/projects/iwarp/etc/rc.d/rpcbind#2 integrate .. //depot/projects/iwarp/etc/rc.d/rtadvd#2 integrate .. //depot/projects/iwarp/etc/rc.d/rwho#2 integrate .. //depot/projects/iwarp/etc/rc.d/savecore#2 integrate .. //depot/projects/iwarp/etc/rc.d/securelevel#2 integrate .. //depot/projects/iwarp/etc/rc.d/sendmail#2 integrate .. //depot/projects/iwarp/etc/rc.d/sshd#2 integrate .. //depot/projects/iwarp/etc/rc.d/statd#2 integrate .. //depot/projects/iwarp/etc/rc.d/swap1#2 integrate .. //depot/projects/iwarp/etc/rc.d/sysctl#2 integrate .. //depot/projects/iwarp/etc/rc.d/syslogd#2 integrate .. //depot/projects/iwarp/etc/rc.d/timed#2 integrate .. //depot/projects/iwarp/etc/rc.d/tmp#2 integrate .. //depot/projects/iwarp/etc/rc.d/ugidfw#2 integrate .. //depot/projects/iwarp/etc/rc.d/var#2 integrate .. //depot/projects/iwarp/etc/rc.d/virecover#2 integrate .. //depot/projects/iwarp/etc/rc.d/ypbind#2 integrate .. //depot/projects/iwarp/etc/rc.d/yppasswdd#2 integrate .. //depot/projects/iwarp/etc/rc.d/ypserv#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/Makefile#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/fortunes#4 integrate .. //depot/projects/iwarp/games/fortune/datfiles/fortunes-o.real#3 integrate .. //depot/projects/iwarp/games/fortune/datfiles/fortunes-o.sp.ok#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/fortunes.sp.ok#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/fortunes2-o#2 delete .. //depot/projects/iwarp/games/fortune/datfiles/freebsd-tips#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/freebsd-tips.sp.ok#1 branch .. //depot/projects/iwarp/games/fortune/datfiles/limerick#3 integrate .. //depot/projects/iwarp/games/fortune/datfiles/limerick.sp.ok#1 branch .. //depot/projects/iwarp/games/fortune/datfiles/murphy#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/murphy-o#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/murphy.sp.ok#1 branch .. //depot/projects/iwarp/games/fortune/datfiles/startrek#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/zippy#2 integrate .. //depot/projects/iwarp/games/fortune/datfiles/zippy.sp.ok#2 integrate .. //depot/projects/iwarp/include/complex.h#2 integrate .. //depot/projects/iwarp/include/nsswitch.h#2 integrate .. //depot/projects/iwarp/include/pthread_np.h#3 integrate .. //depot/projects/iwarp/lib/Makefile#4 integrate .. //depot/projects/iwarp/lib/csu/common/crtbrand.c#3 integrate .. //depot/projects/iwarp/lib/libarchive/archive_read_support_format_zip.c#2 integrate .. //depot/projects/iwarp/lib/libc/Versions.def#2 integrate .. //depot/projects/iwarp/lib/libc/amd64/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/iwarp/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/iwarp/lib/libc/gdtoa/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/libc/gdtoa/_ldtoa.c#3 integrate .. //depot/projects/iwarp/lib/libc/gen/getgrent.c#2 integrate .. //depot/projects/iwarp/lib/libc/gen/getgrouplist.c#2 integrate .. //depot/projects/iwarp/lib/libc/i386/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/iwarp/lib/libc/ia64/Symbol.map#3 integrate .. //depot/projects/iwarp/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/iwarp/lib/libc/locale/localeconv.c#2 integrate .. //depot/projects/iwarp/lib/libc/net/nsdispatch.c#2 integrate .. //depot/projects/iwarp/lib/libc/sparc64/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/iwarp/lib/libc/stdio/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/libc/stdio/vfscanf.c#2 integrate .. //depot/projects/iwarp/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/iwarp/lib/libc/stdio/vfwscanf.c#2 integrate .. //depot/projects/iwarp/lib/libc/stdlib/grantpt.c#2 integrate .. //depot/projects/iwarp/lib/libc/stdlib/malloc.c#3 integrate .. //depot/projects/iwarp/lib/libc/stdlib/rand.c#2 integrate .. //depot/projects/iwarp/lib/libc/stdlib/strtod.3#2 integrate .. //depot/projects/iwarp/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/iwarp/lib/libc/string/strtok.3#2 integrate .. //depot/projects/iwarp/lib/libc/string/strtok.c#2 integrate .. //depot/projects/iwarp/lib/libc/string/wcstok.c#2 integrate .. //depot/projects/iwarp/lib/libc/sys/access.2#2 integrate .. //depot/projects/iwarp/lib/libc/sys/select.2#2 integrate .. //depot/projects/iwarp/lib/libfetch/Makefile#2 integrate .. //depot/projects/iwarp/lib/libfetch/common.c#2 integrate .. //depot/projects/iwarp/lib/libfetch/common.h#2 integrate .. //depot/projects/iwarp/lib/libfetch/fetch.3#2 integrate .. //depot/projects/iwarp/lib/libfetch/fetch.c#2 integrate .. //depot/projects/iwarp/lib/libfetch/file.c#2 integrate .. //depot/projects/iwarp/lib/libfetch/ftp.c#2 integrate .. //depot/projects/iwarp/lib/libfetch/http.c#2 integrate .. //depot/projects/iwarp/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_cond.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_init.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_kern.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mutex.c#4 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_spec.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/iwarp/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/iwarp/lib/libpmc/libpmc.c#2 integrate .. //depot/projects/iwarp/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/iwarp/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/iwarp/lib/libthr/pthread.map#3 integrate .. //depot/projects/iwarp/lib/libthr/thread/thr_mutex.c#4 integrate .. //depot/projects/iwarp/lib/libthr/thread/thr_private.h#4 integrate .. //depot/projects/iwarp/lib/libufs/Makefile#2 integrate .. //depot/projects/iwarp/lib/libufs/block.c#2 integrate .. //depot/projects/iwarp/lib/libufs/bread.3#2 integrate .. //depot/projects/iwarp/lib/libufs/libufs.h#2 integrate .. //depot/projects/iwarp/lib/msun/Makefile#2 integrate .. //depot/projects/iwarp/lib/msun/Symbol.map#2 integrate .. //depot/projects/iwarp/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/iwarp/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/iwarp/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/iwarp/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/iwarp/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/iwarp/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/iwarp/lib/msun/man/atan2.3#2 integrate .. //depot/projects/iwarp/lib/msun/man/csqrt.3#1 branch .. //depot/projects/iwarp/lib/msun/man/hypot.3#2 integrate .. //depot/projects/iwarp/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/iwarp/lib/msun/man/math.3#2 integrate .. //depot/projects/iwarp/lib/msun/man/nan.3#1 branch .. //depot/projects/iwarp/lib/msun/man/sqrt.3#2 integrate .. //depot/projects/iwarp/lib/msun/src/math.h#2 integrate .. //depot/projects/iwarp/lib/msun/src/math_private.h#2 integrate .. //depot/projects/iwarp/lib/msun/src/s_carg.c#1 branch .. //depot/projects/iwarp/lib/msun/src/s_cargf.c#1 branch .. //depot/projects/iwarp/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/iwarp/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/iwarp/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/iwarp/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/iwarp/lib/msun/src/s_nan.c#1 branch .. //depot/projects/iwarp/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/iwarp/release/Makefile#5 integrate .. //depot/projects/iwarp/release/doc/en_US.ISO8859-1/hardware/article.sgml#3 integrate .. //depot/projects/iwarp/release/doc/share/misc/dev.archlist.txt#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/Makefile#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/errata/Makefile#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/Makefile#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/Makefile.inc#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/amd64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/amd64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/amd64/proc-amd64.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/article.sgml#1 branch .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/common/artheader.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/common/hw.ent#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/common/intro.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/i386/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/i386/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/hardware/i386/proc-i386.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/Makefile.inc#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/amd64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/amd64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/abstract.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/artheader.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/install.ent#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/install.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/layout.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/trouble.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/common/upgrade.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/i386/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/i386/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/ia64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/ia64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/pc98/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/pc98/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/sparc64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/sparc64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/installation/sparc64/install.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/readme/article.sgml#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/Makefile#2 integrate .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/Makefile.inc#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/amd64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/amd64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/article.sgml#1 branch .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/common/new.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/common/relnotes.ent#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/i386/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/i386/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/ia64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/ia64/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/pc98/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/pc98/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/powerpc/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/powerpc/article.sgml#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/sparc64/Makefile#2 delete .. //depot/projects/iwarp/release/doc/zh_CN.GB2312/relnotes/sparc64/article.sgml#2 delete .. //depot/projects/iwarp/release/fixit.profile#2 integrate .. //depot/projects/iwarp/sbin/atacontrol/atacontrol.c#2 integrate .. //depot/projects/iwarp/sbin/bsdlabel/bsdlabel.8#2 integrate .. //depot/projects/iwarp/sbin/bsdlabel/bsdlabel.c#2 integrate .. //depot/projects/iwarp/sbin/dhclient/dispatch.c#2 integrate .. //depot/projects/iwarp/sbin/growfs/growfs.c#2 integrate .. //depot/projects/iwarp/sbin/ifconfig/ifconfig.8#3 integrate .. //depot/projects/iwarp/sbin/ifconfig/ifconfig.c#2 integrate .. //depot/projects/iwarp/sbin/ipfw/ipfw2.c#3 integrate .. //depot/projects/iwarp/sbin/natd/natd.8#2 integrate .. //depot/projects/iwarp/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/iwarp/sbin/newfs/newfs.8#3 integrate .. //depot/projects/iwarp/sbin/newfs/newfs.c#3 integrate .. //depot/projects/iwarp/sbin/newfs/newfs.h#3 integrate .. //depot/projects/iwarp/sbin/newfs_msdos/newfs_msdos.8#2 integrate .. //depot/projects/iwarp/share/examples/cvsup/refuse#2 integrate .. //depot/projects/iwarp/share/examples/cvsup/refuse.README#2 integrate .. //depot/projects/iwarp/share/man/man3/tgmath.3#2 integrate .. //depot/projects/iwarp/share/man/man4/Makefile#5 integrate .. //depot/projects/iwarp/share/man/man4/aac.4#3 integrate .. //depot/projects/iwarp/share/man/man4/hptrr.4#1 branch .. //depot/projects/iwarp/share/man/man4/hwpmc.4#3 integrate .. //depot/projects/iwarp/share/man/man4/msk.4#3 integrate .. //depot/projects/iwarp/share/man/man4/nve.4#2 integrate .. //depot/projects/iwarp/share/man/man4/syncache.4#2 integrate .. //depot/projects/iwarp/share/man/man5/hosts.equiv.5#2 integrate .. //depot/projects/iwarp/share/man/man5/src.conf.5#3 integrate .. //depot/projects/iwarp/share/man/man7/build.7#2 integrate .. //depot/projects/iwarp/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/iwarp/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/iwarp/share/misc/Makefile#2 integrate .. //depot/projects/iwarp/share/misc/bsd-family-tree#3 integrate .. //depot/projects/iwarp/share/misc/iso3166#3 integrate .. //depot/projects/iwarp/share/mk/bsd.own.mk#3 integrate .. //depot/projects/iwarp/share/mk/bsd.subdir.mk#2 integrate .. //depot/projects/iwarp/share/zoneinfo/asia#3 integrate .. //depot/projects/iwarp/share/zoneinfo/northamerica#3 integrate .. //depot/projects/iwarp/share/zoneinfo/southamerica#2 integrate .. //depot/projects/iwarp/share/zoneinfo/zone.tab#2 integrate .. //depot/projects/iwarp/sys/amd64/amd64/exception.S#3 integrate .. //depot/projects/iwarp/sys/amd64/amd64/identcpu.c#2 integrate .. //depot/projects/iwarp/sys/amd64/amd64/machdep.c#4 integrate .. //depot/projects/iwarp/sys/amd64/amd64/pmap.c#5 integrate .. //depot/projects/iwarp/sys/amd64/amd64/trap.c#3 integrate .. //depot/projects/iwarp/sys/amd64/amd64/vm_machdep.c#4 integrate .. //depot/projects/iwarp/sys/amd64/conf/GENERIC#4 integrate .. //depot/projects/iwarp/sys/amd64/conf/MULTIQ#3 integrate .. //depot/projects/iwarp/sys/amd64/conf/NOTES#4 integrate .. //depot/projects/iwarp/sys/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/amd64/include/specialreg.h#2 integrate .. //depot/projects/iwarp/sys/arm/arm/pmap.c#6 integrate .. //depot/projects/iwarp/sys/arm/at91/at91.c#2 integrate .. //depot/projects/iwarp/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/iwarp/sys/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/boot/forth/support.4th#2 integrate .. //depot/projects/iwarp/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/iwarp/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/iwarp/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/iwarp/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/iwarp/sys/cam/cam_xpt.c#3 integrate .. //depot/projects/iwarp/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/iwarp/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/iwarp/sys/compat/ndis/subr_ndis.c#3 integrate .. //depot/projects/iwarp/sys/compat/ndis/subr_ntoskrnl.c#4 integrate .. //depot/projects/iwarp/sys/conf/Makefile.amd64#2 integrate .. //depot/projects/iwarp/sys/conf/NOTES#4 integrate .. //depot/projects/iwarp/sys/conf/files#6 edit .. //depot/projects/iwarp/sys/conf/files.amd64#6 integrate .. //depot/projects/iwarp/sys/conf/files.i386#6 integrate .. //depot/projects/iwarp/sys/conf/files.powerpc#4 integrate .. //depot/projects/iwarp/sys/conf/options#3 integrate .. //depot/projects/iwarp/sys/conf/options.powerpc#2 integrate .. //depot/projects/iwarp/sys/dev/aac/aac.c#4 integrate .. //depot/projects/iwarp/sys/dev/aac/aac_cam.c#3 integrate .. //depot/projects/iwarp/sys/dev/aac/aac_pci.c#2 integrate .. //depot/projects/iwarp/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/iwarp/sys/dev/aac/aacvar.h#2 integrate .. //depot/projects/iwarp/sys/dev/amr/amr.c#3 integrate .. //depot/projects/iwarp/sys/dev/amr/amr_cam.c#3 integrate .. //depot/projects/iwarp/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/iwarp/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/iwarp/sys/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/iwarp/sys/dev/arcmsr/arcmsr.h#2 integrate .. //depot/projects/iwarp/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/iwarp/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/iwarp/sys/dev/ata/ata-dma.c#3 integrate .. //depot/projects/iwarp/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/iwarp/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_adapter.h#6 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_l2t.c#4 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_l2t.h#5 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_main.c#6 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.c#7 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.h#5 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_osdep.h#5 integrate .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_sge.c#5 integrate .. //depot/projects/iwarp/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/iwarp/sys/dev/cxgb/sys/mvec.h#4 edit .. //depot/projects/iwarp/sys/dev/cxgb/sys/uipc_mvec.c#3 integrate .. //depot/projects/iwarp/sys/dev/cxgb/t3cdev.h#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#2 integrate .. //depot/projects/iwarp/sys/dev/cxgb/ulp/toecore/toedev.c#2 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_defs.#1 add .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_defs.h#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_listen.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#2 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tom.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tom.h#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#3 edit .. //depot/projects/iwarp/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/array.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/him.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/list.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/iwarp/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_logging.c#3 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_mod.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_piv.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_x86.c#3 integrate .. //depot/projects/iwarp/sys/dev/if_ndis/if_ndis.c#4 integrate .. //depot/projects/iwarp/sys/dev/if_ndis/if_ndis_pci.c#2 integrate .. //depot/projects/iwarp/sys/dev/if_ndis/if_ndisvar.h#2 integrate .. //depot/projects/iwarp/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/iwarp/sys/dev/iwi/if_iwi.c#3 integrate .. //depot/projects/iwarp/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/iwarp/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/iwarp/sys/dev/msk/if_msk.c#3 integrate .. //depot/projects/iwarp/sys/dev/msk/if_mskreg.h#3 integrate .. //depot/projects/iwarp/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/iwarp/sys/dev/re/if_re.c#4 integrate .. //depot/projects/iwarp/sys/dev/sio/sio.c#2 integrate .. //depot/projects/iwarp/sys/dev/sound/pci/hda/hdac.c#4 integrate .. //depot/projects/iwarp/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/iwarp/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/iwarp/sys/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/iwarp/sys/dev/usb/umass.c#2 integrate .. //depot/projects/iwarp/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/iwarp/sys/dev/usb/usbdevs#6 integrate .. //depot/projects/iwarp/sys/dev/utopia/utopia.c#3 integrate .. //depot/projects/iwarp/sys/fs/tmpfs/tmpfs_subr.c#3 integrate .. //depot/projects/iwarp/sys/fs/tmpfs/tmpfs_vfsops.c#3 integrate .. //depot/projects/iwarp/sys/fs/tmpfs/tmpfs_vnops.c#3 integrate .. //depot/projects/iwarp/sys/fs/udf/udf_vfsops.c#3 integrate .. //depot/projects/iwarp/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/iwarp/sys/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/iwarp/sys/geom/geom_dev.c#2 integrate .. //depot/projects/iwarp/sys/geom/geom_io.c#3 integrate .. //depot/projects/iwarp/sys/geom/part/g_part.c#3 integrate .. //depot/projects/iwarp/sys/geom/part/g_part.h#3 integrate .. //depot/projects/iwarp/sys/geom/part/g_part_bsd.c#1 branch .. //depot/projects/iwarp/sys/i386/bios/apm.c#4 integrate .. //depot/projects/iwarp/sys/i386/conf/GENERIC#4 integrate .. //depot/projects/iwarp/sys/i386/conf/NOTES#4 integrate .. //depot/projects/iwarp/sys/i386/conf/PAE#4 integrate .. //depot/projects/iwarp/sys/i386/i386/exception.s#2 integrate .. //depot/projects/iwarp/sys/i386/i386/machdep.c#4 integrate .. //depot/projects/iwarp/sys/i386/i386/pmap.c#5 integrate .. //depot/projects/iwarp/sys/i386/i386/trap.c#3 integrate .. //depot/projects/iwarp/sys/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/iwarp/sys/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/kern/Makefile#2 integrate .. //depot/projects/iwarp/sys/kern/imgact_elf.c#4 integrate .. //depot/projects/iwarp/sys/kern/init_main.c#4 integrate .. //depot/projects/iwarp/sys/kern/kern_conf.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_event.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_exec.c#5 integrate .. //depot/projects/iwarp/sys/kern/kern_mbuf.c#3 integrate .. //depot/projects/iwarp/sys/kern/kern_mib.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_module.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_mutex.c#4 integrate .. //depot/projects/iwarp/sys/kern/kern_pmc.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_proc.c#5 integrate .. //depot/projects/iwarp/sys/kern/kern_resource.c#2 integrate .. //depot/projects/iwarp/sys/kern/kern_rwlock.c#4 integrate .. //depot/projects/iwarp/sys/kern/kern_sig.c#4 integrate .. //depot/projects/iwarp/sys/kern/kern_sx.c#3 integrate .. //depot/projects/iwarp/sys/kern/kern_thread.c#5 integrate .. //depot/projects/iwarp/sys/kern/kern_umtx.c#3 integrate .. //depot/projects/iwarp/sys/kern/sched_4bsd.c#5 integrate .. //depot/projects/iwarp/sys/kern/sched_ule.c#4 integrate .. //depot/projects/iwarp/sys/kern/subr_bus.c#3 integrate .. //depot/projects/iwarp/sys/kern/subr_lock.c#3 integrate .. //depot/projects/iwarp/sys/kern/subr_trap.c#3 integrate .. //depot/projects/iwarp/sys/kern/sys_generic.c#3 integrate .. //depot/projects/iwarp/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/iwarp/sys/kern/uipc_sockbuf.c#3 integrate .. //depot/projects/iwarp/sys/kern/vfs_mount.c#3 integrate .. //depot/projects/iwarp/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/iwarp/sys/modules/Makefile#4 integrate .. //depot/projects/iwarp/sys/modules/cxgb/Makefile#3 integrate .. //depot/projects/iwarp/sys/modules/cxgb/toecore/Makefile#2 integrate .. //depot/projects/iwarp/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/iwarp/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/iwarp/sys/modules/netgraph/Makefile#2 edit .. //depot/projects/iwarp/sys/net/bridgestp.c#2 integrate .. //depot/projects/iwarp/sys/net/bridgestp.h#2 integrate .. //depot/projects/iwarp/sys/net/if.h#3 integrate .. //depot/projects/iwarp/sys/net/if_bridge.c#4 integrate .. //depot/projects/iwarp/sys/net/if_lagg.c#4 integrate .. //depot/projects/iwarp/sys/net/if_var.h#3 integrate .. //depot/projects/iwarp/sys/net/route.c#4 integrate .. //depot/projects/iwarp/sys/net/route.h#3 integrate .. //depot/projects/iwarp/sys/net80211/ieee80211.c#3 integrate .. //depot/projects/iwarp/sys/net80211/ieee80211_output.c#4 integrate .. //depot/projects/iwarp/sys/net80211/ieee80211_radiotap.h#2 integrate .. //depot/projects/iwarp/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/iwarp/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/iwarp/sys/netgraph/ng_l2tp.c#2 integrate .. //depot/projects/iwarp/sys/netinet/if_ether.c#6 integrate .. //depot/projects/iwarp/sys/netinet/if_ether.h#2 integrate .. //depot/projects/iwarp/sys/netinet/in_pcb.h#3 integrate .. //depot/projects/iwarp/sys/netinet/ip_fw2.c#4 integrate .. //depot/projects/iwarp/sys/netinet/ip_icmp.c#5 edit .. //depot/projects/iwarp/sys/netinet/libalias/alias_util.c#3 integrate .. //depot/projects/iwarp/sys/netinet/sctp.h#2 integrate .. //depot/projects/iwarp/sys/netinet/sctp_bsd_addr.c#3 integrate .. //depot/projects/iwarp/sys/netinet/sctp_output.c#4 integrate .. //depot/projects/iwarp/sys/netinet/sctp_structs.h#3 integrate .. //depot/projects/iwarp/sys/netinet/sctp_usrreq.c#4 integrate .. //depot/projects/iwarp/sys/netinet/sctputil.c#4 integrate .. //depot/projects/iwarp/sys/netinet/tcp.h#3 integrate .. //depot/projects/iwarp/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/iwarp/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/iwarp/sys/netinet/tcp_ofld.c#3 delete .. //depot/projects/iwarp/sys/netinet/tcp_ofld.h#3 delete .. //depot/projects/iwarp/sys/netinet/tcp_subr.c#5 integrate .. //depot/projects/iwarp/sys/netinet/tcp_syncache.c#4 integrate .. //depot/projects/iwarp/sys/netinet/tcp_syncache.h#2 integrate .. //depot/projects/iwarp/sys/netinet/tcp_usrreq.c#5 integrate .. //depot/projects/iwarp/sys/netinet/tcp_var.h#4 integrate .. //depot/projects/iwarp/sys/netinet/toedev.h#2 edit .. //depot/projects/iwarp/sys/netinet6/dest6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/frag6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/icmp6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_gif.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_gif.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_ifattach.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_pcb.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_pcb.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_proto.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_rmx.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_src.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/in6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_ecn.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_forward.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_id.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_input.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_ipsec.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_ipsec.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_mroute.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_mroute.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_output.c#3 integrate .. //depot/projects/iwarp/sys/netinet6/ip6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/ip6protosw.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/mld6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/mld6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/nd6.c#4 integrate .. //depot/projects/iwarp/sys/netinet6/nd6.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/nd6_nbr.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/nd6_rtr.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/pim6.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/pim6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/raw_ip6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/raw_ip6.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/route6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/scope6.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/scope6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/sctp6_usrreq.c#2 integrate .. //depot/projects/iwarp/sys/netinet6/sctp6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/tcp6_var.h#2 integrate .. //depot/projects/iwarp/sys/netinet6/udp6_usrreq.c#3 integrate .. //depot/projects/iwarp/sys/netinet6/udp6_var.h#2 integrate .. //depot/projects/iwarp/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/iwarp/sys/netncp/ncp_sock.c#2 integrate .. //depot/projects/iwarp/sys/netncp/ncp_sock.h#2 integrate .. //depot/projects/iwarp/sys/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/iwarp/sys/pci/if_rlreg.h#3 integrate .. //depot/projects/iwarp/sys/powerpc/aim/clock.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/copyinout.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/interrupt.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/locore.S#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/nexus.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/swtch.S#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/trap.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/conf/GENERIC#4 integrate .. //depot/projects/iwarp/sys/powerpc/conf/NOTES#2 integrate .. //depot/projects/iwarp/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/iwarp/sys/powerpc/include/bus.h#2 integrate .. //depot/projects/iwarp/sys/powerpc/include/fpu.h#2 integrate .. //depot/projects/iwarp/sys/powerpc/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/powerpc/powermac/grackle.c#2 integrate .. //depot/projects/iwarp/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/iwarp/sys/powerpc/powermac/uninorth.c#2 integrate .. //depot/projects/iwarp/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/iwarp/sys/powerpc/powerpc/clock.c#3 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/interrupt.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/locore.S#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/machdep.c#4 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/mmu_oea.c#3 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/nexus.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/swtch.S#3 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/trap.c#3 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/uio_machdep.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/uma_machdep.c#2 delete .. //depot/projects/iwarp/sys/powerpc/powerpc/vm_machdep.c#4 delete .. //depot/projects/iwarp/sys/powerpc/psim/iobus.c#2 integrate .. //depot/projects/iwarp/sys/security/audit/audit.c#4 integrate .. //depot/projects/iwarp/sys/security/mac/mac_posix_sem.c#3 integrate .. //depot/projects/iwarp/sys/sparc64/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/sun4v/include/pmc_mdep.h#2 integrate .. //depot/projects/iwarp/sys/sys/_lock.h#2 integrate .. //depot/projects/iwarp/sys/sys/ata.h#2 integrate .. //depot/projects/iwarp/sys/sys/cdefs.h#2 integrate .. //depot/projects/iwarp/sys/sys/disklabel.h#2 integrate .. //depot/projects/iwarp/sys/sys/kerneldump.h#2 integrate .. //depot/projects/iwarp/sys/sys/lock_profile.h#2 integrate .. //depot/projects/iwarp/sys/sys/param.h#6 integrate .. //depot/projects/iwarp/sys/sys/pcpu.h#4 integrate .. //depot/projects/iwarp/sys/sys/pmc.h#3 integrate .. //depot/projects/iwarp/sys/sys/pmckern.h#2 integrate .. //depot/projects/iwarp/sys/sys/pmclog.h#3 integrate .. //depot/projects/iwarp/sys/sys/proc.h#5 integrate .. //depot/projects/iwarp/sys/sys/selinfo.h#2 integrate .. //depot/projects/iwarp/sys/sys/socket.h#3 integrate .. //depot/projects/iwarp/sys/sys/socketvar.h#3 integrate .. //depot/projects/iwarp/sys/sys/sx.h#2 integrate .. //depot/projects/iwarp/sys/sys/systm.h#2 integrate .. //depot/projects/iwarp/sys/sys/tty.h#2 integrate .. //depot/projects/iwarp/sys/sys/ucred.h#2 integrate .. //depot/projects/iwarp/sys/vm/vm_contig.c#3 integrate .. //depot/projects/iwarp/sys/vm/vm_extern.h#4 integrate .. //depot/projects/iwarp/sys/vm/vm_page.c#5 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_BZIP2#2 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_GNU#2 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_GSSAPI#1 branch .. //depot/projects/iwarp/tools/build/options/WITHOUT_INSTALLLIB#1 branch .. //depot/projects/iwarp/tools/build/options/WITHOUT_KERBEROS#2 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_KVM#2 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_PAM#2 integrate .. //depot/projects/iwarp/tools/build/options/WITHOUT_TOOLCHAIN#2 integrate .. //depot/projects/iwarp/tools/build/options/makeman#3 integrate .. //depot/projects/iwarp/tools/regression/bin/mv/Makefile#1 branch .. //depot/projects/iwarp/tools/regression/bin/mv/regress.sh#1 branch .. //depot/projects/iwarp/tools/regression/bin/mv/regress.t#1 branch .. //depot/projects/iwarp/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/iwarp/tools/regression/lib/libc/stdio/test-scanfloat.c#3 integrate .. //depot/projects/iwarp/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/iwarp/tools/regression/lib/msun/test-csqrt.c#1 branch .. //depot/projects/iwarp/tools/regression/lib/msun/test-csqrt.t#1 branch .. //depot/projects/iwarp/tools/regression/lib/msun/test-lround.c#2 integrate .. //depot/projects/iwarp/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/iwarp/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/iwarp/tools/regression/lib/msun/test-next.c#2 integrate .. //depot/projects/iwarp/tools/regression/usr.bin/sed/multitest.t#2 integrate .. //depot/projects/iwarp/tools/regression/usr.bin/sed/regress.sh#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athdebug/athdebug.c#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/Makefile#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/athstats.c#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/athstats.h#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/main.c#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/statfoo.c#2 integrate .. //depot/projects/iwarp/tools/tools/ath/athstats/statfoo.h#2 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanstats/main.c#3 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanstats/statfoo.c#3 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanstats/statfoo.h#2 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanstats/wlanstats.c#3 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanstats/wlanstats.h#2 integrate .. //depot/projects/iwarp/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/iwarp/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#2 integrate .. //depot/projects/iwarp/usr.bin/ipcrm/ipcrm.c#2 integrate .. //depot/projects/iwarp/usr.bin/ipcs/ipcs.c#2 integrate .. //depot/projects/iwarp/usr.bin/kdump/kdump.c#2 integrate .. //depot/projects/iwarp/usr.bin/make/Makefile.dist#2 integrate .. //depot/projects/iwarp/usr.bin/ministat/Makefile#1 branch .. //depot/projects/iwarp/usr.bin/ministat/README#1 branch .. //depot/projects/iwarp/usr.bin/ministat/chameleon#1 branch .. //depot/projects/iwarp/usr.bin/ministat/iguana#1 branch .. //depot/projects/iwarp/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/iwarp/usr.bin/netstat/inet.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_args.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_bin.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_cred.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_files.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_kstack.c#2 integrate .. //depot/projects/iwarp/usr.bin/procstat/procstat_threads.c#2 integrate .. //depot/projects/iwarp/usr.bin/vmstat/Makefile#2 integrate .. //depot/projects/iwarp/usr.bin/vmstat/vmstat.8#2 integrate .. //depot/projects/iwarp/usr.bin/vmstat/vmstat.c#2 integrate .. //depot/projects/iwarp/usr.bin/xinstall/xinstall.c#2 integrate .. //depot/projects/iwarp/usr.sbin/Makefile#3 integrate .. //depot/projects/iwarp/usr.sbin/amd/amd/Makefile#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/fsinfo/Makefile#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/include/amu_autofs_prot.h#1 branch .. //depot/projects/iwarp/usr.sbin/amd/include/aux_conf.h#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/include/build_version.h#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/include/config.h#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/include/newvers.sh#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/libamu/Makefile#2 integrate .. //depot/projects/iwarp/usr.sbin/amd/mk-amd-map/Makefile#2 integrate .. //depot/projects/iwarp/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/iwarp/usr.sbin/iostat/iostat.c#2 integrate .. //depot/projects/iwarp/usr.sbin/mtree/verify.c#2 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/Makefile#3 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/add/pkg_add.1#3 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/create/pkg_create.1#2 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/delete/pkg_delete.1#2 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/info/pkg_info.1#2 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/updating/pkg_updating.1#2 integrate .. //depot/projects/iwarp/usr.sbin/pkg_install/version/pkg_version.1#2 integrate .. //depot/projects/iwarp/usr.sbin/pmcstat/Makefile#2 integrate .. //depot/projects/iwarp/usr.sbin/pmcstat/pmcstat.8#2 integrate .. //depot/projects/iwarp/usr.sbin/pmcstat/pmcstat.c#2 integrate .. //depot/projects/iwarp/usr.sbin/pmcstat/pmcstat.h#2 integrate .. //depot/projects/iwarp/usr.sbin/pmcstat/pmcstat_log.c#3 integrate .. //depot/projects/iwarp/usr.sbin/sysinstall/dist.c#3 integrate .. //depot/projects/iwarp/usr.sbin/sysinstall/dist.h#3 integrate .. //depot/projects/iwarp/usr.sbin/sysinstall/media.c#2 integrate .. //depot/projects/iwarp/usr.sbin/sysinstall/system.c#2 integrate .. //depot/projects/iwarp/usr.sbin/syslogd/syslogd.c#2 integrate .. //depot/projects/iwarp/usr.sbin/timed/timed/timed.8#2 integrate Differences ... ==== //depot/projects/iwarp/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.342 2007/10/18 08:41:52 delphij Exp $ +# $FreeBSD: src/Makefile,v 1.344 2007/12/13 00:08:02 imp Exp $ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 20 05:40:15 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6ABDA16A420; Thu, 20 Dec 2007 05:40:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 09C4B16A41A for ; Thu, 20 Dec 2007 05:40:15 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 00AA013C447 for ; Thu, 20 Dec 2007 05:40:15 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK5eEMC056754 for ; Thu, 20 Dec 2007 05:40:14 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK5eEKb056744 for perforce@freebsd.org; Thu, 20 Dec 2007 05:40:14 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 05:40:14 GMT Message-Id: <200712200540.lBK5eEKb056744@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131287 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 05:40:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=131287 Change 131287 by kmacy@kmacy_home:ethng on 2007/12/20 05:39:50 IFC 131284 force integrate added bits Affected files ... .. //depot/projects/ethng/src/lib/libthr/pthread.map#4 integrate .. //depot/projects/ethng/src/lib/libthr/thread/thr_syscalls.c#2 integrate .. //depot/projects/ethng/src/lib/msun/src/math.h#3 integrate .. //depot/projects/ethng/src/share/man/man4/ng_car.4#3 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/sys/cxgb_support.c#7 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/t3cdev.h#6 integrate .. //depot/projects/ethng/src/sys/dev/cxgb/ulp/toecore/toedev.h#3 delete .. //depot/projects/ethng/src/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/ethng/src/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/ethng/src/sys/vm/vm_phys.c#3 integrate .. //depot/projects/ethng/src/usr.sbin/wpa/wpa_supplicant/Makefile#4 integrate Differences ... ==== //depot/projects/ethng/src/lib/libthr/pthread.map#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libthr/pthread.map,v 1.20 2007/12/14 06:25:57 davidxu Exp $ + * $FreeBSD: src/lib/libthr/pthread.map,v 1.21 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -169,7 +169,6 @@ system; tcdrain; usleep; - vfork; wait; wait3; wait4; @@ -366,7 +365,6 @@ _spinlock; _spinlock_debug; _spinunlock; - _vfork; /* Debugger needs these. */ _libthr_debug; ==== //depot/projects/ethng/src/lib/libthr/thread/thr_syscalls.c#2 (text+ko) ==== @@ -28,7 +28,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/libthr/thread/thr_syscalls.c,v 1.16 2007/01/12 07:26:21 imp Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_syscalls.c,v 1.17 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -149,7 +149,6 @@ pid_t __wait4(pid_t, int *, int, struct rusage *); ssize_t __write(int, const void *, size_t); ssize_t __writev(int, const struct iovec *, int); -int _vfork(void); __weak_reference(__accept, accept); @@ -529,14 +528,6 @@ return (ret); } -__weak_reference(_vfork, vfork); - -int -_vfork(void) -{ - return (fork()); -} - __weak_reference(___wait, wait); pid_t ==== //depot/projects/ethng/src/lib/msun/src/math.h#3 (text+ko) ==== @@ -11,7 +11,7 @@ /* * from: @(#)fdlibm.h 5.1 93/09/24 - * $FreeBSD: src/lib/msun/src/math.h,v 1.63 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/src/math.h,v 1.65 2007/12/20 03:16:55 das Exp $ */ #ifndef _MATH_H_ @@ -436,10 +436,10 @@ long double log10l(long double); long double log1pl(long double); long double log2l(long double); +#endif long double logbl(long double); -#endif +#if 0 long double logl(long double); -#if 0 long lrintl(long double); #endif long lroundl(long double); ==== //depot/projects/ethng/src/share/man/man4/ng_car.4#3 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.5 2007/10/31 18:33:23 mav Exp $ +.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.6 2007/12/19 23:12:37 mav Exp $ .\" .Dd March 11, 2007 .Dt NG_CAR 4 @@ -108,6 +108,9 @@ links with bandwidth * delay product less than 6-8 TCP segments, but it consumes additional system resources for queue processing. .El +By default, all information rates are measured in bits per second and bursts +are measured in bytes. But when NG_CAR_COUNT_PACKETS option is enabled, +rates are measured in packets per second and bursts are in packets. .Sh CONTROL MESSAGES This node type supports the generic control messages and the following specific messages. @@ -120,17 +123,34 @@ .Vt "struct ng_car_bulkconf" .Bd -literal struct ng_car_hookconf { - u_int64_t cbs; /* Committed burst size (bytes) */ - u_int64_t ebs; /* Exceeded/Peak burst size (bytes) */ - u_int64_t cir; /* Committed information rate (bits/s) */ - u_int64_t pir; /* Peak information rate (bits/s) */ + u_int64_t cbs; /* Committed burst size */ + u_int64_t ebs; /* Exceeded/Peak burst size */ + u_int64_t cir; /* Committed information rate */ + u_int64_t pir; /* Peak information rate */ u_int8_t green_action; /* Action for green packets */ u_int8_t yellow_action; /* Action for yellow packets */ u_int8_t red_action; /* Action for red packets */ - u_int8_t mode; /* single/double rate, ... */ - u_int8_t opt; /* color-aware or color-blind */ + u_int8_t mode; /* operation mode */ + u_int8_t opt; /* mode options */ +}; + +/* possible actions (..._action) */ +enum { + NG_CAR_ACTION_FORWARD = 1, + NG_CAR_ACTION_DROP +}; + +/* operation modes (mode) */ +enum { + NG_CAR_SINGLE_RATE = 0, + NG_CAR_DOUBLE_RATE, + NG_CAR_RED, + NG_CAR_SHAPE }; +/* mode options (opt) */ +#define NG_CAR_COUNT_PACKETS 2 + struct ng_car_bulkconf { struct ng_car_hookconf upstream; struct ng_car_hookconf downstream; ==== //depot/projects/ethng/src/sys/dev/cxgb/sys/cxgb_support.c#7 (text+ko) ==== @@ -28,7 +28,7 @@ ***************************************************************************/ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/dev/cxgb/sys/cxgb_support.c,v 1.2 2007/12/17 08:17:50 kmacy Exp $"); #include #include @@ -126,11 +126,11 @@ if ((err = buf_stack_init(&ccp->ccp_cluster_free, (FL_Q_SIZE >> 1)))) return (err); - if (jumbo_phys_contig) +#if __FreeBSD_version > 800000 ccp->ccp_jumbo_zone = zone_jumbo9; - else +#else ccp->ccp_jumbo_zone = zone_jumbop; - +#endif return (0); } ==== //depot/projects/ethng/src/sys/dev/cxgb/t3cdev.h#6 (text+ko) ==== @@ -24,7 +24,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/cxgb/t3cdev.h,v 1.1 2007/12/15 21:54:58 kmacy Exp $ + * $FreeBSD: src/sys/dev/cxgb/t3cdev.h,v 1.2 2007/12/17 08:17:49 kmacy Exp $ */ #ifndef _T3CDEV_H_ #define _T3CDEV_H_ ==== //depot/projects/ethng/src/sys/dev/ofw/openpromio.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.7 2005/05/19 15:23:17 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.8 2007/12/20 00:31:04 marius Exp $"); #include #include @@ -101,12 +101,17 @@ char *buf; int error; + if ((flags & FREAD) == 0) + return (EPERM); + prop = buf = NULL; error = 0; - oprom = *(void **)data; switch (cmd) { case OPROMCHILD: case OPROMNEXT: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; @@ -135,6 +140,9 @@ break; case OPROMGETPROP: case OPROMNXTPROP: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; ==== //depot/projects/ethng/src/sys/modules/cxgb/cxgb/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/cxgb/Makefile,v 1.10 2007/09/09 01:28:02 kmacy Exp $ +# $FreeBSD: src/sys/modules/cxgb/cxgb/Makefile,v 1.3 2007/12/17 08:17:51 kmacy Exp $ CXGB = ${.CURDIR}/../../../dev/cxgb .PATH: ${CXGB} ${CXGB}/common ${CXGB}/sys @@ -8,9 +8,11 @@ SRCS+= cxgb_xgmac.c cxgb_vsc7323.c cxgb_t3_hw.c cxgb_main.c SRCS+= cxgb_sge.c cxgb_lro.c cxgb_offload.c cxgb_l2t.c SRCS+= device_if.h bus_if.h pci_if.h opt_zero.h opt_sched.h -SRCS+= uipc_mvec.c cxgb_multiq.c cxgb_support.c +SRCS+= uipc_mvec.c cxgb_support.c +SRCS+= cxgb_multiq.c CFLAGS+= -DCONFIG_CHELSIO_T3_CORE -g -DCONFIG_DEFINED -DDEFAULT_JUMBO -I${CXGB} -DSMP +#CFLAGS+= -DDISABLE_MBUF_IOVEC CFLAGS+= -DIFNET_MULTIQUEUE #CFLAGS+= -DDISABLE_MBUF_IOVEC ==== //depot/projects/ethng/src/sys/vm/vm_phys.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.4 2007/09/25 06:25:06 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.5 2007/12/19 23:09:45 alc Exp $"); #include "opt_ddb.h" @@ -486,7 +486,7 @@ */ seg = &vm_phys_segs[m->segind]; for (m_set = m, order = 0; m_set->order == VM_NFREEORDER && - order < VM_NFREEORDER; ) { + order < VM_NFREEORDER - 1; ) { order++; pa = m->phys_addr & (~(vm_paddr_t)0 << (PAGE_SHIFT + order)); KASSERT(pa >= seg->start && pa < seg->end, @@ -499,8 +499,6 @@ KASSERT(m_set->order < VM_NFREEORDER, ("vm_phys_unfree_page: page %p has unexpected order %d", m_set, m_set->order)); - KASSERT(order < VM_NFREEORDER, - ("vm_phys_unfree_page: order %d is out of range", order)); /* * Next, remove "m_set" from the free lists. Finally, extract ==== //depot/projects/ethng/src/usr.sbin/wpa/wpa_supplicant/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/usr.sbin/wpa/wpa_supplicant/Makefile,v 1.13 2007/11/10 20:26:08 sam Exp $ +# $FreeBSD: src/usr.sbin/wpa/wpa_supplicant/Makefile,v 1.14 2007/12/20 00:52:02 sam Exp $ .include @@ -10,6 +10,7 @@ wpa_supplicant.c events.c wpa.c preauth.c pmksa_cache.c \ ctrl_iface.c ctrl_iface_unix.c l2_packet.c main.c drivers.c \ driver_ndis.c Packet32.c \ + driver_wired.c \ driver_freebsd.c os_unix.c MAN= wpa_supplicant.8 wpa_supplicant.conf.5 @@ -22,6 +23,7 @@ CFLAGS+= -I${.CURDIR} -I${WPA_SUPPLICANT_DISTDIR} CFLAGS+= -DCONFIG_DRIVER_BSD CFLAGS+= -DCONFIG_DRIVER_NDIS +CFLAGS+= -DCONFIG_DRIVER_WIRED CFLAGS+= -DCONFIG_CTRL_IFACE CFLAGS+= -DCONFIG_CTRL_IFACE_UNIX CFLAGS+= -DCONFIG_TERMINATE_ONLASTIF From owner-p4-projects@FreeBSD.ORG Thu Dec 20 05:42:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CC2C16A46C; Thu, 20 Dec 2007 05:42:18 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5FC5616A418 for ; Thu, 20 Dec 2007 05:42:18 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4D87E13C458 for ; Thu, 20 Dec 2007 05:42:17 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK5gHMW057466 for ; Thu, 20 Dec 2007 05:42:17 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK5gHh5057462 for perforce@freebsd.org; Thu, 20 Dec 2007 05:42:17 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 05:42:17 GMT Message-Id: <200712200542.lBK5gHh5057462@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131288 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 05:42:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131288 Change 131288 by kmacy@kmacy:entropy:iwarp on 2007/12/20 05:41:22 IFethng 131287 Affected files ... .. //depot/projects/iwarp/lib/libthr/pthread.map#4 integrate .. //depot/projects/iwarp/lib/libthr/thread/thr_syscalls.c#2 integrate .. //depot/projects/iwarp/lib/msun/src/math.h#3 integrate .. //depot/projects/iwarp/share/man/man4/ng_car.4#3 integrate .. //depot/projects/iwarp/sys/dev/cxgb/sys/cxgb_support.c#5 integrate .. //depot/projects/iwarp/sys/dev/cxgb/t3cdev.h#4 integrate .. //depot/projects/iwarp/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/iwarp/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/iwarp/sys/vm/vm_phys.c#2 integrate .. //depot/projects/iwarp/usr.sbin/wpa/wpa_supplicant/Makefile#3 integrate Differences ... ==== //depot/projects/iwarp/lib/libthr/pthread.map#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libthr/pthread.map,v 1.20 2007/12/14 06:25:57 davidxu Exp $ + * $FreeBSD: src/lib/libthr/pthread.map,v 1.21 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -169,7 +169,6 @@ system; tcdrain; usleep; - vfork; wait; wait3; wait4; @@ -366,7 +365,6 @@ _spinlock; _spinlock_debug; _spinunlock; - _vfork; /* Debugger needs these. */ _libthr_debug; ==== //depot/projects/iwarp/lib/libthr/thread/thr_syscalls.c#2 (text+ko) ==== @@ -28,7 +28,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/libthr/thread/thr_syscalls.c,v 1.16 2007/01/12 07:26:21 imp Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_syscalls.c,v 1.17 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -149,7 +149,6 @@ pid_t __wait4(pid_t, int *, int, struct rusage *); ssize_t __write(int, const void *, size_t); ssize_t __writev(int, const struct iovec *, int); -int _vfork(void); __weak_reference(__accept, accept); @@ -529,14 +528,6 @@ return (ret); } -__weak_reference(_vfork, vfork); - -int -_vfork(void) -{ - return (fork()); -} - __weak_reference(___wait, wait); pid_t ==== //depot/projects/iwarp/lib/msun/src/math.h#3 (text+ko) ==== @@ -11,7 +11,7 @@ /* * from: @(#)fdlibm.h 5.1 93/09/24 - * $FreeBSD: src/lib/msun/src/math.h,v 1.63 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/src/math.h,v 1.65 2007/12/20 03:16:55 das Exp $ */ #ifndef _MATH_H_ @@ -436,10 +436,10 @@ long double log10l(long double); long double log1pl(long double); long double log2l(long double); +#endif long double logbl(long double); -#endif +#if 0 long double logl(long double); -#if 0 long lrintl(long double); #endif long lroundl(long double); ==== //depot/projects/iwarp/share/man/man4/ng_car.4#3 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.5 2007/10/31 18:33:23 mav Exp $ +.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.6 2007/12/19 23:12:37 mav Exp $ .\" .Dd March 11, 2007 .Dt NG_CAR 4 @@ -108,6 +108,9 @@ links with bandwidth * delay product less than 6-8 TCP segments, but it consumes additional system resources for queue processing. .El +By default, all information rates are measured in bits per second and bursts +are measured in bytes. But when NG_CAR_COUNT_PACKETS option is enabled, +rates are measured in packets per second and bursts are in packets. .Sh CONTROL MESSAGES This node type supports the generic control messages and the following specific messages. @@ -120,17 +123,34 @@ .Vt "struct ng_car_bulkconf" .Bd -literal struct ng_car_hookconf { - u_int64_t cbs; /* Committed burst size (bytes) */ - u_int64_t ebs; /* Exceeded/Peak burst size (bytes) */ - u_int64_t cir; /* Committed information rate (bits/s) */ - u_int64_t pir; /* Peak information rate (bits/s) */ + u_int64_t cbs; /* Committed burst size */ + u_int64_t ebs; /* Exceeded/Peak burst size */ + u_int64_t cir; /* Committed information rate */ + u_int64_t pir; /* Peak information rate */ u_int8_t green_action; /* Action for green packets */ u_int8_t yellow_action; /* Action for yellow packets */ u_int8_t red_action; /* Action for red packets */ - u_int8_t mode; /* single/double rate, ... */ - u_int8_t opt; /* color-aware or color-blind */ + u_int8_t mode; /* operation mode */ + u_int8_t opt; /* mode options */ +}; + +/* possible actions (..._action) */ +enum { + NG_CAR_ACTION_FORWARD = 1, + NG_CAR_ACTION_DROP +}; + +/* operation modes (mode) */ +enum { + NG_CAR_SINGLE_RATE = 0, + NG_CAR_DOUBLE_RATE, + NG_CAR_RED, + NG_CAR_SHAPE }; +/* mode options (opt) */ +#define NG_CAR_COUNT_PACKETS 2 + struct ng_car_bulkconf { struct ng_car_hookconf upstream; struct ng_car_hookconf downstream; ==== //depot/projects/iwarp/sys/dev/cxgb/sys/cxgb_support.c#5 (text+ko) ==== @@ -28,7 +28,7 @@ ***************************************************************************/ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/dev/cxgb/sys/cxgb_support.c,v 1.2 2007/12/17 08:17:50 kmacy Exp $"); #include #include @@ -126,11 +126,11 @@ if ((err = buf_stack_init(&ccp->ccp_cluster_free, (FL_Q_SIZE >> 1)))) return (err); - if (jumbo_phys_contig) +#if __FreeBSD_version > 800000 ccp->ccp_jumbo_zone = zone_jumbo16; - else +#else ccp->ccp_jumbo_zone = zone_jumbop; - +#endif return (0); } ==== //depot/projects/iwarp/sys/dev/cxgb/t3cdev.h#4 (text+ko) ==== @@ -24,7 +24,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/cxgb/t3cdev.h,v 1.1 2007/12/15 21:54:58 kmacy Exp $ + * $FreeBSD: src/sys/dev/cxgb/t3cdev.h,v 1.2 2007/12/17 08:17:49 kmacy Exp $ */ #ifndef _T3CDEV_H_ #define _T3CDEV_H_ ==== //depot/projects/iwarp/sys/dev/ofw/openpromio.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.7 2005/05/19 15:23:17 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.8 2007/12/20 00:31:04 marius Exp $"); #include #include @@ -101,12 +101,17 @@ char *buf; int error; + if ((flags & FREAD) == 0) + return (EPERM); + prop = buf = NULL; error = 0; - oprom = *(void **)data; switch (cmd) { case OPROMCHILD: case OPROMNEXT: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; @@ -135,6 +140,9 @@ break; case OPROMGETPROP: case OPROMNXTPROP: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; ==== //depot/projects/iwarp/sys/modules/cxgb/cxgb/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/cxgb/Makefile,v 1.10 2007/09/09 01:28:02 kmacy Exp $ +# $FreeBSD: src/sys/modules/cxgb/cxgb/Makefile,v 1.3 2007/12/17 08:17:51 kmacy Exp $ CXGB = ${.CURDIR}/../../../dev/cxgb .PATH: ${CXGB} ${CXGB}/common ${CXGB}/sys @@ -8,9 +8,11 @@ SRCS+= cxgb_xgmac.c cxgb_vsc7323.c cxgb_t3_hw.c cxgb_main.c SRCS+= cxgb_sge.c cxgb_lro.c cxgb_offload.c cxgb_l2t.c SRCS+= device_if.h bus_if.h pci_if.h opt_zero.h opt_sched.h -SRCS+= uipc_mvec.c cxgb_multiq.c cxgb_support.c +SRCS+= uipc_mvec.c cxgb_support.c +SRCS+= cxgb_multiq.c CFLAGS+= -DCONFIG_CHELSIO_T3_CORE -g -DCONFIG_DEFINED -DDEFAULT_JUMBO -I${CXGB} -DSMP +#CFLAGS+= -DDISABLE_MBUF_IOVEC CFLAGS+= -DIFNET_MULTIQUEUE #CFLAGS+= -DDISABLE_MBUF_IOVEC ==== //depot/projects/iwarp/sys/vm/vm_phys.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.4 2007/09/25 06:25:06 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.5 2007/12/19 23:09:45 alc Exp $"); #include "opt_ddb.h" @@ -486,7 +486,7 @@ */ seg = &vm_phys_segs[m->segind]; for (m_set = m, order = 0; m_set->order == VM_NFREEORDER && - order < VM_NFREEORDER; ) { + order < VM_NFREEORDER - 1; ) { order++; pa = m->phys_addr & (~(vm_paddr_t)0 << (PAGE_SHIFT + order)); KASSERT(pa >= seg->start && pa < seg->end, @@ -499,8 +499,6 @@ KASSERT(m_set->order < VM_NFREEORDER, ("vm_phys_unfree_page: page %p has unexpected order %d", m_set, m_set->order)); - KASSERT(order < VM_NFREEORDER, - ("vm_phys_unfree_page: order %d is out of range", order)); /* * Next, remove "m_set" from the free lists. Finally, extract ==== //depot/projects/iwarp/usr.sbin/wpa/wpa_supplicant/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/usr.sbin/wpa/wpa_supplicant/Makefile,v 1.13 2007/11/10 20:26:08 sam Exp $ +# $FreeBSD: src/usr.sbin/wpa/wpa_supplicant/Makefile,v 1.14 2007/12/20 00:52:02 sam Exp $ .include @@ -10,6 +10,7 @@ wpa_supplicant.c events.c wpa.c preauth.c pmksa_cache.c \ ctrl_iface.c ctrl_iface_unix.c l2_packet.c main.c drivers.c \ driver_ndis.c Packet32.c \ + driver_wired.c \ driver_freebsd.c os_unix.c MAN= wpa_supplicant.8 wpa_supplicant.conf.5 @@ -22,6 +23,7 @@ CFLAGS+= -I${.CURDIR} -I${WPA_SUPPLICANT_DISTDIR} CFLAGS+= -DCONFIG_DRIVER_BSD CFLAGS+= -DCONFIG_DRIVER_NDIS +CFLAGS+= -DCONFIG_DRIVER_WIRED CFLAGS+= -DCONFIG_CTRL_IFACE CFLAGS+= -DCONFIG_CTRL_IFACE_UNIX CFLAGS+= -DCONFIG_TERMINATE_ONLASTIF From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:35:15 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 14DBB16A469; Thu, 20 Dec 2007 06:35:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B46F116A421 for ; Thu, 20 Dec 2007 06:35:14 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AAFA313C4FB for ; Thu, 20 Dec 2007 06:35:14 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6ZEx1066696 for ; Thu, 20 Dec 2007 06:35:14 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6ZEhB066693 for perforce@freebsd.org; Thu, 20 Dec 2007 06:35:14 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 06:35:14 GMT Message-Id: <200712200635.lBK6ZEhB066693@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131292 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:35:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=131292 Change 131292 by kmacy@kmacy:entropy:iwarp on 2007/12/20 06:34:28 fix LINT build errors Affected files ... .. //depot/projects/iwarp/sys/contrib/rdma/rdma_addr.c#5 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_adapter.h#7 edit .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_multiq.c#4 edit .. //depot/projects/iwarp/sys/dev/cy/cy.c#2 edit .. //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_ppro.c#3 edit .. //depot/projects/iwarp/sys/kern/kern_switch.c#3 edit .. //depot/projects/iwarp/sys/net/if_ethersubr.c#5 edit .. //depot/projects/iwarp/sys/net/if_var.h#4 edit .. //depot/projects/iwarp/sys/sys/proc.h#6 edit Differences ... ==== //depot/projects/iwarp/sys/contrib/rdma/rdma_addr.c#5 (text+ko) ==== @@ -342,12 +342,11 @@ EXPORT_SYMBOL(rdma_addr_cancel); static void -route_event_callback(void *unused, int event, struct rtentry *rt0, struct rtentry *rt1) +route_event_arp_update(void *unused, struct rtentry *rt0, uint8_t *enaddr, + struct sockaddr *sa) { - if (event == RTEVENT_ARP_UPDATE) { callout_stop(&addr_ch); taskqueue_enqueue(addr_taskq, &addr_task); - } } static int addr_init(void) @@ -366,15 +365,15 @@ callout_init(&addr_ch, TRUE); - route_event_tag = EVENTHANDLER_REGISTER(route_event, - route_event_callback, NULL, EVENTHANDLER_PRI_ANY); + route_event_tag = EVENTHANDLER_REGISTER(route_arp_update_event, + route_event_arp_update, NULL, EVENTHANDLER_PRI_ANY); return 0; } static void addr_cleanup(void) { - EVENTHANDLER_DEREGISTER(route_event_callback, route_event_tag); + EVENTHANDLER_DEREGISTER(route_event_arp_update, route_event_tag); callout_stop(&addr_ch); taskqueue_drain(addr_taskq, &addr_task); taskqueue_free(addr_taskq); ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_adapter.h#7 (text+ko) ==== @@ -608,8 +608,6 @@ #ifdef IFNET_MULTIQUEUE int cxgb_pcpu_enqueue_packet(struct ifnet *ifp, struct mbuf *m); int cxgb_pcpu_start(struct ifnet *ifp, struct mbuf *m); -int32_t cxgb_pcpu_get_cookie(struct ifnet *ifp, struct in6_addr *lip, uint16_t lport, - struct in6_addr *rip, uint16_t rport, int ipv6); void cxgb_pcpu_shutdown_threads(struct adapter *sc); void cxgb_pcpu_startup_threads(struct adapter *sc); #endif ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_multiq.c#4 (text+ko) ==== @@ -224,7 +224,7 @@ return (count); } -int32_t +static int32_t cxgb_pcpu_get_cookie(struct ifnet *ifp, struct in6_addr *lip, uint16_t lport, struct in6_addr *rip, uint16_t rport, int ipv6) { uint32_t base; ==== //depot/projects/iwarp/sys/dev/cy/cy.c#2 (text+ko) ==== @@ -77,6 +77,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/iwarp/sys/dev/hwpmc/hwpmc_ppro.c#3 (text+ko) ==== @@ -390,7 +390,7 @@ if (pp->pp_flags & PMC_PP_ENABLE_MSR_ACCESS) load_cr4(rcr4() | CR4_PCE); - PMCDBG(MDP,SWI,1, "cr4=0x%x", rcr4()); + PMCDBG(MDP,SWI,1, "cr4=0x%lx", rcr4()); return 0; } @@ -401,7 +401,7 @@ (void) pc; (void) pp; /* can be NULL */ - PMCDBG(MDP,SWO,1, "pc=%p pp=%p cr4=0x%x", pc, pp, rcr4()); + PMCDBG(MDP,SWO,1, "pc=%p pp=%p cr4=0x%lx", pc, pp, rcr4()); /* always turn off the RDPMC instruction */ load_cr4(rcr4() & ~CR4_PCE); ==== //depot/projects/iwarp/sys/kern/kern_switch.c#3 (text+ko) ==== @@ -51,13 +51,6 @@ #include -/* Uncomment this to enable logging of critical_enter/exit. */ -#if 0 -#define KTR_CRITICAL KTR_SCHED -#else -#define KTR_CRITICAL 0 -#endif - #ifdef FULL_PREEMPTION #ifndef PREEMPTION #error "The FULL_PREEMPTION option requires the PREEMPTION option" ==== //depot/projects/iwarp/sys/net/if_ethersubr.c#5 (text+ko) ==== @@ -536,7 +536,7 @@ if (m->m_pkthdr.len > ETHER_MAX_FRAME(ifp, etype, m->m_flags & M_HASFCS) && (ifp->if_capenable & IFCAP_LRO) == 0) - goto err_out_print + goto err_out_print; #endif if (m->m_pkthdr.rcvif == NULL) ==== //depot/projects/iwarp/sys/net/if_var.h#4 (text+ko) ==== @@ -87,9 +87,6 @@ #define IF_DUNIT_NONE -1 #include -#ifdef IFNET_MULTIQUEUE -#include -#endif TAILQ_HEAD(ifnethead, ifnet); /* we use TAILQs so that the order of */ TAILQ_HEAD(ifaddrhead, ifaddr); /* instantiation is preserved in the list */ @@ -385,11 +382,7 @@ if_handoff((struct ifqueue *)ifq, m, ifp, adj) void if_start(struct ifnet *); -#ifdef IFNET_MULTIQUEUE int if_mq_start(struct ifnet *, struct mbuf *); -int if_mq_enqueue_packet(struct ifnet *, struct mbuf *); -int32_t if_mq_get_cookie(struct ifnet *ifp, struct in6_addr *lip, uint16_t lport, struct in6_addr *rip, uint16_t rport, int ipv6); -#endif extern int ifnet_multiqueue; /* allow driver module to confirm that multiqueue is supported */ ==== //depot/projects/iwarp/sys/sys/proc.h#6 (text+ko) ==== @@ -921,6 +921,13 @@ #include #include "opt_sched.h" +/* Uncomment this to enable logging of critical_enter/exit. */ +#if 0 +#define KTR_CRITICAL KTR_SCHED +#else +#define KTR_CRITICAL 0 +#endif + /* * Kernel thread preemption implementation. Critical sections mark * regions of code in which preemptions are not allowed. From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:43:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26CD616A56E; Thu, 20 Dec 2007 06:43:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B7B2616A55A for ; Thu, 20 Dec 2007 06:43:23 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 89A1C13C510 for ; Thu, 20 Dec 2007 06:43:23 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6hNrt067960 for ; Thu, 20 Dec 2007 06:43:23 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6hNn2067955 for perforce@freebsd.org; Thu, 20 Dec 2007 06:43:23 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 06:43:23 GMT Message-Id: <200712200643.lBK6hNn2067955@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131293 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:43:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131293 Change 131293 by kmacy@kmacy:entropy:iwarp on 2007/12/20 06:42:44 remove rum from GENERIC Affected files ... .. //depot/projects/iwarp/sys/amd64/conf/GENERIC#5 edit Differences ... ==== //depot/projects/iwarp/sys/amd64/conf/GENERIC#5 (text+ko) ==== @@ -200,7 +200,6 @@ device ulpt # Printer device umass # Disks/Mass storage - Requires scbus and da device ums # Mouse -device rum # Ralink Technology RT2501USB wireless NICs device urio # Diamond Rio 500 MP3 player device uscanner # Scanners From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:50:32 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F142D16A420; Thu, 20 Dec 2007 06:50:31 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8716616A417 for ; Thu, 20 Dec 2007 06:50:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7DE6813C4EA for ; Thu, 20 Dec 2007 06:50:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6oVlw068676 for ; Thu, 20 Dec 2007 06:50:31 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6oV9A068673 for perforce@freebsd.org; Thu, 20 Dec 2007 06:50:31 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 06:50:31 GMT Message-Id: <200712200650.lBK6oV9A068673@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131294 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:50:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=131294 Change 131294 by jb@jb_freebsd1 on 2007/12/20 06:49:53 More compatibility cruft. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/atomic.h#6 edit Differences ... ==== //depot/projects/dtrace/src/sys/compat/opensolaris/sys/atomic.h#6 (text+ko) ==== @@ -32,7 +32,9 @@ #include #include -#define casptr atomic_cmpset_ptr +#define casptr(_a, _b, _c) \ + atomic_cmpset_ptr((volatile uintptr_t *)(_a), (uintptr_t)(_b), (uintptr_t) (_c)) +#define cas32 atomic_cmpset_32 #ifndef __LP64__ extern void atomic_add_64(volatile uint64_t *target, int64_t delta); From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:54:36 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F27F316A473; Thu, 20 Dec 2007 06:54:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ACD5516A46C for ; Thu, 20 Dec 2007 06:54:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A3E6B13C4D1 for ; Thu, 20 Dec 2007 06:54:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6sZYq069645 for ; Thu, 20 Dec 2007 06:54:35 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6sZxA069642 for perforce@freebsd.org; Thu, 20 Dec 2007 06:54:35 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 06:54:35 GMT Message-Id: <200712200654.lBK6sZxA069642@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131295 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:54:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=131295 Change 131295 by jb@jb_freebsd1 on 2007/12/20 06:54:13 Choose to typedef struct pcpu as pcpu_t rather than cpu_t so that cpu_t can be redefined depening on what we're try to provide compatibility for. There is a case where the OpenSolaris cyclic timer device uses fields in struct pcpu (or their equivalent), but I don't want to soil our pcpu with stuff to make it all opaque to get around the CDDL. Instead I'll just give the cyclic timer device a cpu array of it's own and it turns out I want to refer to that with a cpu_t. (or something like that) Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/pcpu.h#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/compat/opensolaris/sys/pcpu.h#4 (text+ko) ==== @@ -32,7 +32,9 @@ #include_next -typedef struct pcpu cpu_t; +typedef struct pcpu pcpu_t; + +#define cpu_t pcpu_t #define cpu_id pc_cpuid From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:55:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B29DA16A419; Thu, 20 Dec 2007 06:55:37 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5121F16A417 for ; Thu, 20 Dec 2007 06:55:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2FC6D13C4E3 for ; Thu, 20 Dec 2007 06:55:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6tbut069729 for ; Thu, 20 Dec 2007 06:55:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6tbDb069726 for perforce@freebsd.org; Thu, 20 Dec 2007 06:55:37 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 06:55:37 GMT Message-Id: <200712200655.lBK6tbDb069726@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131296 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:55:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=131296 Change 131296 by jb@jb_freebsd1 on 2007/12/20 06:54:57 More compatibility cruft. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/sema.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:57:41 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7DBFC16A421; Thu, 20 Dec 2007 06:57:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EEA5616A417 for ; Thu, 20 Dec 2007 06:57:40 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DFDC413C457 for ; Thu, 20 Dec 2007 06:57:40 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6veWW069820 for ; Thu, 20 Dec 2007 06:57:40 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6veTm069815 for perforce@freebsd.org; Thu, 20 Dec 2007 06:57:40 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 06:57:40 GMT Message-Id: <200712200657.lBK6veTm069815@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131297 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:57:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=131297 Change 131297 by jb@jb_freebsd1 on 2007/12/20 06:57:03 Suck in a bit more compatibility stuff from the genuine OpenSolaris header. The problem with the real one is that it brings in too much of the OpenSolaris internals that we don't want to have to deal with. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/cpuvar.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/compat/opensolaris/sys/cpuvar.h#3 (text+ko) ==== @@ -54,6 +54,47 @@ #endif /* _KERNEL */ /* + * Flags in the CPU structure. + * + * These are protected by cpu_lock (except during creation). + * + * Offlined-CPUs have three stages of being offline: + * + * CPU_ENABLE indicates that the CPU is participating in I/O interrupts + * that can be directed at a number of different CPUs. If CPU_ENABLE + * is off, the CPU will not be given interrupts that can be sent elsewhere, + * but will still get interrupts from devices associated with that CPU only, + * and from other CPUs. + * + * CPU_OFFLINE indicates that the dispatcher should not allow any threads + * other than interrupt threads to run on that CPU. A CPU will not have + * CPU_OFFLINE set if there are any bound threads (besides interrupts). + * + * CPU_QUIESCED is set if p_offline was able to completely turn idle the + * CPU and it will not have to run interrupt threads. In this case it'll + * stay in the idle loop until CPU_QUIESCED is turned off. + * + * CPU_FROZEN is used only by CPR to mark CPUs that have been successfully + * suspended (in the suspend path), or have yet to be resumed (in the resume + * case). + * + * On some platforms CPUs can be individually powered off. + * The following flags are set for powered off CPUs: CPU_QUIESCED, + * CPU_OFFLINE, and CPU_POWEROFF. The following flags are cleared: + * CPU_RUNNING, CPU_READY, CPU_EXISTS, and CPU_ENABLE. + */ +#define CPU_RUNNING 0x001 /* CPU running */ +#define CPU_READY 0x002 /* CPU ready for cross-calls */ +#define CPU_QUIESCED 0x004 /* CPU will stay in idle */ +#define CPU_EXISTS 0x008 /* CPU is configured */ +#define CPU_ENABLE 0x010 /* CPU enabled for interrupts */ +#define CPU_OFFLINE 0x020 /* CPU offline via p_online */ +#define CPU_POWEROFF 0x040 /* CPU is powered off */ +#define CPU_FROZEN 0x080 /* CPU is frozen via CPR suspend */ +#define CPU_SPARE 0x100 /* CPU offline available for use */ +#define CPU_FAULTED 0x200 /* CPU offline diagnosed faulty */ + +/* * DTrace flags. */ #define CPU_DTRACE_NOFAULT 0x0001 /* Don't fault */ From owner-p4-projects@FreeBSD.ORG Thu Dec 20 06:58:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A57016A421; Thu, 20 Dec 2007 06:58:43 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EABB416A419 for ; Thu, 20 Dec 2007 06:58:42 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E00DB13C468 for ; Thu, 20 Dec 2007 06:58:42 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK6wgMU069873 for ; Thu, 20 Dec 2007 06:58:42 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK6wfO9069870 for perforce@freebsd.org; Thu, 20 Dec 2007 06:58:41 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 06:58:41 GMT Message-Id: <200712200658.lBK6wfO9069870@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131298 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 06:58:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131298 Change 131298 by kmacy@kmacy:storage:toehead on 2007/12/20 06:58:15 IFC 131289 Affected files ... .. //depot/projects/toehead/lib/libc/amd64/Symbol.map#3 integrate .. //depot/projects/toehead/lib/libc/i386/Symbol.map#3 integrate .. //depot/projects/toehead/lib/libc/ia64/Symbol.map#3 integrate .. //depot/projects/toehead/lib/libc/sparc64/Symbol.map#3 integrate .. //depot/projects/toehead/lib/libc/stdio/Symbol.map#2 integrate .. //depot/projects/toehead/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/toehead/lib/libc/sys/select.2#2 integrate .. //depot/projects/toehead/lib/libfetch/Makefile#3 integrate .. //depot/projects/toehead/lib/libfetch/common.c#3 integrate .. //depot/projects/toehead/lib/libfetch/fetch.c#3 integrate .. //depot/projects/toehead/lib/libfetch/ftp.c#3 integrate .. //depot/projects/toehead/lib/libfetch/http.c#3 integrate .. //depot/projects/toehead/lib/libthr/pthread.map#3 integrate .. //depot/projects/toehead/lib/libthr/thread/thr_exit.c#2 integrate .. //depot/projects/toehead/lib/libthr/thread/thr_syscalls.c#2 integrate .. //depot/projects/toehead/lib/msun/ld128/s_nanl.c#2 integrate .. //depot/projects/toehead/lib/msun/ld80/s_nanl.c#2 integrate .. //depot/projects/toehead/lib/msun/src/math.h#3 integrate .. //depot/projects/toehead/lib/msun/src/math_private.h#2 integrate .. //depot/projects/toehead/lib/msun/src/s_nan.c#2 integrate .. //depot/projects/toehead/share/man/man4/ng_car.4#2 integrate .. //depot/projects/toehead/share/man/man4/syncache.4#2 integrate .. //depot/projects/toehead/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/toehead/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/toehead/share/misc/Makefile#2 integrate .. //depot/projects/toehead/share/misc/bsd-family-tree#2 integrate .. //depot/projects/toehead/sys/arm/at91/at91.c#3 integrate .. //depot/projects/toehead/sys/boot/forth/support.4th#2 integrate .. //depot/projects/toehead/sys/conf/files.powerpc#3 integrate .. //depot/projects/toehead/sys/dev/aac/aac.c#2 integrate .. //depot/projects/toehead/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/toehead/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/toehead/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/toehead/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/toehead/sys/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/toehead/sys/kern/subr_bus.c#2 integrate .. //depot/projects/toehead/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/toehead/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/toehead/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/toehead/sys/netinet/tcp_syncache.c#5 integrate .. //depot/projects/toehead/sys/powerpc/aim/ofw_machdep.c#2 integrate .. //depot/projects/toehead/sys/powerpc/conf/NOTES#3 integrate .. //depot/projects/toehead/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/toehead/sys/powerpc/include/bus.h#2 integrate .. //depot/projects/toehead/sys/powerpc/powermac/grackle.c#2 integrate .. //depot/projects/toehead/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/toehead/sys/powerpc/powermac/uninorth.c#2 integrate .. //depot/projects/toehead/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/toehead/sys/powerpc/psim/iobus.c#2 integrate .. //depot/projects/toehead/sys/vm/vm_page.c#3 integrate .. //depot/projects/toehead/sys/vm/vm_phys.c#2 integrate .. //depot/projects/toehead/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/toehead/usr.bin/ministat/Makefile#1 branch .. //depot/projects/toehead/usr.bin/ministat/README#1 branch .. //depot/projects/toehead/usr.bin/ministat/chameleon#1 branch .. //depot/projects/toehead/usr.bin/ministat/iguana#1 branch .. //depot/projects/toehead/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/toehead/usr.sbin/boot98cfg/boot98cfg.c#2 integrate .. //depot/projects/toehead/usr.sbin/wpa/wpa_supplicant/Makefile#2 integrate Differences ... ==== //depot/projects/toehead/lib/libc/amd64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.5 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/amd64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -71,7 +71,4 @@ _end; __sys_vfork; _vfork; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/toehead/lib/libc/i386/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.6 2007/12/16 21:15:56 das Exp $ + * $FreeBSD: src/lib/libc/i386/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -68,7 +68,4 @@ _brk; .curbrk; .minbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/toehead/lib/libc/ia64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.5 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/ia64/Symbol.map,v 1.6 2007/12/18 23:46:32 das Exp $ */ /* @@ -69,7 +69,4 @@ minbrk; .cerror; curbrk; - - /* used in libm */ - __ULtox_D2A; }; ==== //depot/projects/toehead/lib/libc/sparc64/Symbol.map#3 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.6 2007/12/16 21:15:57 das Exp $ + * $FreeBSD: src/lib/libc/sparc64/Symbol.map,v 1.7 2007/12/18 23:46:32 das Exp $ */ /* @@ -96,7 +96,4 @@ /* used in src/lib/csu/sparc64/crt1.c */ __sparc_utrap_setup; - - /* used in libm */ - __ULtoQ_D2A; }; ==== //depot/projects/toehead/lib/libc/stdio/Symbol.map#2 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.5 2007/04/29 14:05:19 deischen Exp $ + * $FreeBSD: src/lib/libc/stdio/Symbol.map,v 1.6 2007/12/18 23:49:05 das Exp $ */ FBSD_1.0 { @@ -108,6 +108,19 @@ __swbuf; wprintf; wscanf; +}; + +FBSDprivate_1.0 { + _flockfile; + _flockfile_debug_stub; + _flockfile_debug; + _ftrylockfile; + _funlockfile; + __vfscanf; + + /* + * xprintf support + */ __use_xprintf; __lowercase_hex; __uppercase_hex; @@ -136,12 +149,3 @@ __printf_arginfo_vis; __printf_render_vis; }; - -FBSDprivate_1.0 { - _flockfile; - _flockfile_debug_stub; - _flockfile_debug; - _ftrylockfile; - _funlockfile; - __vfscanf; -}; ==== //depot/projects/toehead/lib/libc/stdtime/localtime.c#2 (text+ko) ==== @@ -9,7 +9,7 @@ static char elsieid[] __unused = "@(#)localtime.c 7.78"; #endif /* !defined NOID */ #endif /* !defined lint */ -__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.41 2007/01/19 01:16:35 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdtime/localtime.c,v 1.42 2007/12/19 04:30:10 imp Exp $"); /* ** Leap second handling from Bradley White (bww@k.gp.cs.cmu.edu). @@ -1093,14 +1093,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&localtime_mutex); if (localtime_key < 0) { - if (_pthread_key_create(&localtime_key, free) < 0) { - _pthread_mutex_unlock(&localtime_mutex); - return(NULL); + _pthread_mutex_lock(&localtime_mutex); + if (localtime_key < 0) { + if (_pthread_key_create(&localtime_key, free) < 0) { + _pthread_mutex_unlock(&localtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&localtime_mutex); } - _pthread_mutex_unlock(&localtime_mutex); p_tm = _pthread_getspecific(localtime_key); if (p_tm == NULL) { if ((p_tm = (struct tm *)malloc(sizeof(struct tm))) @@ -1146,16 +1148,18 @@ const long offset; struct tm * const tmp; { - _MUTEX_LOCK(&gmt_mutex); if (!gmt_is_set) { - gmt_is_set = TRUE; + _MUTEX_LOCK(&gmt_mutex); + if (!gmt_is_set) { #ifdef ALL_STATE - gmtptr = (struct state *) malloc(sizeof *gmtptr); - if (gmtptr != NULL) + gmtptr = (struct state *) malloc(sizeof *gmtptr); + if (gmtptr != NULL) #endif /* defined ALL_STATE */ - gmtload(gmtptr); + gmtload(gmtptr); + gmt_is_set = TRUE; + } + _MUTEX_UNLOCK(&gmt_mutex); } - _MUTEX_UNLOCK(&gmt_mutex); timesub(timep, offset, gmtptr, tmp); #ifdef TM_ZONE /* @@ -1187,14 +1191,16 @@ struct tm *p_tm; if (__isthreaded != 0) { - _pthread_mutex_lock(&gmtime_mutex); if (gmtime_key < 0) { - if (_pthread_key_create(&gmtime_key, free) < 0) { - _pthread_mutex_unlock(&gmtime_mutex); - return(NULL); + _pthread_mutex_lock(&gmtime_mutex); + if (gmtime_key < 0) { + if (_pthread_key_create(&gmtime_key, free) < 0) { + _pthread_mutex_unlock(&gmtime_mutex); + return(NULL); + } } + _pthread_mutex_unlock(&gmtime_mutex); } - _pthread_mutex_unlock(&gmtime_mutex); /* * Changed to follow POSIX.1 threads standard, which * is what BSD currently has. ==== //depot/projects/toehead/lib/libc/sys/select.2#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 -.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.33 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/select.2,v 1.34 2007/12/19 03:33:13 imp Exp $ .\" .Dd November 17, 2002 .Dt SELECT 2 @@ -222,3 +222,6 @@ by the .Fn select system call. +.Fx +does not modify the return value, which can cause problems for applications +ported from other systems. ==== //depot/projects/toehead/lib/libfetch/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libfetch/Makefile,v 1.50 2007/12/14 10:26:58 des Exp $ +# $FreeBSD: src/lib/libfetch/Makefile,v 1.51 2007/12/19 05:10:07 ru Exp $ .include @@ -27,9 +27,9 @@ SHLIB_MAJOR= 5 -ftperr.h: ftp.errors +ftperr.h: ftp.errors ${.CURDIR}/Makefile @echo "static struct fetcherr ftp_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/ftp.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ @@ -38,9 +38,9 @@ @echo " { -1, FETCH_UNKNOWN, \"Unknown FTP error\" }" >> ${.TARGET} @echo "};" >> ${.TARGET} -httperr.h: http.errors +httperr.h: http.errors ${.CURDIR}/Makefile @echo "static struct fetcherr http_errlist[] = {" > ${.TARGET} - @cat ${.ALLSRC} \ + @cat ${.CURDIR}/http.errors \ | grep -v ^# \ | sort \ | while read NUM CAT STRING; do \ ==== //depot/projects/toehead/lib/libfetch/common.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.52 2007/12/18 11:03:07 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/common.c,v 1.53 2007/12/19 00:26:36 des Exp $"); #include #include @@ -763,12 +763,12 @@ p = no_proxy; do { /* position p at the beginning of a domain suffix */ - while (*p == ',' || isspace((int)*p)) + while (*p == ',' || isspace((unsigned char)*p)) p++; /* position q at the first separator character */ for (q = p; *q; ++q) - if (*q == ',' || isspace((int)*q)) + if (*q == ',' || isspace((unsigned char)*q)) break; d_len = q - p; ==== //depot/projects/toehead/lib/libfetch/fetch.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.40 2007/12/18 10:41:12 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/fetch.c,v 1.41 2007/12/19 00:26:36 des Exp $"); #include #include @@ -369,7 +369,7 @@ /* port */ if (*p == ':') { for (q = ++p; *q && (*q != '/'); q++) - if (isdigit((int)*q)) + if (isdigit((unsigned char)*q)) u->port = u->port * 10 + (*q - '0'); else { /* invalid port */ @@ -395,7 +395,7 @@ } u->doc = doc; while (*p != '\0') { - if (!isspace((int)*p)) { + if (!isspace((unsigned char)*p)) { *doc++ = *p++; } else { *doc++ = '%'; ==== //depot/projects/toehead/lib/libfetch/ftp.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.99 2007/12/18 11:03:07 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/ftp.c,v 1.100 2007/12/19 00:26:36 des Exp $"); /* * Portions of this code were taken from or based on ftpio.c: @@ -102,11 +102,16 @@ static struct url cached_host; static conn_t *cached_connection; -#define isftpreply(foo) (isdigit((int)foo[0]) && isdigit((int)foo[1]) \ - && isdigit((int)foo[2]) \ - && (foo[3] == ' ' || foo[3] == '\0')) -#define isftpinfo(foo) (isdigit((int)foo[0]) && isdigit((int)foo[1]) \ - && isdigit((int)foo[2]) && foo[3] == '-') +#define isftpreply(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + (foo[3] == ' ' || foo[3] == '\0')) +#define isftpinfo(foo) \ + (isdigit((unsigned char)foo[0]) && \ + isdigit((unsigned char)foo[1]) && \ + isdigit((unsigned char)foo[2]) && \ + foo[3] == '-') /* * Translate IPv4 mapped IPv6 address to IPv4 address @@ -150,7 +155,8 @@ } } - while (conn->buflen && isspace((int)conn->buf[conn->buflen - 1])) + while (conn->buflen && + isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; @@ -414,11 +420,11 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace((int)*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; - for (us->size = 0; *ln && isdigit((int)*ln); ln++) + for (us->size = 0; *ln && isdigit((unsigned char)*ln); ln++) us->size = us->size * 10 + *ln - '0'; - if (*ln && !isspace((int)*ln)) { + if (*ln && !isspace((unsigned char)*ln)) { ftp_seterr(FTP_PROTOCOL_ERROR); us->size = -1; return (-1); @@ -432,7 +438,7 @@ ftp_seterr(e); return (-1); } - for (ln = conn->buf + 4; *ln && isspace((int)*ln); ln++) + for (ln = conn->buf + 4; *ln && isspace((unsigned char)*ln); ln++) /* nothing */ ; switch (strspn(ln, "0123456789")) { case 14: @@ -691,7 +697,7 @@ switch (e) { case FTP_PASSIVE_MODE: case FTP_LPASSIVE_MODE: - for (p = ln + 3; *p && !isdigit((int)*p); p++) + for (p = ln + 3; *p && !isdigit((unsigned char)*p); p++) /* nothing */ ; if (!*p) { e = FTP_PROTOCOL_ERROR; ==== //depot/projects/toehead/lib/libfetch/http.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.81 2007/12/18 11:03:07 des Exp $"); +__FBSDID("$FreeBSD: src/lib/libfetch/http.c,v 1.82 2007/12/19 00:26:36 des Exp $"); /* * The following copyright applies to the base64 code: @@ -137,15 +137,15 @@ if (fetch_getln(io->conn) == -1) return (-1); - if (io->conn->buflen < 2 || !isxdigit((int)*io->conn->buf)) + if (io->conn->buflen < 2 || !isxdigit((unsigned char)*io->conn->buf)) return (-1); - for (p = io->conn->buf; *p && !isspace((int)*p); ++p) { + for (p = io->conn->buf; *p && !isspace((unsigned char)*p); ++p) { if (*p == ';') break; - if (!isxdigit((int)*p)) + if (!isxdigit((unsigned char)*p)) return (-1); - if (isdigit((int)*p)) { + if (isdigit((unsigned char)*p)) { io->chunksize = io->chunksize * 16 + *p - '0'; } else { @@ -417,8 +417,10 @@ return (HTTP_PROTOCOL_ERROR); p += 4; } - if (*p != ' ' || !isdigit((int)p[1]) || - !isdigit((int)p[2]) || !isdigit((int)p[3])) + if (*p != ' ' || + !isdigit((unsigned char)p[1]) || + !isdigit((unsigned char)p[2]) || + !isdigit((unsigned char)p[3])) return (HTTP_PROTOCOL_ERROR); conn->err = (p[1] - '0') * 100 + (p[2] - '0') * 10 + (p[3] - '0'); @@ -436,7 +438,7 @@ /* nothing */; if (*str || *hdr != ':') return (NULL); - while (*hdr && isspace((int)*++hdr)) + while (*hdr && isspace((unsigned char)*++hdr)) /* nothing */; return (hdr); } @@ -451,7 +453,7 @@ if (fetch_getln(conn) == -1) return (hdr_syserror); - while (conn->buflen && isspace((int)conn->buf[conn->buflen - 1])) + while (conn->buflen && isspace((unsigned char)conn->buf[conn->buflen - 1])) conn->buflen--; conn->buf[conn->buflen] = '\0'; if (conn->buflen == 0) @@ -500,7 +502,7 @@ { off_t len; - for (len = 0; *p && isdigit((int)*p); ++p) + for (len = 0; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + (*p - '0'); if (*p) return (-1); @@ -525,16 +527,16 @@ first = last = -1; ++p; } else { - for (first = 0; *p && isdigit((int)*p); ++p) + for (first = 0; *p && isdigit((unsigned char)*p); ++p) first = first * 10 + *p - '0'; if (*p != '-') return (-1); - for (last = 0, ++p; *p && isdigit((int)*p); ++p) + for (last = 0, ++p; *p && isdigit((unsigned char)*p); ++p) last = last * 10 + *p - '0'; } if (first > last || *p != '/') return (-1); - for (len = 0, ++p; *p && isdigit((int)*p); ++p) + for (len = 0, ++p; *p && isdigit((unsigned char)*p); ++p) len = len * 10 + *p - '0'; if (*p || len < last - first + 1) return (-1); @@ -750,7 +752,7 @@ comment = tag = 0; while ((line = fgetln(in, &len)) != NULL) { - while (len && isspace((int)line[len - 1])) + while (len && isspace((unsigned char)line[len - 1])) --len; for (p = q = line; q < line + len; ++q) { if (comment && *q == '-') { ==== //depot/projects/toehead/lib/libthr/pthread.map#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libthr/pthread.map,v 1.20 2007/12/14 06:25:57 davidxu Exp $ + * $FreeBSD: src/lib/libthr/pthread.map,v 1.21 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -169,7 +169,6 @@ system; tcdrain; usleep; - vfork; wait; wait3; wait4; @@ -366,7 +365,6 @@ _spinlock; _spinlock_debug; _spinunlock; - _vfork; /* Debugger needs these. */ _libthr_debug; ==== //depot/projects/toehead/lib/libthr/thread/thr_exit.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_exit.c,v 1.23 2007/01/12 07:26:20 imp Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_exit.c,v 1.24 2007/12/20 04:40:12 davidxu Exp $ */ #include @@ -100,7 +100,7 @@ /* Save the return value: */ curthread->ret = status; while (curthread->cleanup != NULL) { - pthread_cleanup_pop(1); + _pthread_cleanup_pop(1); } /* Check if there is thread specific data: */ ==== //depot/projects/toehead/lib/libthr/thread/thr_syscalls.c#2 (text+ko) ==== @@ -28,7 +28,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/libthr/thread/thr_syscalls.c,v 1.16 2007/01/12 07:26:21 imp Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_syscalls.c,v 1.17 2007/12/20 04:32:28 davidxu Exp $ */ /* @@ -149,7 +149,6 @@ pid_t __wait4(pid_t, int *, int, struct rusage *); ssize_t __write(int, const void *, size_t); ssize_t __writev(int, const struct iovec *, int); -int _vfork(void); __weak_reference(__accept, accept); @@ -529,14 +528,6 @@ return (ret); } -__weak_reference(_vfork, vfork); - -int -_vfork(void) -{ - return (fork()); -} - __weak_reference(___wait, wait); pid_t ==== //depot/projects/toehead/lib/msun/ld128/s_nanl.c#2 (text+ko) ==== @@ -23,25 +23,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/msun/ld128/s_nanl.c,v 1.1 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/ld128/s_nanl.c,v 1.2 2007/12/18 23:46:31 das Exp $ */ #include #include "fpmath.h" -#include "../../../contrib/gdtoa/gdtoaimp.h" +#include "../src/math_private.h" long double nanl(const char *s) { - static FPI fpi = { 113, -16494, 16271, 1, SI }; + union { + union IEEEl2bits ieee; + uint32_t bits[4]; + } u; - union IEEEl2bits result; - ULong bits[2]; - int k; - - s--; - k = hexnan(&s, &fpi, bits); - ULtoQ((UShort *)&result.e, bits, 16272, k); - return (result.e); + _scan_nan(u.bits, 4, s); + u.ieee.bits.exp = 0x7fff; + u.ieee.bits.manh |= 1 << 47; /* make it a quiet NaN */ + return (u.ieee.e); } ==== //depot/projects/toehead/lib/msun/ld80/s_nanl.c#2 (text+ko) ==== @@ -23,25 +23,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/msun/ld80/s_nanl.c,v 1.1 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/ld80/s_nanl.c,v 1.2 2007/12/18 23:46:31 das Exp $ */ #include #include "fpmath.h" -#include "../../../contrib/gdtoa/gdtoaimp.h" +#include "../src/math_private.h" long double nanl(const char *s) { - static FPI fpi = { 64, -16445, 16320, 1, SI }; + union { + union IEEEl2bits ieee; + uint32_t bits[3]; + } u; - union IEEEl2bits result; - ULong bits[2]; - int k; - - s--; - k = hexnan(&s, &fpi, bits); - ULtox((UShort *)&result.e, bits, 16321, k); - return (result.e); + _scan_nan(u.bits, 3, s); + u.ieee.bits.exp = 0x7fff; + u.ieee.bits.manh |= 0xc0000000; /* make it a quiet NaN */ + return (u.ieee.e); } ==== //depot/projects/toehead/lib/msun/src/math.h#3 (text+ko) ==== @@ -11,7 +11,7 @@ /* * from: @(#)fdlibm.h 5.1 93/09/24 - * $FreeBSD: src/lib/msun/src/math.h,v 1.63 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/src/math.h,v 1.65 2007/12/20 03:16:55 das Exp $ */ #ifndef _MATH_H_ @@ -436,10 +436,10 @@ long double log10l(long double); long double log1pl(long double); long double log2l(long double); +#endif long double logbl(long double); -#endif +#if 0 long double logl(long double); -#if 0 long lrintl(long double); #endif long lroundl(long double); ==== //depot/projects/toehead/lib/msun/src/math_private.h#2 (text+ko) ==== @@ -11,7 +11,7 @@ /* * from: @(#)fdlibm.h 5.1 93/09/24 - * $FreeBSD: src/lib/msun/src/math_private.h,v 1.20 2005/11/28 04:58:57 bde Exp $ + * $FreeBSD: src/lib/msun/src/math_private.h,v 1.21 2007/12/18 23:46:32 das Exp $ */ #ifndef _MATH_PRIVATE_H_ @@ -154,6 +154,11 @@ (d) = sf_u.value; \ } while (0) +/* + * Common routine to process the arguments to nan(), nanf(), and nanl(). + */ +void _scan_nan(uint32_t *__words, int __num_words, const char *__s); + #ifdef _COMPLEX_H /* * Inline functions that can be used to construct complex values. ==== //depot/projects/toehead/lib/msun/src/s_nan.c#2 (text+ko) ==== @@ -23,42 +23,86 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/msun/src/s_nan.c,v 1.1 2007/12/16 21:19:28 das Exp $ + * $FreeBSD: src/lib/msun/src/s_nan.c,v 1.2 2007/12/18 23:46:32 das Exp $ */ +#include +#include #include #include +#include +#include -#include "../../../contrib/gdtoa/gdtoaimp.h" #include "math_private.h" +/* + * Scan a string of hexadecimal digits (the format nan(3) expects) and + * make a bit array (using the local endianness). We stop when we + * encounter an invalid character, NUL, etc. If we overflow, we do + * the same as gcc's __builtin_nan(), namely, discard the high order bits. + * + * The format this routine accepts needs to be compatible with what is used + * in contrib/gdtoa/hexnan.c (for strtod/scanf) and what is used in + * __builtin_nan(). In fact, we're only 100% compatible for strings we + * consider valid, so we might be violating the C standard. But it's + * impossible to use nan(3) portably anyway, so this seems good enough. + */ +void +_scan_nan(uint32_t *words, int num_words, const char *s) +{ + int si; /* index into s */ + int bitpos; /* index into words (in bits) */ + + bzero(words, num_words * sizeof(uint32_t)); + + /* Allow a leading '0x'. (It's expected, but redundant.) */ + if (s[0] == '0' && (s[1] == 'x' || s[1] == 'X')) + s += 2; + + /* Scan forwards in the string, looking for the end of the sequence. */ + for (si = 0; isxdigit(s[si]); si++) + ; + + /* Scan backwards, filling in the bits in words[] as we go. */ +#if _BYTE_ORDER == _LITTLE_ENDIAN + for (bitpos = 0; bitpos < 32 * num_words; bitpos += 4) { +#else + for (bitpos = 32 * num_words - 4; bitpos >= 0; bitpos -= 4) { +#endif + if (--si < 0) + break; + words[bitpos / 32] |= digittoint(s[si]) << (bitpos % 32); + } +} + double nan(const char *s) { - static FPI fpi = { 52, -1074, 971, 1, SI }; + union { + double d; + uint32_t bits[2]; + } u; - double result; - ULong bits[2]; - - s--; - hexnan(&s, &fpi, bits); - SET_HIGH_WORD(result, 0x7ff80000 | bits[1]); - SET_LOW_WORD(result, bits[0]); - return (result); + _scan_nan(u.bits, 2, s); +#if _BYTE_ORDER == _LITTLE_ENDIAN + u.bits[1] |= 0x7ff80000; +#else + u.bits[0] |= 0x7ff80000; +#endif + return (u.d); } float nanf(const char *s) { - static FPI fpi = { 24, -149, 104, 1, SI }; + union { + float f; + uint32_t bits[1]; + } u; - float result; - ULong bits[1]; - - s--; - hexnan(&s, &fpi, bits); - SET_FLOAT_WORD(result, 0x7fc00000 | bits[0]); - return (result); + _scan_nan(u.bits, 1, s); + u.bits[0] |= 0x7fc00000; + return (u.f); } #if (LDBL_MANT_DIG == 53) ==== //depot/projects/toehead/share/man/man4/ng_car.4#2 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.5 2007/10/31 18:33:23 mav Exp $ +.\" $FreeBSD: src/share/man/man4/ng_car.4,v 1.6 2007/12/19 23:12:37 mav Exp $ .\" .Dd March 11, 2007 .Dt NG_CAR 4 @@ -108,6 +108,9 @@ links with bandwidth * delay product less than 6-8 TCP segments, but it consumes additional system resources for queue processing. .El +By default, all information rates are measured in bits per second and bursts +are measured in bytes. But when NG_CAR_COUNT_PACKETS option is enabled, +rates are measured in packets per second and bursts are in packets. .Sh CONTROL MESSAGES This node type supports the generic control messages and the following specific messages. @@ -120,17 +123,34 @@ .Vt "struct ng_car_bulkconf" .Bd -literal struct ng_car_hookconf { - u_int64_t cbs; /* Committed burst size (bytes) */ - u_int64_t ebs; /* Exceeded/Peak burst size (bytes) */ - u_int64_t cir; /* Committed information rate (bits/s) */ - u_int64_t pir; /* Peak information rate (bits/s) */ + u_int64_t cbs; /* Committed burst size */ + u_int64_t ebs; /* Exceeded/Peak burst size */ + u_int64_t cir; /* Committed information rate */ + u_int64_t pir; /* Peak information rate */ u_int8_t green_action; /* Action for green packets */ u_int8_t yellow_action; /* Action for yellow packets */ u_int8_t red_action; /* Action for red packets */ - u_int8_t mode; /* single/double rate, ... */ - u_int8_t opt; /* color-aware or color-blind */ + u_int8_t mode; /* operation mode */ + u_int8_t opt; /* mode options */ +}; + +/* possible actions (..._action) */ +enum { + NG_CAR_ACTION_FORWARD = 1, + NG_CAR_ACTION_DROP +}; + +/* operation modes (mode) */ +enum { + NG_CAR_SINGLE_RATE = 0, + NG_CAR_DOUBLE_RATE, + NG_CAR_RED, + NG_CAR_SHAPE }; +/* mode options (opt) */ +#define NG_CAR_COUNT_PACKETS 2 + struct ng_car_bulkconf { struct ng_car_hookconf upstream; struct ng_car_hookconf downstream; ==== //depot/projects/toehead/share/man/man4/syncache.4#2 (text+ko) ==== @@ -10,9 +10,9 @@ .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" -.\" $FreeBSD: src/share/man/man4/syncache.4,v 1.3 2006/04/11 15:30:13 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/syncache.4,v 1.4 2007/12/19 16:58:54 ru Exp $ .\" -.Dd August 31, 2001 +.Dd December 18, 2007 .Dt SYNCACHE 4 .Os .Sh NAME @@ -132,7 +132,7 @@ .Xr loader 8 . .It Va rexmtlimit Maximum number of times a SYN,ACK is retransmitted before being discarded. -The default of 3 retransmits corresponds to a 15 second timeout, this value +The default of 3 retransmits corresponds to a 45 second timeout, this value may be increased depending on the RTT to client machines. Tunable via .Xr sysctl 3 . ==== //depot/projects/toehead/share/man/man9/BUS_SETUP_INTR.9#2 (text+ko) ==== @@ -22,9 +22,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.20 2007/03/01 14:33:29 ru Exp $ +.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.22 2007/12/19 08:01:24 brueffer Exp $ .\" -.Dd March 1, 2007 +.Dd December 18, 2007 .Dt BUS_SETUP_INTR 9 .Os .Sh NAME @@ -90,6 +90,9 @@ that will not execute any potentially blocking operation, use the .Fa filter argument. +See the +.Sx "Filter Routine" +section below for information on writing a filter. Otherwise, use the .Fa ithread argument. @@ -97,6 +100,9 @@ will be called with the value .Fa arg as its only argument. +See the +.Sx "ithread Routine" +section below for more information on writing an interrupt handler. .Pp The .Fa cookiep @@ -121,13 +127,86 @@ will no longer be called. .Pp Mutexes are not allowed to be held across calls to these functions. +.Ss "Filter Routines" +A filter runs in a context very similar to what was known as an +.Dv INTR_FAST +routine in previous versions of +.Fx . +In this context, normal mutexes cannot be used. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 20 08:06:57 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 16D6616A41B; Thu, 20 Dec 2007 08:06:57 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 98CD016A418 for ; Thu, 20 Dec 2007 08:06:56 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8E37613C47E for ; Thu, 20 Dec 2007 08:06:56 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBK86uLW082342 for ; Thu, 20 Dec 2007 08:06:56 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBK86uUU082339 for perforce@freebsd.org; Thu, 20 Dec 2007 08:06:56 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 08:06:56 GMT Message-Id: <200712200806.lBK86uUU082339@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131303 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 08:06:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=131303 Change 131303 by kmacy@kmacy:storage:toehead on 2007/12/20 08:06:03 IFC loose ends Affected files ... .. //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 edit .. //depot/projects/toehead/sys/netinet/if_ether.c#4 edit .. //depot/projects/toehead/sys/netinet/toedev.h#2 edit Differences ... ==== //depot/projects/toehead/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 (text+ko) ==== @@ -147,6 +147,10 @@ static inline void free_atid(struct t3cdev *cdev, unsigned int tid); static void handle_syncache_event(int event, void *arg); +#ifndef TCP_USRREQS_OVERLOAD +#define cxgb_tcp_drop tcp_drop +#endif + static inline int is_t3a(const struct toedev *dev) ==== //depot/projects/toehead/sys/netinet/if_ether.c#4 (text+ko) ==== @@ -888,10 +888,6 @@ la->la_preempt = arp_maxtries; hold = la->la_hold; la->la_hold = NULL; - - sin.sin_addr.s_addr = ntohl(itaddr.s_addr); - EVENTHANDLER_INVOKE(route_event, RTEVENT_ARP_UPDATE, rt, NULL, - (struct sockaddr *)&sin); RT_UNLOCK(rt); if (hold != NULL) (*ifp->if_output)(ifp, hold, rt_key(rt), rt); ==== //depot/projects/toehead/sys/netinet/toedev.h#2 (text+ko) ==== @@ -1,46 +1,46 @@ +/*- + * Copyright (c) 2007, Chelsio Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 2. Neither the name of the Chelsio Corporation nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD: src/sys/netinet/toedev.h,v 1.4 2007/12/16 05:30:21 kmacy Exp $ + */ -/************************************************************************** +#ifndef _NETINET_TOEDEV_H_ +#define _NETINET_TOEDEV_H_ -Copyright (c) 2007, Chelsio Inc. -All rights reserved. +#ifndef _KERNEL +#error "no user-serviceable parts inside" +#endif -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Neither the name of the Chelsio Corporation nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. - -$FreeBSD: src/sys/dev/cxgb/ulp/toecore/toedev.h,v 1.1 2007/05/25 16:17:59 kmacy Exp $ - -***************************************************************************/ - -#ifndef _OFFLOAD_DEV_H_ -#define _OFFLOAD_DEV_H_ - - -/* Parameter values for offload_get_phys_egress() */ +/* Parameter values for offload_get_phys_egress(). */ enum { TOE_OPEN, TOE_FAILOVER, }; -/* Parameter values for toe_failover() */ +/* Parameter values for toe_failover(). */ enum { TOE_ACTIVE_SLAVE, TOE_LINK_DOWN, @@ -49,16 +49,14 @@ TOE_RELEASE_ALL, }; -#define TOENAMSIZ 16 +#define TOENAMSIZ 16 -/* belongs in linux/netdevice.h */ -#define NETIF_F_TCPIP_OFFLOAD (1 << 15) +/* Get the toedev associated with a ifnet. */ +#define TOEDEV(ifp) ((ifp)->if_llsoftc) -/* Get the toedev associated with a ifnet */ -#define TOEDEV(ifp) ((ifp)->if_llsoftc) struct offload_id { - unsigned int id; - unsigned long data; + unsigned int id; + unsigned long data; }; struct ifnet; @@ -70,87 +68,73 @@ struct toedev { TAILQ_ENTRY(toedev) entry; - char name[TOENAMSIZ]; /* TOE device name */ - unsigned int ttid; /* TOE type id */ - unsigned long flags; /* device flags */ - unsigned int mtu; /* max size of TX offloaded data */ - unsigned int nconn; /* max # of offloaded connections */ - struct ifnet *lldev; /* LL device associated with TOE messages */ - const struct tom_info *offload_mod; /* attached TCP offload module */ - struct sysctl_oid *sysctl_root; /* root of proc dir for this TOE */ - int (*open)(struct toedev *dev); - int (*close)(struct toedev *dev); - int (*can_offload)(struct toedev *dev, struct socket *so); - int (*connect)(struct toedev *dev, struct socket *so, - struct ifnet *egress_ifp); - int (*send)(struct toedev *dev, struct mbuf *m); - int (*recv)(struct toedev *dev, struct mbuf **m, int n); - int (*ctl)(struct toedev *dev, unsigned int req, void *data); - void (*arp_update)(struct toedev *dev, struct rtentry *neigh); - void (*failover)(struct toedev *dev, struct ifnet *bond_ifp, + char tod_name[TOENAMSIZ]; /* TOE device name */ + unsigned int tod_ttid; /* TOE type id */ + unsigned long tod_flags; /* device flags */ + unsigned int tod_mtu; /* max TX offloaded data */ + unsigned int tod_nconn; /* max # of offloaded + * connections + */ + struct ifnet *tod_lldev; /* first interface */ + const struct tom_info *tod_offload_mod; /* TCP offload module */ + + int (*tod_open)(struct toedev *dev); + int (*tod_close)(struct toedev *dev); + int (*tod_can_offload)(struct toedev *dev, struct socket *so); + int (*tod_connect)(struct toedev *dev, struct socket *so, + struct rtentry *rt, struct sockaddr *nam); + int (*tod_send)(struct toedev *dev, struct mbuf *m); + int (*tod_recv)(struct toedev *dev, struct mbuf **m, int n); + int (*tod_ctl)(struct toedev *dev, unsigned int req, void *data); + void (*tod_arp_update)(struct toedev *dev, struct rtentry *neigh); + void (*tod_failover)(struct toedev *dev, struct ifnet *bond_ifp, struct ifnet *ndev, int event); - void *priv; /* driver private data */ - void *l2opt; /* optional layer 2 data */ - void *l3opt; /* optional layer 3 data */ - void *l4opt; /* optional layer 4 data */ - void *ulp; /* ulp stuff */ + void *tod_priv; /* driver private data */ + void *tod_l2opt; /* optional layer 2 data */ + void *tod_l3opt; /* optional layer 3 data */ + void *tod_l4opt; /* optional layer 4 data */ + void *tod_ulp; /* upper lever protocol */ }; struct tom_info { - TAILQ_ENTRY(tom_info) entry; - int (*attach)(struct toedev *dev, const struct offload_id *entry); - int (*detach)(struct toedev *dev); - const char *name; - const struct offload_id *id_table; + TAILQ_ENTRY(tom_info) entry; + int (*ti_attach)(struct toedev *dev, + const struct offload_id *entry); + int (*ti_detach)(struct toedev *dev); + const char *ti_name; + const struct offload_id *ti_id_table; }; -static inline void init_offload_dev(struct toedev *dev) +static __inline void +init_offload_dev(struct toedev *dev) { +} + +int register_tom(struct tom_info *t); +int unregister_tom(struct tom_info *t); +int register_toedev(struct toedev *dev, const char *name); +int unregister_toedev(struct toedev *dev); +int activate_offload(struct toedev *dev); +int toe_send(struct toedev *dev, struct mbuf *m); +void toe_arp_update(struct rtentry *rt); +struct ifnet *offload_get_phys_egress(struct ifnet *ifp, + struct socket *so, int context); +int toe_receive_mbuf(struct toedev *dev, struct mbuf **m, int n); +static __inline void +toe_neigh_update(struct ifnet *ifp) +{ } -extern int register_tom(struct tom_info *t); -extern int unregister_tom(struct tom_info *t); -extern int register_toedev(struct toedev *dev, const char *name); -extern int unregister_toedev(struct toedev *dev); -extern int activate_offload(struct toedev *dev); -extern int toe_send(struct toedev *dev, struct mbuf *m); -extern void toe_arp_update(struct rtentry *rt); -extern struct ifnet *offload_get_phys_egress(struct ifnet *dev, - struct socket *so, - int context); -extern int toe_receive_mbuf(struct toedev *dev, struct mbuf **m, int n); - -#if defined(CONFIG_TCP_OFFLOAD_MODULE) -static inline int toe_receive_mbuf(struct toedev *dev, struct mbuf **m, - int n) +static __inline void +toe_failover(struct ifnet *bond_ifp, struct ifnet *fail_ifp, int event) { - return dev->recv(dev, m, n); } -extern int prepare_tcp_for_offload(void); -extern void restore_tcp_to_nonoffload(void); -#elif defined(CONFIG_TCP_OFFLOAD) -extern int toe_receive_mbuf(struct toedev *dev, struct mbuf **m, int n); -#endif - -#if defined(CONFIG_TCP_OFFLOAD) || \ - (defined(CONFIG_TCP_OFFLOAD_MODULE) && defined(MODULE)) -extern void toe_neigh_update(struct rtentry *neigh); -extern void toe_failover(struct ifnet *bond_ifp, - struct ifnet *fail_ifp, int event); -extern int toe_enslave(struct ifnet *bond_ifp, - struct ifnet *slave_ifp); -#else -static inline void toe_neigh_update(struct ifnet *neigh) {} -static inline void toe_failover(struct ifnet *bond_ifp, - struct ifnet *fail_ifp, int event) -{} -static inline int toe_enslave(struct ifnet *bond_ifp, - struct ifnet *slave_ifp) +static __inline int +toe_enslave(struct ifnet *bond_ifp, struct ifnet *slave_ifp) { - return 0; + return (0); } -#endif /* CONFIG_TCP_OFFLOAD */ -#endif /* _OFFLOAD_DEV_H_ */ +#endif /* _NETINET_TOEDEV_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Dec 20 12:47:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0979116A419; Thu, 20 Dec 2007 12:47:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8FDD316A41B for ; Thu, 20 Dec 2007 12:47:51 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8445513C4CC for ; Thu, 20 Dec 2007 12:47:51 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKClpLQ061588 for ; Thu, 20 Dec 2007 12:47:51 GMT (envelope-from raj@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKClpT4061585 for perforce@freebsd.org; Thu, 20 Dec 2007 12:47:51 GMT (envelope-from raj@freebsd.org) Date: Thu, 20 Dec 2007 12:47:51 GMT Message-Id: <200712201247.lBKClpT4061585@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to raj@freebsd.org using -f From: Rafal Jaworowski To: Perforce Change Reviews Cc: Subject: PERFORCE change 131305 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 12:47:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131305 Change 131305 by raj@raj_mimi on 2007/12/20 12:47:41 Catch up with recent -current merges, so e500 builds again Affected files ... .. //depot/projects/e500/sys/powerpc/booke/machdep.c#3 edit .. //depot/projects/e500/sys/powerpc/booke/pmap.c#4 edit Differences ... ==== //depot/projects/e500/sys/powerpc/booke/machdep.c#3 (text+ko) ==== @@ -162,8 +162,6 @@ struct bootinfo *bootinfo; -extern vm_offset_t kstack0[]; - char machine[] = "powerpc"; SYSCTL_STRING(_hw, HW_MACHINE, machine, CTLFLAG_RD, machine, 0, ""); ==== //depot/projects/e500/sys/powerpc/booke/pmap.c#4 (text+ko) ==== @@ -1241,7 +1241,7 @@ * Initialize a preallocated and zeroed pmap structure, * such as one in a vmspace structure. */ -void +int pmap_pinit(pmap_t pmap) { //struct thread *td; @@ -1263,6 +1263,7 @@ TAILQ_INIT(&pmap->ptbl_list); //debugf("pmap_pinit: e\n"); + return (1); } /* @@ -2162,6 +2163,33 @@ return (FALSE); } +/* + * Return the number of managed mappings to the given physical page that are + * wired. + */ +int +pmap_page_wired_mappings(vm_page_t m) +{ + pv_entry_t pv; + pte_t *pte; + pmap_t pmap; + int count; + + count = 0; + if ((m->flags & PG_FICTITIOUS) != 0) + return (count); + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_link) { + pmap = pv->pv_pmap; + PMAP_LOCK(pmap); + if ((pte = pte_find(pmap, pv->pv_va)) != NULL) + if (PTE_ISWIRED(pte)) + count++; + PMAP_UNLOCK(pmap); + } + return (count); +} + int pmap_dev_direct_mapped(vm_offset_t pa, vm_size_t size) { From owner-p4-projects@FreeBSD.ORG Thu Dec 20 13:07:13 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 31D1C16A419; Thu, 20 Dec 2007 13:07:13 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6230E16A41A for ; Thu, 20 Dec 2007 13:07:12 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4E32E13C4EB for ; Thu, 20 Dec 2007 13:07:12 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKD7CgP065585 for ; Thu, 20 Dec 2007 13:07:12 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKD7BD7065582 for perforce@freebsd.org; Thu, 20 Dec 2007 13:07:11 GMT (envelope-from gcooper@FreeBSD.org) Date: Thu, 20 Dec 2007 13:07:11 GMT Message-Id: <200712201307.lBKD7BD7065582@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131306 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 13:07:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=131306 Change 131306 by gcooper@shiina-ibook on 2007/12/20 13:07:08 Zap some more todo's.. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_match.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#3 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_match.c#2 (text+ko) ==== @@ -221,7 +221,6 @@ static int pkg_match_name(struct pkg *pkg, const void *data) { - /** @todo pkg_match_name() can be public as it has no custom struct */ int i; /* Use a union as I couldn't cast a const void * to a const char ** */ union { @@ -288,4 +287,4 @@ /** * @} - */+ */ ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#3 (text+ko) ==== @@ -400,7 +400,6 @@ /** * @brief Reads up to length bytes from a file * @return A string containing the data or NULL - * @todo Change to return "const char *" and not do the strdup */ const char * pkgfile_get_data(struct pkgfile *file) @@ -420,9 +419,8 @@ return file->name; case pkgfile_hardlink: assert(file->loc == pkgfile_loc_mem); - if (file->loc == pkgfile_loc_mem) { + if (file->loc == pkgfile_loc_mem) return file->data; - } break; case pkgfile_regular: @@ -431,17 +429,31 @@ /* Load the file to the data pointer */ if (file->data == NULL && file->length > 0) { file->data = malloc(file->length); + + int read_amt; + if (file->data == NULL) return NULL; + /* - * Read up to length bytes - * from the file to data + * Read up to length bytes from the file to data + */ + read_amt = fread(file->data, sizeof(char), + file->length, file->fd); + /* + * If the lengths don't match, print out an error and bail.. */ - /** @todo check length < size left in file */ - fread(file->data, 1, file->length, file->fd); + if (read_amt != file->length) { + fprintf(stderr, "Number of fread(3) elements (%d) " + "!= file length (%d)", read_amt, + (int) file->length); + return NULL; + } + } } + /** FALL-THROUGH **/ case pkgfile_symlink: return file->data; @@ -699,7 +711,11 @@ const char * pkgfile_find_line(struct pkgfile *file, const char *line) { - char *buf; + char *buf, *new_buf; + + const int line_length = strlen(line); + + int buf_remaining; if (file == NULL || line == NULL) return NULL; @@ -712,14 +728,30 @@ pkgfile_get_data(file); buf = file->data; - /** @todo Change the length of the buffer left on each iteration */ - while ((buf = memmem(buf, file->length, line, strlen(line))) != NULL) { + + buf_remaining = file->length; + + while (0 < buf_remaining && buf != NULL) { + + new_buf = memmem(buf, file->length, line, line_length); + + if (new_buf == NULL) + break; + + buf_remaining -= (new_buf - buf); + + if (buf == NULL) + break; + + buf = new_buf; + /* Check the found line is complete */ if ((buf == file->data || buf[-1] == '\n') && - (buf + strlen(line) == file->data + file->length || - buf[strlen(line)] == '\n')) { + (buf + line_length == file->data + file->length || + buf[line_length] == '\n')) { break; } + } return buf; From owner-p4-projects@FreeBSD.ORG Thu Dec 20 18:24:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B18D016A469; Thu, 20 Dec 2007 18:24:48 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5D37216A418 for ; Thu, 20 Dec 2007 18:24:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 434F613C468 for ; Thu, 20 Dec 2007 18:24:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKIOm1M030371 for ; Thu, 20 Dec 2007 18:24:48 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKIOm63030368 for perforce@freebsd.org; Thu, 20 Dec 2007 18:24:48 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 18:24:48 GMT Message-Id: <200712201824.lBKIOm63030368@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131312 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 18:24:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131312 Change 131312 by hselasky@hselasky_laptop001 on 2007/12/20 18:24:11 This commit is device side related. Add automagic handling of USB CDC descriptors with regard to the interface numbers. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#5 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#5 (text+ko) ==== @@ -44,22 +44,40 @@ #include #include #include +#include static void usbd_make_raw_desc(struct usbd_temp_setup *temp, const uint8_t *raw) { void *dst; + uint8_t len; /* * The first byte of any USB descriptor gives the length. */ if (raw) { + len = raw[0]; if (temp->buf) { dst = USBD_ADD_BYTES(temp->buf, temp->size); - bcopy(raw, dst, raw[0]); + bcopy(raw, dst, len); + + /* check if we have got a CDC union descriptor */ + + if ((raw[0] >= sizeof(usb_cdc_union_descriptor_t)) && + (raw[1] == UDESC_CS_INTERFACE) && + (raw[2] == UDESCSUB_CDC_UNION)) { + usb_cdc_union_descriptor_t *ud = (void *)dst; + + /* update the interface numbers */ + + ud->bMasterInterface += + temp->bInterfaceNumber; + ud->bSlaveInterface[0] += + temp->bInterfaceNumber; + } } - temp->size += raw[0]; + temp->size += len; } return; } From owner-p4-projects@FreeBSD.ORG Thu Dec 20 18:27:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5EF4816A46B; Thu, 20 Dec 2007 18:27:52 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2479316A469 for ; Thu, 20 Dec 2007 18:27:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E181013C4E9 for ; Thu, 20 Dec 2007 18:27:51 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKIRptJ030538 for ; Thu, 20 Dec 2007 18:27:51 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKIRp3N030535 for perforce@freebsd.org; Thu, 20 Dec 2007 18:27:51 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 18:27:51 GMT Message-Id: <200712201827.lBKIRp3N030535@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131314 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 18:27:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131314 Change 131314 by hselasky@hselasky_laptop001 on 2007/12/20 18:27:20 Add USB CDC Ethernet Template. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.h#6 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template_cdce.c#1 add Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.h#6 (text+ko) ==== @@ -80,4 +80,8 @@ uint8_t iSerialNumber; }; +/* prototypes */ + +extern const struct usb_temp_device_desc usb_template_cdce; + #endif /* _USB_TEMPLATE_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Dec 20 18:29:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6CFF116A49C; Thu, 20 Dec 2007 18:29:55 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C648316A420 for ; Thu, 20 Dec 2007 18:29:54 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AC39F13C45A for ; Thu, 20 Dec 2007 18:29:54 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKITsBl030610 for ; Thu, 20 Dec 2007 18:29:54 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKITs5o030607 for perforce@freebsd.org; Thu, 20 Dec 2007 18:29:54 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 18:29:54 GMT Message-Id: <200712201829.lBKITs5o030607@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131316 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 18:29:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=131316 Change 131316 by hselasky@hselasky_laptop001 on 2007/12/20 18:29:52 Compile fix. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#3 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#3 (text+ko) ==== @@ -759,7 +759,7 @@ /* setup temp */ temp.td = NULL; - temp.td_next = xfer->td_start; + temp.td_next = xfer->td_start[0]; temp.setup_alt_next = xfer->flags_int.short_frames_ok; temp.offset = 0; temp.pc = NULL; @@ -2216,7 +2216,7 @@ parm->size[0] += sizeof(*td); } - xfer->td_start = last_obj; + xfer->td_start[0] = last_obj; return; } From owner-p4-projects@FreeBSD.ORG Thu Dec 20 18:55:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2F83B16A420; Thu, 20 Dec 2007 18:55:28 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D0DAC16A419 for ; Thu, 20 Dec 2007 18:55:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B418213C46A for ; Thu, 20 Dec 2007 18:55:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKItRdB035038 for ; Thu, 20 Dec 2007 18:55:27 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKItRwf035035 for perforce@freebsd.org; Thu, 20 Dec 2007 18:55:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 18:55:27 GMT Message-Id: <200712201855.lBKItRwf035035@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131320 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 18:55:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131320 Change 131320 by hselasky@hselasky_laptop001 on 2007/12/20 18:54:41 Update and simplify "usbd_set_desc". Check if the "iInterface" string before setting the device description. At the same time rename the function to "usbd_set_device_desc" so that there is no confusion. Affected files ... .. //depot/projects/usb/src/sys/dev/ata/ata-usb.c#29 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/if_aue.c#40 edit .. //depot/projects/usb/src/sys/dev/usb/if_axe.c#42 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#32 edit .. //depot/projects/usb/src/sys/dev/usb/if_cue.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/if_kue.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/if_rue.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/if_rum.c#23 edit .. //depot/projects/usb/src/sys/dev/usb/if_udav.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/if_ural.c#47 edit .. //depot/projects/usb/src/sys/dev/usb/if_zyd.c#27 edit .. //depot/projects/usb/src/sys/dev/usb/uark.c#16 edit .. //depot/projects/usb/src/sys/dev/usb/ubsa.c#33 edit .. //depot/projects/usb/src/sys/dev/usb/ubser.c#25 edit .. //depot/projects/usb/src/sys/dev/usb/ucycom.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/udbp.c#21 edit .. //depot/projects/usb/src/sys/dev/usb/ufm.c#19 edit .. //depot/projects/usb/src/sys/dev/usb/ufoma.c#35 edit .. //depot/projects/usb/src/sys/dev/usb/uftdi.c#30 edit .. //depot/projects/usb/src/sys/dev/usb/ugen.c#32 edit .. //depot/projects/usb/src/sys/dev/usb/ugensa.c#17 edit .. //depot/projects/usb/src/sys/dev/usb/uhid.c#27 edit .. //depot/projects/usb/src/sys/dev/usb/uhub.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/uipaq.c#18 edit .. //depot/projects/usb/src/sys/dev/usb/ukbd.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/ulpt.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/umass.c#39 edit .. //depot/projects/usb/src/sys/dev/usb/umct.c#27 edit .. //depot/projects/usb/src/sys/dev/usb/umodem.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/ums.c#35 edit .. //depot/projects/usb/src/sys/dev/usb/uplcom.c#34 edit .. //depot/projects/usb/src/sys/dev/usb/urio.c#21 edit .. //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#18 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#74 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#82 edit .. //depot/projects/usb/src/sys/dev/usb/uscanner.c#20 edit .. //depot/projects/usb/src/sys/dev/usb/uvisor.c#30 edit .. //depot/projects/usb/src/sys/dev/usb/uvscom.c#33 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#22 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#17 edit Differences ... ==== //depot/projects/usb/src/sys/dev/ata/ata-usb.c#29 (text) ==== @@ -334,7 +334,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->dev = dev; sc->maxlun = 0; ==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#28 (text+ko) ==== @@ -686,7 +686,7 @@ umidi_init(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); id = usbd_get_interface_descriptor(uaa->iface); ==== //depot/projects/usb/src/sys/dev/usb/if_aue.c#40 (text+ko) ==== @@ -795,7 +795,7 @@ if (uaa->release >= 0x0201) { sc->sc_flags |= AUE_FLAG_VER_2; /* XXX currently undocumented */ } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/if_axe.c#42 (text+ko) ==== @@ -649,7 +649,7 @@ sc->sc_unit = device_get_unit(dev); sc->sc_flags = t->axe_flags; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#32 (text+ko) ==== @@ -244,7 +244,7 @@ if (t) { sc->sc_flags = t->cdce_flags; } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/if_cue.c#36 (text+ko) ==== @@ -483,7 +483,7 @@ sc->sc_dev = dev; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "cue lock", NULL, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/if_kue.c#38 (text+ko) ==== @@ -512,7 +512,7 @@ sc->sc_dev = dev; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "kue lock", NULL, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/if_rue.c#36 (text+ko) ==== @@ -705,7 +705,7 @@ sc->sc_dev = dev; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/if_rum.c#23 (text+ko) ==== @@ -457,7 +457,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&sc->sc_mtx, "rum lock", MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/if_udav.c#38 (text+ko) ==== @@ -323,7 +323,7 @@ sc->sc_unit = device_get_unit(dev); sc->sc_flags = udav_lookup(uaa->vendor, uaa->product)->udav_flags; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/if_ural.c#47 (text+ko) ==== @@ -516,7 +516,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&sc->sc_mtx, "ural lock", MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/if_zyd.c#27 (text+ko) ==== @@ -1257,7 +1257,7 @@ uaa->release); return (EINVAL); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/uark.c#16 (text+ko) ==== @@ -205,7 +205,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; ==== //depot/projects/usb/src/sys/dev/usb/ubsa.c#33 (text+ko) ==== @@ -348,7 +348,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; ==== //depot/projects/usb/src/sys/dev/usb/ubser.c#25 (text+ko) ==== @@ -266,7 +266,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/ucycom.c#28 (text+ko) ==== @@ -226,7 +226,7 @@ } sc->sc_udev = uaa->device; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/udbp.c#21 (text+ko) ==== @@ -331,7 +331,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/ufm.c#19 (text+ko) ==== @@ -168,7 +168,7 @@ mtx_init(&(sc->sc_mtx), "ufm lock", NULL, MTX_DEF | MTX_RECURSE); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(buf, sizeof(buf), "ufm%d", sc->sc_unit); ==== //depot/projects/usb/src/sys/dev/usb/ufoma.c#35 (text+ko) ==== @@ -387,7 +387,7 @@ sc->sc_dev = dev; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/uftdi.c#30 (text+ko) ==== @@ -301,7 +301,7 @@ sc->sc_dev = dev; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/ugen.c#32 (text+ko) ==== @@ -197,8 +197,7 @@ mtx_init(&sc->sc_mtx, "ugen lock", NULL, MTX_DEF | MTX_RECURSE); - /**/ - usbd_set_desc(dev, sc->sc_udev); + usbd_set_device_desc(dev); /* first set configuration index 0, the default one for ugen */ if (usbd_set_config_index(sc->sc_udev, 0, 0)) { ==== //depot/projects/usb/src/sys/dev/usb/ugensa.c#17 (text+ko) ==== @@ -207,7 +207,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); /* Move the device into the configured state */ error = usbd_set_config_index(uaa->device, UGENSA_CONFIG_INDEX, 1); ==== //depot/projects/usb/src/sys/dev/usb/uhid.c#27 (text+ko) ==== @@ -600,7 +600,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "uhid lock", NULL, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/uhub.c#28 (text+ko) ==== @@ -559,7 +559,7 @@ snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); - usbd_set_desc(dev, udev); + usbd_set_device_desc(dev); err = usbd_set_config_index(udev, 0, 1); if (err) { ==== //depot/projects/usb/src/sys/dev/usb/uipaq.c#18 (text+ko) ==== @@ -220,7 +220,7 @@ } sc->sc_udev = uaa->device; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); error = usbd_set_config_no(uaa->device, UIPAQ_CONFIG_NO, 1); ==== //depot/projects/usb/src/sys/dev/usb/ukbd.c#36 (text+ko) ==== @@ -638,7 +638,7 @@ kbd->kb_data = (void *)sc; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; sc->sc_iface = uaa->iface; ==== //depot/projects/usb/src/sys/dev/usb/ulpt.c#36 (text+ko) ==== @@ -521,7 +521,7 @@ sc->sc_dev = dev; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "ulpt lock", NULL, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/umass.c#39 (text+ko) ==== @@ -1458,7 +1458,7 @@ snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "UMASS lock", NULL, (MTX_DEF | MTX_RECURSE)); ==== //depot/projects/usb/src/sys/dev/usb/umct.c#27 (text+ko) ==== @@ -275,7 +275,7 @@ sc->sc_udev = uaa->device; sc->sc_unit = device_get_unit(dev); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/dev/usb/umodem.c#37 (text+ko) ==== @@ -347,7 +347,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); id = usbd_get_interface_descriptor(uaa->iface); ==== //depot/projects/usb/src/sys/dev/usb/ums.c#35 (text+ko) ==== @@ -395,7 +395,7 @@ DPRINTF(10, "sc=%p\n", sc); - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "ums lock", NULL, MTX_DEF | MTX_RECURSE); ==== //depot/projects/usb/src/sys/dev/usb/uplcom.c#34 (text+ko) ==== @@ -389,7 +389,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); DPRINTF(0, "sc = %p\n", sc); ==== //depot/projects/usb/src/sys/dev/usb/urio.c#21 (text+ko) ==== @@ -228,7 +228,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; ==== //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#18 (text+ko) ==== @@ -274,7 +274,7 @@ } uaa->device->linux_dev = p_dev; } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_fbsd_udev = uaa->device; sc->sc_fbsd_dev = dev; ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#74 (text+ko) ==== @@ -1900,9 +1900,44 @@ } void -usbd_set_desc(device_t dev, struct usbd_device *udev) +usbd_set_device_desc(device_t dev) { - usbd_devinfo(udev, udev->scratch[0].data, sizeof(udev->scratch)); + struct usb_attach_arg *uaa; + struct usbd_device *udev; + struct usbd_interface *iface; + usbd_status_t err; + + if (dev == NULL) { + /* should not happen */ + return; + } + uaa = device_get_ivars(dev); + if (uaa == NULL) { + /* can happend if called at the wrong time */ + return; + } + udev = uaa->device; + iface = uaa->iface; + + if ((iface == NULL) || + (iface->idesc == NULL) || + (iface->idesc->iInterface == 0)) { + err = USBD_INVAL; + } else { + err = 0; + } + + if (!err) { + /* try to get the interface string ! */ + err = usbreq_get_string_any + (udev, &usb_global_lock, udev->scratch[0].data, + sizeof(udev->scratch), iface->idesc->iInterface); + } + if (err) { + /* use default description */ + usbd_devinfo(udev, udev->scratch[0].data, + sizeof(udev->scratch)); + } device_set_desc_copy(dev, udev->scratch[0].data); device_printf(dev, "<%s> on %s\n", udev->scratch[0].data, device_get_nameunit(udev->bus->bdev)); ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#82 (text+ko) ==== @@ -846,7 +846,7 @@ struct usbd_device *usbd_ref_device(struct usbd_bus *bus, uint8_t addr); void usbd_unref_device(struct usbd_device *udev); struct usbd_interface *usbd_get_iface(struct usbd_device *udev, uint8_t iface_index); -void usbd_set_desc(device_t dev, struct usbd_device *udev); +void usbd_set_device_desc(device_t dev); void *usbd_alloc_mbufs(struct malloc_type *type, struct usbd_ifqueue *ifq, uint32_t block_size, uint16_t block_number); void usbd_get_page(struct usbd_page_cache *cache, uint32_t offset, struct usbd_page_search *res); void usbd_copy_in(struct usbd_page_cache *cache, uint32_t offset, const void *ptr, uint32_t len); ==== //depot/projects/usb/src/sys/dev/usb/uscanner.c#20 (text+ko) ==== @@ -407,7 +407,7 @@ /* * Announce the device: */ - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); /* * Setup the transfer. ==== //depot/projects/usb/src/sys/dev/usb/uvisor.c#30 (text+ko) ==== @@ -343,7 +343,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; ==== //depot/projects/usb/src/sys/dev/usb/uvscom.c#33 (text+ko) ==== @@ -317,7 +317,7 @@ if (sc == NULL) { return (ENOMEM); } - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); sc->sc_udev = uaa->device; ==== //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#22 (text+ko) ==== @@ -487,7 +487,7 @@ uint8_t alt_index; uint8_t i; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); ==== //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#17 (text+ko) ==== @@ -210,7 +210,7 @@ sc->sc_dev = dev; sc->sc_udev = uaa->device; - usbd_set_desc(dev, uaa->device); + usbd_set_device_desc(dev); mtx_init(&(sc->sc_mtx), "ubtbcmfw lock", NULL, MTX_DEF | MTX_RECURSE); From owner-p4-projects@FreeBSD.ORG Thu Dec 20 19:20:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A06A716A420; Thu, 20 Dec 2007 19:20:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DD49816A477 for ; Thu, 20 Dec 2007 19:20:54 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C231613C4E9 for ; Thu, 20 Dec 2007 19:20:54 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKJKsuR044838 for ; Thu, 20 Dec 2007 19:20:54 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKJKsmQ044835 for perforce@freebsd.org; Thu, 20 Dec 2007 19:20:54 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 20 Dec 2007 19:20:54 GMT Message-Id: <200712201920.lBKJKsmQ044835@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 131321 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 19:20:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131321 Change 131321 by kmacy@kmacy:entropy:iwarp on 2007/12/20 19:20:04 compile fixes for problems created by last integrate Affected files ... .. //depot/projects/iwarp/sys/contrib/rdma/ib_user_verbs.h#3 edit .. //depot/projects/iwarp/sys/contrib/rdma/ib_verbs.h#6 edit .. //depot/projects/iwarp/sys/contrib/rdma/types.h#1 add .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_osdep.h#6 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_dbg.c#2 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.h#4 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_wr.h#2 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch.c#3 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_cm.c#4 edit .. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_user.h#2 edit .. //depot/projects/iwarp/sys/modules/cxgb/Makefile#4 edit .. //depot/projects/iwarp/sys/modules/cxgb/tom/Makefile#3 edit .. //depot/projects/iwarp/sys/sys/linux_compat.h#9 edit .. //depot/projects/iwarp/sys/sys/linux_pci.h#3 edit Differences ... ==== //depot/projects/iwarp/sys/contrib/rdma/ib_user_verbs.h#3 (text+ko) ==== @@ -38,6 +38,8 @@ #ifndef IB_USER_VERBS_H #define IB_USER_VERBS_H +#include + /* * Increment this value if any changes that break userspace ABI ==== //depot/projects/iwarp/sys/contrib/rdma/ib_verbs.h#6 (text+ko) ==== @@ -42,6 +42,7 @@ #if !defined(IB_VERBS_H) #define IB_VERBS_H +#include #include #include #include ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_osdep.h#6 (text+ko) ==== @@ -355,10 +355,11 @@ #define simple_strtoul strtoul -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; +#ifndef LINUX_TYPES_DEFINED +typedef uint8_t u8; +typedef uint16_t u16; +typedef uint32_t u32; +typedef uint64_t u64; typedef uint8_t __u8; typedef uint16_t __u16; @@ -367,6 +368,7 @@ typedef uint16_t __be16; typedef uint32_t __be32; typedef uint64_t __be64; +#endif #if BYTE_ORDER == BIG_ENDIAN ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_dbg.c#2 (text+ko) ==== @@ -88,7 +88,7 @@ #include #endif -void cxio_dump_tpt(struct cxio_rdev *rdev, u32 stag) +void cxio_dump_tpt(struct cxio_rdev *rdev, uint32_t stag) { struct ch_mem_range *m; u64 *data; @@ -107,7 +107,7 @@ rc = rdev->t3cdev_p->ctl(rdev->t3cdev_p, RDMA_GET_MEM, m); if (rc) { PDBG("%s toectl returned error %d\n", __FUNCTION__, rc); - kfree(m); + free(m, M_DEVBUF); return; } @@ -118,10 +118,10 @@ data++; m->addr += 8; } - kfree(m); + free(m, M_DEVBUF); } -void cxio_dump_pbl(struct cxio_rdev *rdev, u32 pbl_addr, uint len, u8 shift) +void cxio_dump_pbl(struct cxio_rdev *rdev, uint32_t pbl_addr, uint32_t len, u8 shift) { struct ch_mem_range *m; u64 *data; @@ -145,7 +145,7 @@ rc = rdev->t3cdev_p->ctl(rdev->t3cdev_p, RDMA_GET_MEM, m); if (rc) { PDBG("%s toectl returned error %d\n", __FUNCTION__, rc); - kfree(m); + free(m, M_DEVBUF); return; } @@ -156,13 +156,13 @@ data++; m->addr += 8; } - kfree(m); + free(m, M_DEVBUF); } void cxio_dump_wqe(union t3_wr *wqe) { - __be64 *data = (__be64 *)wqe; - uint size = (uint)(be64_to_cpu(*data) & 0xff); + uint64_t *data = (uint64_t *)wqe; + uint32_t size = (uint32_t)(be64_to_cpu(*data) & 0xff); if (size == 0) size = 8; @@ -176,7 +176,7 @@ void cxio_dump_wce(struct t3_cqe *wce) { - __be64 *data = (__be64 *)wce; + uint64_t *data = (uint64_t *)wce; int size = sizeof(*wce); while (size > 0) { @@ -187,7 +187,7 @@ } } -void cxio_dump_rqt(struct cxio_rdev *rdev, u32 hwtid, int nents) +void cxio_dump_rqt(struct cxio_rdev *rdev, uint32_t hwtid, int nents) { struct ch_mem_range *m; int size = nents * 64; @@ -206,7 +206,7 @@ rc = rdev->t3cdev_p->ctl(rdev->t3cdev_p, RDMA_GET_MEM, m); if (rc) { PDBG("%s toectl returned error %d\n", __FUNCTION__, rc); - kfree(m); + free(m, M_DEVBUF); return; } @@ -217,14 +217,14 @@ data++; m->addr += 8; } - kfree(m); + free(m, M_DEVBUF); } -void cxio_dump_tcb(struct cxio_rdev *rdev, u32 hwtid) +void cxio_dump_tcb(struct cxio_rdev *rdev, uint32_t hwtid) { struct ch_mem_range *m; int size = TCB_SIZE; - u32 *data; + uint32_t *data; int rc; m = kmalloc(sizeof(*m) + size, M_NOWAIT); @@ -239,13 +239,13 @@ rc = rdev->t3cdev_p->ctl(rdev->t3cdev_p, RDMA_GET_MEM, m); if (rc) { PDBG("%s toectl returned error %d\n", __FUNCTION__, rc); - kfree(m); + free(m, M_DEVBUF); return; } - data = (u32 *)m->buf; + data = (uint32_t *)m->buf; while (size > 0) { - printk("%2u: %08x %08x %08x %08x %08x %08x %08x %08x\n", + printf("%2u: %08x %08x %08x %08x %08x %08x %08x %08x\n", m->addr, *(data+2), *(data+3), *(data),*(data+1), *(data+6), *(data+7), *(data+4), *(data+5)); @@ -253,6 +253,6 @@ data += 8; m->addr += 32; } - kfree(m); + free(m, M_DEVBUF); } #endif ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_hal.h#4 (text+ko) ==== @@ -152,7 +152,7 @@ #ifdef DEBUG void cxio_dump_tpt(struct cxio_rdev *rev, u32 stag); -void cxio_dump_pbl(struct cxio_rdev *rev, u32 pbl_addr, uint len, u8 shift); +void cxio_dump_pbl(struct cxio_rdev *rev, u32 pbl_addr, uint32_t len, u8 shift); void cxio_dump_wqe(union t3_wr *wqe); void cxio_dump_wce(struct t3_cqe *wce); void cxio_dump_rqt(struct cxio_rdev *rdev, u32 hwtid, int nents); ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cxio_wr.h#2 (text+ko) ==== @@ -554,10 +554,10 @@ /* mismatch) */ struct t3_swsq { - __u64 wr_id; + uint64_t wr_id; struct t3_cqe cqe; - __u32 sq_wptr; - __be32 read_len; + uint32_t sq_wptr; + uint32_t read_len; int opcode; int complete; int signaled; ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch.c#3 (text+ko) ==== @@ -55,7 +55,6 @@ #include -#include #include ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_cm.c#4 (text+ko) ==== @@ -1356,6 +1356,7 @@ struct rtentry *dst; struct l2t_entry *l2t; struct iff_mac tim; + struct sockaddr_in sin; PDBG("%s parent ep %p tid %u\n", __FUNCTION__, parent_ep, hwtid); @@ -1394,7 +1395,10 @@ goto reject; } printf("%s ifname |%s|\n", __FUNCTION__, dst->rt_ifp->if_xname); - l2t = t3_l2t_get(tdev, dst, dst->rt_ifp); + sin.sin_len = sizeof(struct sockaddr_in); + sin.sin_family = AF_INET; + sin.sin_addr.s_addr = req->peer_ip; + l2t = t3_l2t_get(tdev, dst, dst->rt_ifp, (struct sockaddr *)&sin); if (l2t == NULL) { printf("%s - failed to allocate l2t entry!\n", __FUNCTION__); RTFREE(dst); @@ -1871,7 +1875,8 @@ struct iwch_dev *h = to_iwch_dev(cm_id->device); struct iwch_ep *ep; struct rtentry *rt; - + struct sockaddr_in sin; + ep = alloc_ep(sizeof(*ep), M_NOWAIT); if (!ep) { printf("%s - cannot alloc ep.\n", __FUNCTION__); @@ -1918,8 +1923,11 @@ ep->dst = rt; /* get a l2t entry */ + sin.sin_len = sizeof(struct sockaddr_in); + sin.sin_family = AF_INET; + sin.sin_addr.s_addr = cm_id->remote_addr.sin_addr.s_addr; ep->l2t = t3_l2t_get(ep->com.tdev, ep->dst, - ep->dst->rt_ifp); + ep->dst->rt_ifp, (struct sockaddr *)&sin); if (!ep->l2t) { printf("%s - cannot alloc l2e.\n", __FUNCTION__); err = ENOMEM; ==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_user.h#2 (text+ko) ==== @@ -38,29 +38,29 @@ * Make sure that all structs defined in this file remain laid out so * that they pack the same way on 32-bit and 64-bit architectures (to * avoid incompatibility between 32-bit userspace and 64-bit kernels). - * In particular do not use pointer types -- pass pointers in __u64 + * In particular do not use pointer types -- pass pointers in uint64_t * instead. */ struct iwch_create_cq_req { - __u64 user_rptr_addr; + uint64_t user_rptr_addr; }; struct iwch_create_cq_resp { - __u64 key; - __u32 cqid; - __u32 size_log2; + uint64_t key; + uint32_t cqid; + uint32_t size_log2; }; struct iwch_create_qp_resp { - __u64 key; - __u64 db_key; - __u32 qpid; - __u32 size_log2; - __u32 sq_size_log2; - __u32 rq_size_log2; + uint64_t key; + uint64_t db_key; + uint32_t qpid; + uint32_t size_log2; + uint32_t sq_size_log2; + uint32_t rq_size_log2; }; struct iwch_reg_user_mr_resp { - __u32 pbl_addr; + uint32_t pbl_addr; }; #endif ==== //depot/projects/iwarp/sys/modules/cxgb/Makefile#4 (text+ko) ==== @@ -2,6 +2,6 @@ SUBDIR= cxgb SUBDIR+= toecore SUBDIR+= tom -#SUBDIR+= iw_cxgb +SUBDIR+= iw_cxgb .include ==== //depot/projects/iwarp/sys/modules/cxgb/tom/Makefile#3 (text+ko) ==== @@ -6,7 +6,8 @@ KMOD= tom SRCS= cxgb_tom.c cxgb_cpl_io.c cxgb_listen.c cxgb_tom_sysctl.c cxgb_cpl_socket.c #SRCS+= cxgb_tcp_subr.c cxgb_tcp_usrreq.c -SRCS+= opt_compat.h opt_inet.h opt_inet6.h opt_ipsec.h opt_mac.h opt_tcpdebug.h opt_ddb.h +SRCS+= opt_compat.h opt_inet.h opt_inet6.h opt_ipsec.h opt_mac.h +SRCS+= opt_tcpdebug.h opt_ddb.h opt_sched.h SRCS+= device_if.h bus_if.h pci_if.h #CFLAGS+= -DDEBUG_PRINT -DDEBUG ==== //depot/projects/iwarp/sys/sys/linux_compat.h#9 (text+ko) ==== @@ -5,26 +5,6 @@ #include #include -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef uint8_t __u8; -typedef uint16_t __u16; -typedef uint32_t __u32; -typedef uint64_t __u64; - -typedef int8_t __s8; -typedef int16_t __s16; -typedef int32_t __s32; -typedef int64_t __s64; - -typedef uint8_t __be8; -typedef uint16_t __be16; -typedef uint32_t __be32; -typedef uint64_t __be64; - #define __attribute_const__ #define rw_semaphore rwlock #define __user ==== //depot/projects/iwarp/sys/sys/linux_pci.h#3 (text+ko) ==== @@ -187,28 +187,28 @@ #define PCI_DMA_BIDIRECTIONAL 0 static inline int pci_read_config_dword (struct pci_dev *dev, - int where, u32 *val) + int where, uint32_t *val) { *val=pci_read_config(dev->d, where, 4); return(0); } static inline int pci_read_config_word (struct pci_dev *dev, - int where, u16 *val) + int where, uint16_t *val) { *val=pci_read_config(dev->d, where, 2); return(0); } static inline int pci_write_config_dword (struct pci_dev *dev, - int where, u32 val) + int where, uint32_t val) { pci_write_config(dev->d, where,val, 4); return(0); } static inline int pci_write_config_word (struct pci_dev *dev, - int where, u32 val) + int where, uint32_t val) { pci_write_config(dev->d, where,val, 2); return(0); From owner-p4-projects@FreeBSD.ORG Thu Dec 20 19:31:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4DFE216A46B; Thu, 20 Dec 2007 19:31:48 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E20D816A468; Thu, 20 Dec 2007 19:31:47 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 8650813C4D9; Thu, 20 Dec 2007 19:31:47 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.1/8.14.1) with ESMTP id lBKJRRT0021864; Thu, 20 Dec 2007 12:27:27 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 20 Dec 2007 12:30:23 -0700 (MST) Message-Id: <20071220.123023.255346724.imp@bsdimp.com> To: jb@freebsd.org From: "M. Warner Losh" In-Reply-To: <200712190317.lBJ3HLYT006625@repoman.freebsd.org> References: <200712190317.lBJ3HLYT006625@repoman.freebsd.org> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: perforce@freebsd.org Subject: Re: PERFORCE change 131204 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 19:31:48 -0000 In message: <200712190317.lBJ3HLYT006625@repoman.freebsd.org> John Birrell writes: : getopt(3) returns an integer. Even on Solaris. : The use of EOF is inappropriate. getopt(3) returns nothing associated : with a stream file. Once upon a time it did return EOF. However, in the standardizations process, it was switched to -1 so there wouldn't be a dependency on stdio.h. 4.4BSD-lite had EOF, while 4.4BSD-Lite2 had -1. Warner From owner-p4-projects@FreeBSD.ORG Thu Dec 20 20:06:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E406916A41A; Thu, 20 Dec 2007 20:06:42 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8E5DC16A417 for ; Thu, 20 Dec 2007 20:06:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 75A7E13C4EE for ; Thu, 20 Dec 2007 20:06:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKK6g8O052825 for ; Thu, 20 Dec 2007 20:06:42 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKK6fVc052822 for perforce@freebsd.org; Thu, 20 Dec 2007 20:06:41 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 20:06:41 GMT Message-Id: <200712202006.lBKK6fVc052822@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131322 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 20:06:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131322 Change 131322 by hselasky@hselasky_laptop001 on 2007/12/20 20:06:16 Minor USB API change. Many USB devices have endpoints in different interfaces. Allow fetching endpoints from multiple endopints by passing an "ifaces" array to "usbd_transfer_setup" so that we can do all in one go ! Affected files ... .. //depot/projects/usb/src/sys/dev/ata/ata-usb.c#30 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/README#29 edit .. //depot/projects/usb/src/sys/dev/usb/if_aue.c#41 edit .. //depot/projects/usb/src/sys/dev/usb/if_axe.c#43 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#33 edit .. //depot/projects/usb/src/sys/dev/usb/if_cue.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/if_kue.c#39 edit .. //depot/projects/usb/src/sys/dev/usb/if_rue.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/if_rum.c#24 edit .. //depot/projects/usb/src/sys/dev/usb/if_udav.c#39 edit .. //depot/projects/usb/src/sys/dev/usb/if_ural.c#48 edit .. //depot/projects/usb/src/sys/dev/usb/if_zyd.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/uark.c#17 edit .. //depot/projects/usb/src/sys/dev/usb/ubsa.c#34 edit .. //depot/projects/usb/src/sys/dev/usb/ubser.c#26 edit .. //depot/projects/usb/src/sys/dev/usb/ucycom.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/udbp.c#22 edit .. //depot/projects/usb/src/sys/dev/usb/ufoma.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/uftdi.c#31 edit .. //depot/projects/usb/src/sys/dev/usb/ugen.c#33 edit .. //depot/projects/usb/src/sys/dev/usb/ugensa.c#18 edit .. //depot/projects/usb/src/sys/dev/usb/uhid.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/uhub.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/uipaq.c#19 edit .. //depot/projects/usb/src/sys/dev/usb/ukbd.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/ulpt.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/umass.c#40 edit .. //depot/projects/usb/src/sys/dev/usb/umct.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/umodem.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/umoscom.c#14 edit .. //depot/projects/usb/src/sys/dev/usb/ums.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/uplcom.c#35 edit .. //depot/projects/usb/src/sys/dev/usb/urio.c#22 edit .. //depot/projects/usb/src/sys/dev/usb/usb.c#28 edit .. //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#19 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#83 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#81 edit .. //depot/projects/usb/src/sys/dev/usb/uscanner.c#21 edit .. //depot/projects/usb/src/sys/dev/usb/uvisor.c#31 edit .. //depot/projects/usb/src/sys/dev/usb/uvscom.c#34 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#23 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#18 edit Differences ... ==== //depot/projects/usb/src/sys/dev/ata/ata-usb.c#30 (text) ==== @@ -386,10 +386,9 @@ (strcmp(subclass, "ATAPI") && strcmp(subclass, "SCSI"))) { goto detach; } - err = usbd_transfer_setup(uaa->device, uaa->iface_index, sc->xfer, - atausb_config, - ATAUSB_T_BBB_MAX, sc, - &(sc->locked_mtx)); + err = usbd_transfer_setup(uaa->device, &(uaa->iface_index), sc->xfer, + atausb_config, ATAUSB_T_BBB_MAX, sc, &(sc->locked_mtx)); + /* skip reset first time */ sc->last_xfer_no = ATAUSB_T_BBB_COMMAND; ==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#29 (text+ko) ==== @@ -1427,9 +1427,8 @@ DPRINTF(0, "setting of sample rate failed! (continuing anyway)\n"); } } - if (usbd_transfer_setup(sc->sc_udev, iface_index, ch->xfer, - ch->usb_cfg, UAUDIO_NCHANBUFS, ch, - ch->pcm_mtx)) { + if (usbd_transfer_setup(sc->sc_udev, &iface_index, ch->xfer, + ch->usb_cfg, UAUDIO_NCHANBUFS, ch, ch->pcm_mtx)) { DPRINTF(0, "could not allocate USB transfers!\n"); goto error; } @@ -3169,7 +3168,7 @@ sc->sc_mixer_lock = mixer_get_lock(m); - if (usbd_transfer_setup(sc->sc_udev, sc->sc_mixer_iface_index, + if (usbd_transfer_setup(sc->sc_udev, &(sc->sc_mixer_iface_index), sc->sc_mixer_xfer, uaudio_mixer_config, 1, sc, sc->sc_mixer_lock)) { DPRINTF(0, "could not allocate USB transfer for audio mixer!\n"); @@ -3705,7 +3704,7 @@ } USBD_SET_IFACE_NO_PROBE(sc->sc_udev, chan->iface_index); - error = usbd_transfer_setup(uaa->device, chan->iface_index, + error = usbd_transfer_setup(uaa->device, &(chan->iface_index), chan->xfer, umidi_config, UMIDI_N_TRANSFER, chan, &(chan->mtx)); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/README#29 (text+ko) ==== @@ -171,13 +171,13 @@ /*------------------------------------------------------------------------* * usbd_status_t - * usbd_transfer_setup(udev, iface_index, pxfer, setup_start, + * usbd_transfer_setup(udev, ifaces, pxfer, setup_start, * n_setup, priv_sc, priv_mtx) *------------------------------------------------------------------------*/ - "udev" is a pointer to "struct usbd_device". -- "iface_index" is the interface index number. +- "ifaces" array of interface index numbers to use. See "if_index". - "pxfer" is a pointer to an array of USB transfer pointers that are initialized to NULL, and then pointed to allocated USB transfers. @@ -292,9 +292,13 @@ UE_ISOCHRONOUS) Not allowed. Will cause an error. -- The "index" field allows one to give a number, in case more +- The "ep_index" field allows you to give a number, in case more endpoints match the description, that selects which matching - "index" should be used. + "ep_index" should be used. + +- The "if_index" field allows you to select which of the interface + numbers in the "ifaces" array parameter passed to "usbd_transfer_setup" + that should be used when setting up the given USB transfer. - The "flags" field has type "struct usbd_xfer_flags" and allows one to set initial flags an USB transfer. Valid flags are: ==== //depot/projects/usb/src/sys/dev/usb/if_aue.c#41 (text+ko) ==== @@ -781,6 +781,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct aue_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -812,7 +813,8 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, AUE_IFACE_IDX, + iface_index = AUE_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, aue_config, AUE_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/if_axe.c#43 (text+ko) ==== @@ -640,6 +640,7 @@ struct axe_type *t = axe_find_product(uaa); struct axe_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -666,7 +667,8 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, AXE_IFACE_IDX, + iface_index = AXE_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, axe_config, AXE_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#33 (text+ko) ==== @@ -316,7 +316,7 @@ goto detach; } error = usbd_transfer_setup - (uaa->device, sc->sc_data_iface_index, + (uaa->device, &(sc->sc_data_iface_index), sc->sc_xfer, cdce_config, CDCE_ENDPT_MAX, sc, &(sc->sc_mtx)); ==== //depot/projects/usb/src/sys/dev/usb/if_cue.c#37 (text+ko) ==== @@ -474,6 +474,7 @@ { struct usb_attach_arg *uaa = device_get_ivars(dev); struct cue_softc *sc = device_get_softc(dev); + uint8_t iface_index; int32_t error; if (sc == NULL) { @@ -497,9 +498,9 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, CUE_IFACE_IDX, - sc->sc_xfer, cue_config, CUE_ENDPT_MAX, - sc, &(sc->sc_mtx)); + iface_index = CUE_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, cue_config, CUE_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { device_printf(dev, "allocating USB " "transfers failed!\n"); ==== //depot/projects/usb/src/sys/dev/usb/if_kue.c#39 (text+ko) ==== @@ -504,6 +504,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct kue_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -526,9 +527,9 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, KUE_IFACE_IDX, - sc->sc_xfer, kue_config, KUE_ENDPT_MAX, - sc, &(sc->sc_mtx)); + iface_index = KUE_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, kue_config, KUE_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { device_printf(dev, "allocating USB " "transfers failed!\n"); ==== //depot/projects/usb/src/sys/dev/usb/if_rue.c#37 (text+ko) ==== @@ -697,6 +697,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct rue_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -722,7 +723,8 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, RUE_IFACE_IDX, + iface_index = RUE_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, rue_config, RUE_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/if_rum.c#24 (text+ko) ==== @@ -453,6 +453,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct rum_softc *sc = device_get_softc(dev); int error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -478,9 +479,9 @@ "number, err=%s!\n", usbd_errstr(error)); goto detach; } - error = usbd_transfer_setup(uaa->device, RT2573_IFACE_INDEX, - sc->sc_xfer, rum_config, RUM_N_TRANSFER, - sc, &(sc->sc_mtx)); + iface_index = RT2573_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, rum_config, RUM_N_TRANSFER, sc, &(sc->sc_mtx)); if (error) { device_printf(dev, "could not allocate USB transfers, " "err=%s\n", usbd_errstr(error)); ==== //depot/projects/usb/src/sys/dev/usb/if_udav.c#39 (text+ko) ==== @@ -314,6 +314,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct udav_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -340,9 +341,9 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, UDAV_IFACE_INDEX, - sc->sc_xfer, udav_config, UDAV_ENDPT_MAX, - sc, &(sc->sc_mtx)); + iface_index = UDAV_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, udav_config, UDAV_ENDPT_MAX, sc, &(sc->sc_mtx)); if (error) { device_printf(dev, "allocating USB " "transfers failed!\n"); ==== //depot/projects/usb/src/sys/dev/usb/if_ural.c#48 (text+ko) ==== @@ -512,6 +512,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct ural_softc *sc = device_get_softc(dev); int error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -537,9 +538,11 @@ "number, err=%s!\n", usbd_errstr(error)); goto detach; } - error = usbd_transfer_setup(uaa->device, RAL_IFACE_INDEX, - sc->sc_xfer, ural_config, URAL_N_TRANSFER, - sc, &(sc->sc_mtx)); + iface_index = RAL_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, + &iface_index, sc->sc_xfer, ural_config, + URAL_N_TRANSFER, sc, &(sc->sc_mtx)); + if (error) { device_printf(dev, "could not allocate USB transfers, " "err=%s\n", usbd_errstr(error)); ==== //depot/projects/usb/src/sys/dev/usb/if_zyd.c#28 (text+ko) ==== @@ -1247,6 +1247,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct zyd_softc *sc = device_get_softc(dev); int error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -1287,10 +1288,9 @@ * Endpoint 3 = Intr in (64b) * Endpoint 4 = Intr out @ high speed / bulk out @ full speed (64b) */ - - error = usbd_transfer_setup(uaa->device, ZYD_IFACE_IDX, - sc->sc_xfer, zyd_config, ZYD_TR_MAX, - sc, &(sc->sc_mtx)); + iface_index = ZYD_IFACE_IDX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, zyd_config, ZYD_TR_MAX, sc, &(sc->sc_mtx)); if (error) { device_printf(dev, "could not allocate USB " "transfers: %s\n", usbd_errstr(error)); ==== //depot/projects/usb/src/sys/dev/usb/uark.c#17 (text+ko) ==== @@ -201,6 +201,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct uark_softc *sc = device_get_softc(dev); int32_t error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -216,10 +217,10 @@ usbd_errstr(error)); goto detach; } + iface_index = UARK_IFACE_INDEX; error = usbd_transfer_setup - (uaa->device, UARK_IFACE_INDEX, - sc->sc_xfer, uark_xfer_config, UARK_N_TRANSFER, - sc, &Giant); + (uaa->device, &iface_index, sc->sc_xfer, + uark_xfer_config, UARK_N_TRANSFER, sc, &Giant); if (error) { device_printf(dev, "allocating control USB " ==== //depot/projects/usb/src/sys/dev/usb/ubsa.c#34 (text+ko) ==== @@ -376,9 +376,9 @@ sc->sc_iface_no = id->bInterfaceNumber; sc->sc_iface_index = UBSA_IFACE_INDEX; - error = usbd_transfer_setup(uaa->device, sc->sc_iface_index, - sc->sc_xfer, ubsa_config, UBSA_N_TRANSFER, - sc, &Giant); + error = usbd_transfer_setup(uaa->device, &(sc->sc_iface_index), + sc->sc_xfer, ubsa_config, UBSA_N_TRANSFER, sc, &Giant); + if (error) { DPRINTF(0, "could not allocate all pipes\n"); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/ubser.c#26 (text+ko) ==== @@ -299,9 +299,8 @@ device_printf(dev, "found %i serials\n", sc->sc_numser); - error = usbd_transfer_setup(uaa->device, sc->sc_iface_index, - sc->sc_xfer, ubser_config, - UBSER_TR_MAX, sc, &Giant); + error = usbd_transfer_setup(uaa->device, &(sc->sc_iface_index), + sc->sc_xfer, ubser_config, UBSER_TR_MAX, sc, &Giant); if (error) { goto detach; } ==== //depot/projects/usb/src/sys/dev/usb/ucycom.c#29 (text+ko) ==== @@ -220,6 +220,7 @@ void *urd_ptr = NULL; int32_t error; uint16_t urd_len; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -297,7 +298,8 @@ } sc->sc_iface_no = iface->idesc->bInterfaceNumber; - error = usbd_transfer_setup(uaa->device, UCYCOM_IFACE_INDEX, + iface_index = UCYCOM_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, ucycom_config, UCYCOM_ENDPT_MAX, sc, &Giant); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/udbp.c#22 (text+ko) ==== @@ -338,9 +338,8 @@ mtx_init(&(sc->sc_mtx), "udbp lock", NULL, MTX_DEF | MTX_RECURSE); - error = usbd_transfer_setup(uaa->device, uaa->iface_index, - sc->sc_xfer, udbp_config, UDBP_T_MAX, - sc, &(sc->sc_mtx)); + error = usbd_transfer_setup(uaa->device, &(uaa->iface_index), + sc->sc_xfer, udbp_config, UDBP_T_MAX, sc, &(sc->sc_mtx)); if (error) { DPRINTF(sc, 0, "error=%s\n", usbd_errstr(error)); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/ufoma.c#36 (text+ko) ==== @@ -401,10 +401,9 @@ sc->sc_ctrl_iface_no = id->bInterfaceNumber; sc->sc_ctrl_iface_index = uaa->iface_index; - error = usbd_transfer_setup - (uaa->device, sc->sc_ctrl_iface_index, - sc->sc_ctrl_xfer, ufoma_ctrl_config, UFOMA_CTRL_ENDPT_MAX, - sc, &Giant); + error = usbd_transfer_setup(uaa->device, + &(sc->sc_ctrl_iface_index), sc->sc_ctrl_xfer, + ufoma_ctrl_config, UFOMA_CTRL_ENDPT_MAX, sc, &Giant); if (error) { device_printf(dev, "allocating control USB " @@ -1113,10 +1112,9 @@ } } - error = usbd_transfer_setup - (uaa->device, sc->sc_data_iface_index, - sc->sc_bulk_xfer, ufoma_bulk_config, UFOMA_BULK_ENDPT_MAX, - sc, &Giant); + error = usbd_transfer_setup(uaa->device, + &(sc->sc_data_iface_index), sc->sc_bulk_xfer, + ufoma_bulk_config, UFOMA_BULK_ENDPT_MAX, sc, &Giant); if (error) { device_printf(dev, "allocating BULK USB " ==== //depot/projects/usb/src/sys/dev/usb/uftdi.c#31 (text+ko) ==== @@ -413,9 +413,10 @@ goto detach; } - error = usbd_transfer_setup(uaa->device, sc->sc_iface_index, - sc->sc_xfer, uftdi_config, UFTDI_ENDPT_MAX, - sc, &Giant); + error = usbd_transfer_setup(uaa->device, + &(sc->sc_iface_index), sc->sc_xfer, uftdi_config, + UFTDI_ENDPT_MAX, sc, &Giant); + if (error) { device_printf(dev, "allocating USB " "transfers failed!\n"); ==== //depot/projects/usb/src/sys/dev/usb/ugen.c#33 (text+ko) ==== @@ -363,7 +363,7 @@ } static usbd_status_t -__usbd_transfer_setup(struct ugen_softc *sc, +ugen_transfer_setup(struct ugen_softc *sc, struct ugen_endpoint *sce, uint16_t context_bit, struct usbd_device *udev, @@ -390,9 +390,8 @@ * "usbd_transfer_setup()" can sleep so one needs to make a wrapper, * exiting the mutex and checking things */ - error = usbd_transfer_setup(udev, iface_index, &temp[0], - setup, n_setup, - sce, &(sc->sc_mtx)); + error = usbd_transfer_setup(udev, &iface_index, &temp[0], + setup, n_setup, sce, &(sc->sc_mtx)); if (error == 0) { if (n_in_frames > 0) { error = ugen_allocate_blocks @@ -619,7 +618,7 @@ case UE_BULK: usbd_config[0].bufsize = UGEN_BULK_BUFFER_SIZE; - if (__usbd_transfer_setup + if (ugen_transfer_setup (sc, sce, UGEN_WR_CFG, sc->sc_udev, sce->pipe_out->iface_index, &sce->xfer_out[0], &usbd_config[0], 2, 0, 0)) { @@ -646,7 +645,7 @@ /* clone configuration */ usbd_config[1] = usbd_config[0]; - err = __usbd_transfer_setup + err = ugen_transfer_setup (sc, sce, UGEN_WR_CFG, sc->sc_udev, sce->pipe_out->iface_index, sce->xfer_out, usbd_config, 2, @@ -705,7 +704,7 @@ usbd_config[0].interval = USBD_DEFAULT_INTERVAL; usbd_config[0].timeout = 0; - if (__usbd_transfer_setup + if (ugen_transfer_setup (sc, sce, UGEN_RD_CFG, sc->sc_udev, sce->pipe_in->iface_index, &sce->xfer_in[0], &usbd_config[0], 2, 1, 0)) { @@ -725,7 +724,7 @@ usbd_config[0].cb[USB_MODE_HOST] = &ugen_default_read_callback; usbd_config[0].bufsize = UGEN_BULK_BUFFER_SIZE; - if (__usbd_transfer_setup + if (ugen_transfer_setup (sc, sce, UGEN_RD_CFG, sc->sc_udev, sce->pipe_in->iface_index, &sce->xfer_in[0], &usbd_config[0], 2, 0, 0)) { @@ -758,7 +757,7 @@ /* clone configuration */ usbd_config[1] = usbd_config[0]; - err = __usbd_transfer_setup + err = ugen_transfer_setup (sc, sce, UGEN_RD_CFG, sc->sc_udev, sce->pipe_in->iface_index, sce->xfer_in, usbd_config, 2, ==== //depot/projects/usb/src/sys/dev/usb/ugensa.c#18 (text+ko) ==== @@ -203,6 +203,7 @@ struct ugensa_sub_softc *ssc; int32_t error; uint8_t x; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -239,10 +240,10 @@ ssc->sc_ucom_ptr = sc->sc_ucom + x; - error = usbd_transfer_setup - (uaa->device, UGENSA_IFACE_INDEX + x, - ssc->sc_xfer, ugensa_xfer_config, UGENSA_N_TRANSFER, - ssc, &Giant); + iface_index = (UGENSA_IFACE_INDEX + x); + error = usbd_transfer_setup(uaa->device, + &iface_index, ssc->sc_xfer, ugensa_xfer_config, + UGENSA_N_TRANSFER, ssc, &Giant); if (error) { device_printf(dev, "allocating USB " ==== //depot/projects/usb/src/sys/dev/usb/uhid.c#28 (text+ko) ==== @@ -608,9 +608,10 @@ sc->sc_iface_no = uaa->iface->idesc->bInterfaceNumber; - error = usbd_transfer_setup(uaa->device, uaa->iface_index, - sc->sc_xfer, uhid_config, UHID_N_TRANSFER, - sc, &(sc->sc_mtx)); + error = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, uhid_config, + UHID_N_TRANSFER, sc, &(sc->sc_mtx)); + if (error) { DPRINTF(0, "error=%s\n", usbd_errstr(error)); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/uhub.c#29 (text+ko) ==== @@ -548,6 +548,7 @@ uint8_t nports; uint8_t portno; uint8_t removable; + uint8_t iface_index; usbd_status_t err; if (sc == NULL) { @@ -647,7 +648,8 @@ } /* set up interrupt pipe */ - err = usbd_transfer_setup(udev, 0, sc->sc_xfer, + iface_index = 0; + err = usbd_transfer_setup(udev, &iface_index, sc->sc_xfer, uhub_config, 2, sc, &usb_global_lock); if (err) { DPRINTF(sc, -1, "cannot setup interrupt transfer, " ==== //depot/projects/usb/src/sys/dev/usb/uipaq.c#19 (text+ko) ==== @@ -214,6 +214,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct uipaq_softc *sc = device_get_softc(dev); int error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -229,10 +230,11 @@ "number failed!\n"); goto detach; } - error = usbd_transfer_setup(uaa->device, UIPAQ_IFACE_INDEX, + iface_index = UIPAQ_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer_data, uipaq_config_data, - UIPAQ_N_DATA_TRANSFER, - sc, &Giant); + UIPAQ_N_DATA_TRANSFER, sc, &Giant); + if (error) { goto detach; } ==== //depot/projects/usb/src/sys/dev/usb/ukbd.c#37 (text+ko) ==== @@ -649,9 +649,10 @@ usb_callout_init_mtx(&(sc->sc_callout), &Giant, CALLOUT_RETURNUNLOCKED); - err = usbd_transfer_setup(uaa->device, uaa->iface_index, sc->sc_xfer, - ukbd_config, UKBD_N_TRANSFER, sc, - &Giant); + err = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, ukbd_config, + UKBD_N_TRANSFER, sc, &Giant); + if (err) { DPRINTF(0, "error=%s\n", usbd_errstr(err)); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/ulpt.c#37 (text+ko) ==== @@ -510,12 +510,12 @@ struct usbd_interface *iface_ptr = uaa->iface; usb_interface_descriptor_t *id; const char *p_buf[3]; - int32_t iface_index = uaa->iface_index; int32_t iface_alt_index = 0; int32_t unit = device_get_unit(dev); int32_t error; char buf_1[16]; char buf_2[16]; + uint8_t iface_index = uaa->iface_index; DPRINTF(10, "sc=%p\n", sc); @@ -566,7 +566,7 @@ } sc->sc_iface_no = id->bInterfaceNumber; - error = usbd_transfer_setup(uaa->device, iface_index, + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, ulpt_config, ULPT_N_TRANSFER, sc, &(sc->sc_mtx)); if (error) { ==== //depot/projects/usb/src/sys/dev/usb/umass.c#40 (text+ko) ==== @@ -1528,19 +1528,17 @@ if (sc->sc_proto & UMASS_PROTO_BBB) { - err = usbd_transfer_setup - (uaa->device, uaa->iface_index, sc->sc_xfer, - umass_bbb_config, UMASS_T_BBB_MAX, sc, - &(sc->sc_mtx)); + err = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, umass_bbb_config, + UMASS_T_BBB_MAX, sc, &(sc->sc_mtx)); /* skip reset first time */ sc->sc_last_xfer_index = UMASS_T_BBB_COMMAND; } else if (sc->sc_proto & (UMASS_PROTO_CBI | UMASS_PROTO_CBI_I)) { - err = usbd_transfer_setup - (uaa->device, uaa->iface_index, sc->sc_xfer, - umass_cbi_config, + err = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, umass_cbi_config, (sc->sc_proto & UMASS_PROTO_CBI_I) ? UMASS_T_CBI_MAX : (UMASS_T_CBI_MAX - 2), sc, &(sc->sc_mtx)); ==== //depot/projects/usb/src/sys/dev/usb/umct.c#28 (text+ko) ==== @@ -145,7 +145,7 @@ .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ .cb[USB_MODE_HOST] = &umct_read_callback, - .index = 0, /* first interrupt endpoint */ + .ep_index = 0, /* first interrupt endpoint */ }, [2] = { @@ -177,7 +177,7 @@ .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ .cb[USB_MODE_HOST] = &umct_intr_callback, - .index = 1, /* second interrupt endpoint */ + .ep_index = 1, /* second interrupt endpoint */ }, [5] = { @@ -268,6 +268,7 @@ usb_interface_descriptor_t *id; int32_t error; uint16_t maxp; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -298,9 +299,10 @@ } sc->sc_iface_no = id->bInterfaceNumber; - error = usbd_transfer_setup(uaa->device, UMCT_IFACE_INDEX, - sc->sc_xfer, umct_config, UMCT_ENDPT_MAX, - sc, &Giant); + iface_index = UMCT_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, umct_config, UMCT_ENDPT_MAX, sc, &Giant); + if (error) { device_printf(dev, "allocating USB " "transfers failed!\n"); ==== //depot/projects/usb/src/sys/dev/usb/umodem.c#38 (text+ko) ==== @@ -405,17 +405,18 @@ } sc->sc_cm_over_data = 1; } - error = usbd_transfer_setup(uaa->device, sc->sc_data_iface_index, - sc->sc_xfer_data, umodem_config_data, - UMODEM_N_DATA_TRANSFER, + error = usbd_transfer_setup(uaa->device, + &(sc->sc_data_iface_index), sc->sc_xfer_data, + umodem_config_data, UMODEM_N_DATA_TRANSFER, sc, &Giant); if (error) { goto detach; } - error = usbd_transfer_setup(uaa->device, sc->sc_ctrl_iface_index, - sc->sc_xfer_intr, umodem_config_intr, - UMODEM_N_INTR_TRANSFER, + error = usbd_transfer_setup(uaa->device, + &(sc->sc_ctrl_iface_index), sc->sc_xfer_intr, + umodem_config_intr, UMODEM_N_INTR_TRANSFER, sc, &Giant); + if (error == 0) { device_printf(dev, "status change " "notification available\n"); ==== //depot/projects/usb/src/sys/dev/usb/umoscom.c#14 (text+ko) ==== @@ -321,6 +321,7 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); struct umoscom_softc *sc = device_get_softc(dev); int error; + uint8_t iface_index; if (sc == NULL) { return (ENOMEM); @@ -336,10 +337,11 @@ if (error) { goto detach; } - error = usbd_transfer_setup(uaa->device, UMOSCOM_IFACE_NO, + iface_index = UMOSCOM_IFACE_NO; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer_data, umoscom_config_data, - UMOSCOM_N_DATA_TRANSFER, - sc, &Giant); + UMOSCOM_N_DATA_TRANSFER, sc, &Giant); + if (error) { goto detach; } ==== //depot/projects/usb/src/sys/dev/usb/ums.c#36 (text+ko) ==== @@ -410,9 +410,10 @@ */ err = usbreq_set_protocol(uaa->device, NULL, uaa->iface_index, 1); - err = usbd_transfer_setup(uaa->device, uaa->iface_index, sc->sc_xfer, - ums_config, UMS_N_TRANSFER, sc, - &(sc->sc_mtx)); + err = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, ums_config, + UMS_N_TRANSFER, sc, &(sc->sc_mtx)); + if (err) { DPRINTF(0, "error=%s\n", usbd_errstr(err)); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/uplcom.c#35 (text+ko) ==== @@ -452,19 +452,20 @@ sc->sc_data_iface_index = sc->sc_ctrl_iface_index; } - error = usbd_transfer_setup(uaa->device, sc->sc_data_iface_index, - sc->sc_xfer_data, uplcom_config_data, - UPLCOM_N_DATA_TRANSFER, + error = usbd_transfer_setup(uaa->device, + &(sc->sc_data_iface_index), sc->sc_xfer_data, + uplcom_config_data, UPLCOM_N_DATA_TRANSFER, sc, &Giant); + if (error) { DPRINTF(0, "one or more missing data " "pipes, error=%s\n", usbd_errstr(error)); goto detach; } - error = usbd_transfer_setup(uaa->device, sc->sc_ctrl_iface_index, - sc->sc_xfer_intr, uplcom_config_intr, - UPLCOM_N_INTR_TRANSFER, - sc, &Giant); + error = usbd_transfer_setup(uaa->device, + &(sc->sc_ctrl_iface_index), sc->sc_xfer_intr, + uplcom_config_intr, UPLCOM_N_INTR_TRANSFER, sc, &Giant); + if (error) { DPRINTF(0, "no interrupt pipe, error=%s\n", usbd_errstr(error)); ==== //depot/projects/usb/src/sys/dev/usb/urio.c#22 (text+ko) ==== @@ -237,9 +237,10 @@ snprintf(sc->sc_name, sizeof(sc->sc_name), "%s", device_get_nameunit(dev)); - error = usbd_transfer_setup(uaa->device, uaa->iface_index, - sc->sc_xfer, urio_config, URIO_T_MAX, - sc, &(sc->sc_mtx)); + error = usbd_transfer_setup(uaa->device, + &(uaa->iface_index), sc->sc_xfer, + urio_config, URIO_T_MAX, sc, &(sc->sc_mtx)); + if (error) { DPRINTF(sc, 0, "error=%s\n", usbd_errstr(error)); goto detach; ==== //depot/projects/usb/src/sys/dev/usb/usb.c#28 (text+ko) ==== @@ -435,7 +435,6 @@ } } } - usb_post_init_called = 1; /* explore all USB busses in parallell */ ==== //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#19 (text+ko) ==== @@ -780,7 +780,7 @@ /* Allocate and setup two generic FreeBSD USB transfers */ - if (usbd_transfer_setup(dev->bsd_udev, uhe->bsd_iface_index, + if (usbd_transfer_setup(dev->bsd_udev, &(uhe->bsd_iface_index), uhe->bsd_xfer, cfg, 2, uhe, &usb_global_lock)) { return -EINVAL; } @@ -800,7 +800,7 @@ cfg[0].flags.proxy_buffer = 1; cfg[0].flags.short_xfer_ok = 1; - if (usbd_transfer_setup(dev->bsd_udev, uhe->bsd_iface_index, + if (usbd_transfer_setup(dev->bsd_udev, &(uhe->bsd_iface_index), uhe->bsd_xfer, cfg, 1, uhe, &usb_global_lock)) { return -EINVAL; } ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#83 (text+ko) ==== @@ -552,7 +552,8 @@ uint8_t type; /* pipe type */ uint8_t endpoint; /* pipe number */ uint8_t direction; /* pipe direction */ - uint8_t index; /* pipe index match to use */ + uint8_t ep_index; /* pipe index match to use */ + uint8_t if_index; /* "ifaces" index to use */ }; struct usbd_xfer { @@ -919,7 +920,7 @@ struct usbd_pipe *usbd_get_pipe(struct usbd_device *udev, uint8_t iface_index, const struct usbd_config *setup); usbd_status_t usbd_interface_count(struct usbd_device *udev, uint8_t *count); void usbd_transfer_setup_sub(struct usbd_setup_params *parm); -usbd_status_t usbd_transfer_setup(struct usbd_device *udev, uint8_t iface_index, struct usbd_xfer **pxfer, const struct usbd_config *setup_start, uint16_t n_setup, void *priv_sc, struct mtx *priv_mtx); +usbd_status_t usbd_transfer_setup(struct usbd_device *udev, const uint8_t *ifaces, struct usbd_xfer **pxfer, const struct usbd_config *setup_start, uint16_t n_setup, void *priv_sc, struct mtx *priv_mtx); void usbd_transfer_unsetup(struct usbd_xfer **pxfer, uint16_t n_setup); void usbd_std_root_transfer(struct usbd_std_root_transfer *std, usbd_std_root_transfer_func_t *func); void usbd_start_hardware(struct usbd_xfer *xfer); ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#81 (text+ko) ==== @@ -206,7 +206,7 @@ { struct usbd_pipe *pipe = udev->pipes; struct usbd_pipe *pipe_end = udev->pipes_end; - uint8_t index = setup->index; + uint8_t index = setup->ep_index; uint8_t ea_mask; uint8_t ea_val; uint8_t type_mask; @@ -215,7 +215,7 @@ PRINTFN(8, ("udev=%p iface_index=%d address=0x%x " "type=0x%x dir=0x%x index=%d\n", udev, iface_index, setup->endpoint, - setup->type, setup->direction, setup->index)); + setup->type, setup->direction, setup->ep_index)); /* setup expected endpoint direction mask and value */ @@ -746,15 +746,13 @@ * usbd_transfer_setup - setup an array of USB transfers * * NOTE: must always call unsetup after setup - * NOTE: the parameter "iface_index" is ignored in - * case of control pipes * * The idea is that the USB device driver should pre-allocate all * its transfers by one call to this function. *------------------------------------------------------------------------*/ usbd_status_t usbd_transfer_setup(struct usbd_device *udev, - uint8_t iface_index, struct usbd_xfer **ppxfer, + const uint8_t *ifaces, struct usbd_xfer **ppxfer, const struct usbd_config *setup_start, uint16_t n_setup, void *priv_sc, struct mtx *priv_mtx) { @@ -781,6 +779,10 @@ PRINTFN(5, ("setup array has zero length!\n")); return (USBD_INVAL); } + if (ifaces == 0) { + PRINTFN(5, ("ifaces array is NULL!\n")); + return (USBD_INVAL); + } if (priv_mtx == NULL) { PRINTFN(5, ("using global lock\n")); priv_mtx = &usb_global_lock; @@ -864,7 +866,9 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 20 20:17:54 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9015216A468; Thu, 20 Dec 2007 20:17:54 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 44F7816A418 for ; Thu, 20 Dec 2007 20:17:54 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2EC0313C478 for ; Thu, 20 Dec 2007 20:17:54 +0000 (UTC) (envelope-from swise@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKKHstV056422 for ; Thu, 20 Dec 2007 20:17:54 GMT (envelope-from swise@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKKHsuC056419 for perforce@freebsd.org; Thu, 20 Dec 2007 20:17:54 GMT (envelope-from swise@FreeBSD.org) Date: Thu, 20 Dec 2007 20:17:54 GMT Message-Id: <200712202017.lBKKHsuC056419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swise@FreeBSD.org using -f From: Steve Wise To: Perforce Change Reviews Cc: Subject: PERFORCE change 131323 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 20:17:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=131323 Change 131323 by swise@swise:vic10:iwarp on 2007/12/20 20:16:54 Fix integration break. Affected files ... .. //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.c#8 edit Differences ... ==== //depot/projects/iwarp/sys/dev/cxgb/cxgb_offload.c#8 (text+ko) ==== @@ -305,7 +305,7 @@ req->pbl_top = t3_read_reg(adapter, A_ULPTX_PBL_ULIMIT); req->rqt_base = t3_read_reg(adapter, A_ULPRX_RQ_LLIMIT); req->rqt_top = t3_read_reg(adapter, A_ULPRX_RQ_ULIMIT); - req->kdb_addr = (void *)((unsigned long)rman_get_start(adapter->regs_res) + A_SG_KDOORBELL); + req->kdb_addr = (void *)((unsigned long)rman_get_virtual(adapter->regs_res) + A_SG_KDOORBELL); req->pdev = adapter->dev; break; } From owner-p4-projects@FreeBSD.ORG Thu Dec 20 21:14:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A9F216A41A; Thu, 20 Dec 2007 21:14:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D4E9E16A419 for ; Thu, 20 Dec 2007 21:14:54 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C0E9313C459 for ; Thu, 20 Dec 2007 21:14:54 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKLEs0g077494 for ; Thu, 20 Dec 2007 21:14:54 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKLEst8077491 for perforce@freebsd.org; Thu, 20 Dec 2007 21:14:54 GMT (envelope-from jb@freebsd.org) Date: Thu, 20 Dec 2007 21:14:54 GMT Message-Id: <200712202114.lBKLEst8077491@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 131326 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 21:14:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=131326 Change 131326 by jb@jb_freebsd1 on 2007/12/20 21:14:26 IFC Affected files ... .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#14 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/desktop/chapter.sgml#10 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#19 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml#9 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml#10 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/security/chapter.sgml#16 integrate .. //depot/projects/dtrace/src/etc/defaults/periodic.conf#9 integrate .. //depot/projects/dtrace/src/lib/libthr/pthread.map#9 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_exit.c#6 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_syscalls.c#7 integrate .. //depot/projects/dtrace/src/lib/msun/src/math.h#6 integrate .. //depot/projects/dtrace/src/share/man/man4/ng_car.4#3 integrate .. //depot/projects/dtrace/src/sys/dev/ofw/openpromio.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/re/if_re.c#14 integrate .. //depot/projects/dtrace/src/tools/tools/ministat/Makefile#4 delete .. //depot/projects/dtrace/src/tools/tools/ministat/README#4 delete .. //depot/projects/dtrace/src/tools/tools/ministat/chameleon#4 delete .. //depot/projects/dtrace/src/tools/tools/ministat/iguana#4 delete .. //depot/projects/dtrace/src/tools/tools/ministat/ministat.c#6 delete .. //depot/projects/dtrace/src/usr.bin/Makefile#13 integrate .. //depot/projects/dtrace/src/usr.bin/ministat/Makefile#2 integrate .. //depot/projects/dtrace/src/usr.bin/ministat/ministat.1#1 branch .. //depot/projects/dtrace/src/usr.sbin/pkg_install/version/pkg_version.1#5 integrate .. //depot/projects/dtrace/src/usr.sbin/wpa/wpa_supplicant/Makefile#8 integrate Differences ... ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#14 (text+ko) ==== @@ -2,8 +2,8 @@ The FreeBSD Documentation Project The FreeBSD Simplified Chinese Project - Original Revision: 1.150 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.17 2007/12/17 16:24:09 loader Exp $ + Original Revision: 1.151 + $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.18 2007/12/20 14:04:25 loader Exp $ --> @@ -273,8 +273,8 @@ ҪʹÓÃÒ»¸ö²»Í¬µÄÏÔʾģʽ£¬ Äã±ØÐëÊ×ÏÈÖØбàÒëÄں˲¢°üº¬ÒÔÏÂ2¸öÑ¡Ï - OPTIONS VESA -OPTIONS SC_PIXEL_MODE + options VESA +options SC_PIXEL_MODE ÔÚÄÚºËÓÃÕâ2¸öÑ¡Ïî±àÒëÍê³Éºó£¬Äã¾Í¿ÉÒÔʹÓà &man.vidcontrol.1; ¹¤¾ßÀ´²â¶¨ÄãµÄÓ²¼þÖ§³ÖºÎÖÖÏÔʾģʽÁË¡£ ÒÔ root @@ -1856,7 +1856,7 @@ ΪʲôʹÓà <command>/bin/kill</command>? - Ðí¶àshellÌṩÁËÄÚ½¨killÃüÁ + Ðí¶àshellÌṩÁËÄÚ½¨ kill ÃüÁ ÕâÑù£¬ shell¾ÍÄÜÖ±½Ó·¢ËÍÐźţ¬¶ø²»ÊÇÔËÐÐ /bin/kill¡£ Õâµã·Ç³£ÓÐÓ㬠µ«²»Í¬shellÓв»Í¬µÄÓï·¨À´Ö¸¶¨·¢ËÍÐźŵÄÃû×Ö£¬ ÓëÆäÊÔͼ°ÑËüÃÇѧÍêµ¹²»Èç¼òµ¥µØÖ±½ÓʹÓà @@ -1866,16 +1866,18 @@ - ·¢ËÍÆäËûµÄÐźÅÒ²ºÜÏàËÆ£¬Ö»ÒªÔÚÃüÁîÐÐÌæ»»TERM»òKILL¾ÍÐÐÁË¡£ + ·¢ËÍÆäËûµÄÐźÅÒ²ºÜÏàËÆ£¬ + Ö»ÒªÔÚÃüÁîÐÐÌæ»» TERM »ò + KILL ¾ÍÐÐÁË¡£ - ÔÚϵͳÉÏËæÒâɱËÀ½ø³ÌÊǸö»µÖ÷Ò⣬ÌرðÊÇ&man.init.8;£¬ËüµÄ½ø³ÌIDÊÇ1£¬Ëü·Ç³£ÌØÊâ¡£ - ¿ÉÒÔÔËÐÐ /bin/kill -s KILL 1 ÃüÁîÀ´ÈÃϵͳѸËٹػú¡£ - µ±Äú°´Ï Return ¼ü֮ǰ£¬ Ò»¶¨Òª - Ïêϸ¼ì²éÄúÔËÐÐ &man.kill.1; ʱËùÖ¸¶¨µÄ²ÎÊý¡£ - - + ÔÚϵͳÉÏËæÒâɱËÀ½ø³ÌÊǸö»µÖ÷Ò⣬ÌرðÊÇ&man.init.8;£¬ + ËüµÄ½ø³ÌIDÊÇ1£¬Ëü·Ç³£ÌØÊâ¡£¿ÉÒÔÔËÐÐ + /bin/kill -s KILL 1 ÃüÁîÀ´ÈÃϵͳѸËٹػú¡£ + µ±Äú°´Ï Return £¨»Ø³µ£©¼ü֮ǰ£¬ + Ò»¶¨Òª Ïêϸ¼ì²éÄúÔËÐÐ &man.kill.1; + ʱËùÖ¸¶¨µÄ²ÎÊý¡£ @@ -1885,14 +1887,14 @@ ÃüÁîÐÐ ÔÚFreeBSDÀÿÈÕÓÐÒ»´ó¶Ñ¹¤×÷ÊÇÔÚÃüÁîÐеĽçÃæÍê³ÉµÄ,ÄǾͽÐ×öshell¡£ - Ò»¸öshellµÄÖ÷Òª¹¦ÄܾÍÊÇ´ÓÊäÈëÊÇÈ¡µÃÃüÁîÈ»ºóÈ¥Ö´ÐÐËû¡£ + Ò»¸öshellµÄÖ÷Òª¹¦ÄܾÍÊÇ´ÓÊäÈëÈ¡µÃÃüÁîÈ»ºóÈ¥Ö´ÐÐËû¡£ Ðí¶àµÄshellͬÑùÄÜ°ïÎÒÃÇÍê³ÉÄÚ½¨µÄÿÈÕ¹¦ÄÜ£¬ÀýÈç:Îļþ¹ÜÀí¡¢ÎļþÑ°ÕÒ¡¢ÃüÁîÐб༭¡¢ ºêÖ¸ÁîºÍ»·¾³±äÁ¿¡£FreeBSDÄÚº¬ÁËһЩshell£¬ÀýÈç:sh¡¢Bourne Shell¡¢ tcshºÍ¸ÄÁ¼¹ýµÄC-shell¡£ ÁíÍâÒ²ÓÐЩshellÒ²¿ÉÔÚFreeBSDµÄPortsµÃµ½£¬ÀýÈç:zshºÍbash¡£ - ÄúÏëʹÓÃÄÇÒ»ÖÖshellÈ¡¾öÓÚÄúµÄϲºÃ£¬ + ÄúÏëʹÓÃÄÄÒ»ÖÖshellÈ¡¾öÓÚÄúµÄϲºÃ£¬ ¼ÙÈçÄúÊÇC³ÌÐòÉè¼Æʦ£¬Äú¿ÉÄÜÑ¡ÔñÒ»¸öC-like shellÀýÈçtcsh¡£ ¼ÙÈçÄúÊÇ´ÓLinux¹ýÀ´µÄ»òÊÇÒ»¸öÃüÁîÐеÄÐÂÊÖ£¬Äú¿ÉÄÜ»áÊÔÒ»ÏÂbash¡£ ÕâÒ»µã¸æËßÎÒÃÇÿһ¸öshell¶¼Óи÷×ÔµÄÌØÐÔ£¬¿ÉÄÜÊÊÓÃÓÚÄúµÄ¹¤×÷»·¾³£¬Ò²¿ÉÄܲ»ÊÊÓÃÓÚÄúµÄ¹¤×÷»·¾³¡£ ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/desktop/chapter.sgml#10 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Chinese Project Original Revision: 1.74 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/desktop/chapter.sgml,v 1.13 2007/12/05 16:21:45 loader Exp $ + $FreeBSD: doc/zh_CN.GB2312/books/handbook/desktop/chapter.sgml,v 1.14 2007/12/20 14:04:25 loader Exp $ --> @@ -344,8 +344,8 @@ Opera£¬½«ÉÏÃæÀý×ÓÖÐµÄ opera Ì滻Ϊ linux-opera¡£Linux °æ±¾ÔÚijЩÇé¿öÏ·dz£ÓÐÓã¬ÏóÊÇʹÓÃÖ»ÓÐ Linux °æ±¾µÄ²å¼þ£¬ÀýÈç Adobe - &acrobat.reader;¡£²»È»µÄ»°ÔÚÆäËü·½Ã棬 - FreeBSD ºÍ Linux °æ±¾ÊÇÍêÈ«Ò»ÑùµÄ¡£ + &acrobat.reader;¡£¾ÍÆäËü·½ÃæÀ´Ëµ£¬ + FreeBSD ºÍ Linux °æ±¾µÄ¹¦ÄÜÊÇÍêÈ«Ò»ÑùµÄ¡£ ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#19 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Simplified Chinese Project Original Revision: 1.385 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/install/chapter.sgml,v 1.27 2007/12/17 16:24:09 loader Exp $ + $FreeBSD: doc/zh_CN.GB2312/books/handbook/install/chapter.sgml,v 1.28 2007/12/20 14:04:26 loader Exp $ --> @@ -63,15 +63,17 @@ - ÔĶÁÄúÒª°²×°µÄ FreeBSD °æ±¾Ëù¸½µÄÓ²¼þÖ§³ÖÁбíÒÔÈ·¶¨ÄúµÄÓ²¼þÓÐûÓб»Ö§³Ö¡£ + ÔĶÁÄúÒª°²×°µÄ FreeBSD + °æ±¾Ëù¸½µÄÓ²¼þÖ§³ÖÁбíÒÔÈ·¶¨ÄúµÄÓ²¼þÓÐûÓб»Ö§³Ö¡£ - Ò»°ãÀ´Ëµ£¬´Ë°²×°ËµÃ÷ÊÇÕë¶Ô &i386; (PC ¼æÈÝ»ú) Ìåϵ½á¹¹µÄµçÄÔ¡£ - Èç¹ûÓÐÆäËüÌåϵ½á¹¹(ÈçAlpha)µÄ°²×°ËµÃ÷£¬ÎÒÃǽ«Ò»²¢Áгö¡£ - ËäÈ»±¾Îĵµ¾­³£±£³Ö¸üУ¬µ«ÓпÉÄÜÓëÄú°²×°°æ±¾ÉÏËù´øµÄ˵Ã÷ÎĵµÓÐЩÐí³öÈë¡£ - ÔÚÕâÀィÒéÄúʹÓñ¾ËµÃ÷ÎÄÕÂ×÷Ϊһ°ãÐԵݲװָµ¼²Î¿¼Êֲᡣ + Ò»°ãÀ´Ëµ£¬´Ë°²×°ËµÃ÷ÊÇÕë¶Ô &i386; (PC ¼æÈÝ»ú) + Ìåϵ½á¹¹µÄµçÄÔ¡£Èç¹ûÓÐÆäËüÌåϵ½á¹¹(ÈçAlpha)µÄ°²×°ËµÃ÷£¬ + ÎÒÃǽ«Ò»²¢Áгö¡£ËäÈ»±¾Îĵµ¾­³£±£³Ö¸üУ¬ + µ«ÓпÉÄÜÓëÄú°²×°°æ±¾ÉÏËù´øµÄ˵Ã÷ÎĵµÓÐЩÐí³öÈë¡£ + ÔÚÕâÀィÒéÄúʹÓñ¾ËµÃ÷ÎÄÕÂ×÷Ϊһ°ãÐԵݲװָµ¼²Î¿¼Êֲᡣ @@ -87,16 +89,18 @@ ¹ØÓÚ°²×°ËùÐèµÄ×îµÍÓ²¼þÅäÖÃÐÅÏ¢£¬ ¿ÉÒÔÔÚ &os; ÍøÕ¾µÄ ·¢ÐаæÐÅÏ¢ - ²¿·ÖÖÐµÄ °²×°ËµÃ÷Êé ÖÐÕÒµ½¡£ ÔÚ½ÓÏÂÀ´µÄ¼¸½ÚÖУ¬ ¸ø³öÁËÕâЩÐÅÏ¢µÄһЩ×ܽᡣ - ËæÄú°²×° &os; µÄ·½Ê½²»Í¬£¬ ¿ÉÄÜÐèҪʹÓÃÈíÇý»òΪ &os; Ö§³ÖµÄ CDROM Çý¶¯Æ÷£¬ + ²¿·ÖÖÐµÄ °²×°ËµÃ÷Êé ÖÐÕÒµ½¡£ÔÚ½ÓÏÂÀ´µÄ¼¸½ÚÖУ¬ + ¸ø³öÁËÕâЩÐÅÏ¢µÄһЩ×ܽᡣËæÄú°²×° &os; µÄ·½Ê½²»Í¬£¬ + ¿ÉÄÜÐèҪʹÓÃÈíÇý»òΪ &os; Ö§³ÖµÄ CDROM Çý¶¯Æ÷£¬ ÓÐʱºòÒ²¿ÉÄÜÐèÒªµÄÊÇÒ»¿éÍø¿¨¡£ Õ⽫ÔÚ ÖнøÐнéÉÜ¡£ &os;/&arch.i386; ºÍ &os;/&arch.pc98; - &os;/&arch.i386; ºÍ &os;/&arch.pc98; °æ±¾£¬ ¶¼ÐèÒª 486 »ò¸ü¸ßµÄ´¦ÀíÆ÷£¬ - ÒÔ¼°ÖÁÉÙ 24 MB µÄ RAM¡£ ÄúÐèÒªÖÁÉÙ 150 MB µÄ¿ÕÏÐÓ²Å̿ռ䣬 + &os;/&arch.i386; ºÍ &os;/&arch.pc98; °æ±¾£¬ + ¶¼ÐèÒª 486 »ò¸ü¸ßµÄ´¦ÀíÆ÷£¬ÒÔ¼°ÖÁÉÙ 24 MB µÄ RAM¡£ + ÄúÐèÒªÖÁÉÙ 150 MB µÄ¿ÕÏÐÓ²Å̿ռ䣬 ²ÅÄÜÍê³É×îСµÄ°²×°ÅäÖᣠ@@ -113,16 +117,16 @@ Òª°²×° &os;/&arch.alpha;£¬ ÄúʹÓõıØÐëÊÇijÖÖÊÜÖ§³ÖµÄƽ̨ (²Î¼û ) - ¶øÇÒ &os; ±ØÐë¶ÀÕ¼Ò»¸öÓ²ÅÌ¡£ Ä¿Ç° &os; »¹ÎÞ·¨ÓëÆäËü²Ù×÷ϵͳ¹²Ïí´ÅÅÌ¡£ - Õâ¸ö´ÅÅ̱ØÐë½ÓÔÚ SRM ¹Ì¼þÖ§³ÖµÄ SCSI ¿ØÖÆÆ÷ÉÏ£¬ »òÕßÈç¹ûÄú»úÆ÷É쵀 - SRM Ö§³Ö´Ó IDE Ó²ÅÌÆô¶¯£¬ ÔòӦװµ½ IDE Ó²ÅÌÉÏ¡£ + ¶øÇÒ &os; ±ØÐë¶ÀÕ¼Ò»¸öÓ²ÅÌ¡£Ä¿Ç° &os; »¹ÎÞ·¨ÓëÆäËü²Ù×÷ϵͳ¹²Ïí´ÅÅÌ¡£ + Õâ¸ö´ÅÅ̱ØÐë½ÓÔÚ SRM ¹Ì¼þÖ§³ÖµÄ SCSI ¿ØÖÆÆ÷ÉÏ£¬»òÕßÈç¹ûÄú»úÆ÷É쵀 + SRM Ö§³Ö´Ó IDE Ó²ÅÌÆô¶¯£¬ÔòӦװµ½ IDE Ó²ÅÌÉÏ¡£ ARC Alpha BIOS SRM - ´ËÍâÄú»¹ÐèÒªÓÃÓÚÄúµÄƽ̨ SRM ¿ØÖÆ̨¹Ì¼þ¡£ ÓÐʱ£¬ ¿ÉÒÔÔÚ - AlphaBIOS (»ò ARC) ¹Ì¼þºÍ SRM Ö®¼äÇл»¡£ Èç¹ûûÓУ¬ + ´ËÍâÄú»¹ÐèÒªÓÃÓÚÄúµÄƽ̨ SRM ¿ØÖÆ̨¹Ì¼þ¡£ÓÐʱ£¬¿ÉÒÔÔÚ + AlphaBIOS (»ò ARC) ¹Ì¼þºÍ SRM Ö®¼äÇл»¡£Èç¹ûûÓУ¬ ÔòÐèÒª´ÓÖÆÔìÉÌÍøÕ¾ÉÏÏÂÔز¢°²×°ÐµĹ̼þ¡£ @@ -162,7 +166,8 @@ Òª°²×° &os;/&arch.sparc64;£¬ ±ØÐëʹÓÃËüÖ§³ÖµÄƽ̨ (²Î¼û )¡£ - &os;/&arch.sparc64; ÐèÒª¶ÀÕ¼Ò»¿é´ÅÅÌ¡£ Ä¿Ç°»¹Ã»Óа취ÓëÆäËü²Ù×÷ϵͳ¹²ÏíÒ»¿é´ÅÅÌ¡£ + &os;/&arch.sparc64; ÐèÒª¶ÀÕ¼Ò»¿é´ÅÅÌ¡£ + Ä¿Ç°»¹Ã»Óа취ÓëÆäËü²Ù×÷ϵͳ¹²ÏíÒ»¿é´ÅÅÌ¡£ @@ -172,10 +177,11 @@ Ö§³ÖµÄÓ²¼þÁÐ±í£¬ »á×÷Ϊ &os; ·¢Ðа汾µÄ &os; ¼æÈÝÓ²¼þ˵Ã÷Ìṩ¡£ Õâ¸öÎĵµÍ¨³£¿ÉÒÔÔÚ CDROM »ò FTP °²×°ÎļþµÄ¶¥¼¶Ä¿Â¼ÕÒµ½£¬ ËüµÄÃû×ÖÊÇ HARDWARE.TXT£¬ ´ËÍ⣬ ÔÚ - sysinstall µÄ documentation ²Ëµ¥Ò²¿ÉÒÔÕÒµ½¡£ - ËüÕë¶ÔÌض¨µÄÓ²¼þ¼Ü¹¹ÁгöÁË &os; ÒÑÖªÖ§³ÖµÄÓ²¼þ¡£ ²»Í¬·¢Ðа汾ºÍ¼Ü¹¹ÉϵÄÓ²¼þÖ§³ÖÁÐ±í£¬ - ¿ÉÒÔÔÚ &os; ÍøÕ¾µÄ ·¢ÐаæÐÅÏ¢ Ò³ÃæÉÏÕÒµ½¡£ + sysinstall µÄ documentation + ²Ëµ¥Ò²¿ÉÒÔÕÒµ½¡£ËüÕë¶ÔÌض¨µÄÓ²¼þ¼Ü¹¹ÁгöÁË &os; ÒÑÖªÖ§³ÖµÄÓ²¼þ¡£ + ²»Í¬·¢Ðа汾ºÍ¼Ü¹¹ÉϵÄÓ²¼þÖ§³ÖÁÐ±í£¬¿ÉÒÔÔÚ &os; ÍøÕ¾µÄ ·¢ÐаæÐÅÏ¢ + Ò³ÃæÉÏÕÒµ½¡£ @@ -185,11 +191,12 @@ ÁгöÄúµçÄÔµÄÓ²¼þÇåµ¥ - ÔÚ°²×° FreeBSD ֮ǰ£¬ÄúÓ¦¸ÃÊÔ׎«ÄúµçÄÔÖеÄÓ²¼þÇåµ¥ÁгöÀ´¡£FreeBSD - °²×°³ÌÐò»á½«ÕâЩӲ¼þ(´ÅÅÌ¡¢Íø¿¨¡¢¹âÇýµÈµÈ)ÒÔ¼°Ðͺż°ÖÆÔ쳧ÉÌÁгöÀ´¡£ - FreeBSD Ò²»á³¢ÊÔΪÕâЩÉ豸ÕÒ³ö×îÊʵ±µÄ IRQ ¼° IO ¶Ë¿ÚµÄÉ趨¡£µ«ÊÇÒòΪ PC - µÄÓ²¼þÖÖÀàʵÔÚÌ«¹ý¸´ÔÓ£¬Õâ¸ö²½Öè²»Ò»¶¨×ÜÊÇÄܳɹ¦¡£ - Õâʱ£¬Äú¾Í¿ÉÄÜÐèÒªÊÖ¶¯¸ü¸ÄÓÐÎÊÌâµÄÉ豸µÄÉ趨ֵ¡£ + ÔÚ°²×° FreeBSD ֮ǰ£¬ÄúÓ¦¸ÃÊÔ׎«ÄúµçÄÔÖеÄÓ²¼þÇåµ¥ÁгöÀ´¡£ + FreeBSD °²×°³ÌÐò»á½«ÕâЩӲ¼þ(´ÅÅÌ¡¢Íø¿¨¡¢¹âÇýµÈµÈ) + ÒÔ¼°Ðͺż°ÖÆÔ쳧ÉÌÁгöÀ´¡£FreeBSD Ò²»á³¢ÊÔΪÕâЩÉ豸ÕÒ³ö×îÊʵ±µÄ IRQ + ¼° IO ¶Ë¿ÚµÄÉ趨¡£µ«ÊÇÒòΪ PC µÄÓ²¼þÖÖÀàʵÔÚÌ«¹ý¸´ÔÓ£¬ + Õâ¸ö²½Öè²»Ò»¶¨×ÜÊÇÄܳɹ¦¡£Õâʱ£¬ + Äú¾Í¿ÉÄÜÐèÒªÊÖ¶¯¸ü¸ÄÓÐÎÊÌâµÄÉ豸µÄÉ趨ֵ¡£ Èç¹ûÄúÒѾ­°²×°ÁËÆäËüµÄ²Ù×÷ϵͳ£¬Èç &windows; »ò Linux£¬ ÄÇôÄú¿ÉÒÔÏÈÓÉÕâЩϵͳËùÌṩµÄ¹¤¾ßÀ´²é¿´ÄúµÄÉ豸É趨ֵÊÇÔõô·ÖÅäµÄ¡£ @@ -295,45 +302,52 @@ ±¸·ÝÄúµÄÊý¾Ý - Èç¹ûÄúµÄµçÄÔÉÏÃæ´æÓÐÖØÒªµÄÊý¾Ý×ÊÁÏ£¬ÄÇôÔÚ°²×° FreeBSD Ç°ÇëÈ·¶¨ - ÄúÒѾ­½«ÕâЩ×ÊÁϱ¸·ÝÁË£¬²¢ÇÒÏȲâÊÔÕâЩ±¸·ÝÎĵµÊÇ·ñÓÐÎÊÌâ¡£FreeBSD - °²×°³ÌÐòÔÚҪдÈëÈκÎ×ÊÁϵ½ÄúµÄÓ²ÅÌÇ°¶¼»áÏÈÌáÐÑÄúÈ·ÈÏ£¬Ò»µ©ÄúÈ·¶¨Òª - дÈ룬ÄÇôÒÔºó¾ÍûÓз´»ÚµÄ»ú»á¡£ + Èç¹ûÄúµÄµçÄÔÉÏÃæ´æÓÐÖØÒªµÄÊý¾Ý×ÊÁÏ£¬ + ÄÇôÔÚ°²×° FreeBSD Ç°ÇëÈ·¶¨ÄúÒѾ­½«ÕâЩ×ÊÁϱ¸·ÝÁË£¬ + ²¢ÇÒÏȲâÊÔÕâЩ±¸·ÝÎĵµÊÇ·ñÓÐÎÊÌâ¡£FreeBSD + °²×°³ÌÐòÔÚҪдÈëÈκÎ×ÊÁϵ½ÄúµÄÓ²ÅÌÇ°¶¼»áÏÈÌáÐÑÄúÈ·ÈÏ£¬ + Ò»µ©ÄúÈ·¶¨ÒªÐ´È룬ÄÇôÒÔºó¾ÍûÓз´»ÚµÄ»ú»á¡£ ¾ö¶¨Òª½« FreeBSD °²×°µ½ÄÄÀï Èç¹ûÄúÏëÈà FreeBSD ʹÓÃÕû¸öÓ²ÅÌ£¬ÄÇôÇëÖ±½ÓÌøµ½ÏÂÒ»½Ú¡£ - µ«ÊÇ£¬Èç¹ûÄúÏëÈà FreeBSD ¸úÄúÒÑÓеÄϵͳ²¢´æ£¬ÄÇôÄú±ØÐë¶ÔÄúÊý¾Ý - ´æÔÚÓ²Å̵ķֲ¼·½Ê½ÓÐÉîÈëµÄÁ˽âÒÔ¼°ÆäËùÔì³ÉµÄÓ°Ïì¡£ + + µ«ÊÇ£¬Èç¹ûÄúÏëÈà FreeBSD ¸úÄúÒÑÓеÄϵͳ²¢´æ£¬ + ÄÇôÄú±ØÐë¶ÔÄúÊý¾Ý´æÔÚÓ²Å̵ķֲ¼·½Ê½ÓÐÉîÈëµÄÁ˽⣬ + ÒÔ¼°ÆäËùÔì³ÉµÄÓ°Ïì¡£ &os;/&arch.i386; Ìåϵ½á¹¹µÄÓ²ÅÌ·ÖÅ䷽ʽ Ò»¸ö PC Ó²ÅÌ¿ÉÒÔ±»Ï¸·ÖΪÐí¶à¿é¡£ - ÕâЩ¿é±»³ÆΪ partitions (·ÖÇø)¡£ ÓÉÓÚ - &os; ÄÚ²¿Ò²ÓзÖÇøµÄ¸ÅÄ Èç´ËÃüÃûºÜÈÝÒ×µ¼Ö»ìÏý£¬ Òò´ËÎÒÃÇÔÚ &os; ÖУ¬ - ½«Æä³ÆΪ´ÅÅÌ slice£¬ »ò¼ò³ÆΪ slices¡£ ÀýÈ磬 FreeBSD ÌṩµÄÓÃÓÚ²Ù×÷ PC ´ÅÅÌ·ÖÇøµÄ¹¤¾ß - fdisk ¾Í½«Æä³ÆΪ slice ¶ø²»ÊÇ partition¡£ ÓÉÓÚÉè¼ÆµÄÔ­Òò£¬ ÿ¸öÓ²Å̽ö - Ö§³ÖËĸö·ÖÇø£»ÕâЩ·ÖÇø½Ð×öÖ÷·ÖÇø(Primary partion)¡£ - ΪÁËÍ»ÆÆÕâ¸öÏÞÖÆÒÔ±ãÄÜʹÓøü¶àµÄ·ÖÇø£¬¾ÍÓÐÁËеķÖÇøÀàÐÍ£¬½Ð×ö - À©Õ¹·ÖÇø(Extended partition)¡£Ò»¸öÓ²ÅÌ¿ÉÒÔÓµÓÐÒ»¸öÀ©Õ¹·ÖÇø¡£ÔÚ - À©Õ¹·ÖÇøÀï¿ÉÒÔ½¨Á¢Ðí¶à¸öËùνµÄÂß¼­·ÖÇø(Logical partitions)¡£ + ÕâЩ¿é±»³ÆΪ partitions (·ÖÇø)¡£ + ÓÉÓÚ &os; ÄÚ²¿Ò²ÓзÖÇøµÄ¸ÅÄÈç´ËÃüÃûºÜÈÝÒ×µ¼Ö»ìÏý£¬ + Òò´ËÎÒÃÇÔÚ &os; ÖУ¬½«Æä³ÆΪ´ÅÅÌ slice£¬»ò¼ò³ÆΪ slices¡£ + ÀýÈ磬 FreeBSD ÌṩµÄÓÃÓÚ²Ù×÷ PC ´ÅÅÌ·ÖÇøµÄ¹¤¾ß + fdisk ¾Í½«Æä³ÆΪ slice ¶ø²»ÊÇ partition¡£ + ÓÉÓÚÉè¼ÆµÄÔ­Òò£¬ ÿ¸öÓ²Å̽öÖ§³ÖËĸö·ÖÇø£» ÕâЩ·ÖÇø½Ð×ö + Ö÷·ÖÇø(Primary partion)¡£ + ΪÁËÍ»ÆÆÕâ¸öÏÞÖÆÒÔ±ãÄÜʹÓøü¶àµÄ·ÖÇø£¬¾ÍÓÐÁËеķÖÇøÀàÐÍ£¬½Ð×ö + À©Õ¹·ÖÇø(Extended partition)¡£ + Ò»¸öÓ²ÅÌ¿ÉÒÔÓµÓÐÒ»¸öÀ©Õ¹·ÖÇø¡£ÔÚÀ©Õ¹·ÖÇøÀï¿ÉÒÔ½¨Á¢Ðí¶à¸öËùνµÄ + Âß¼­·ÖÇø(Logical partitions)¡£ - ÿ¸ö·ÖÇø¶¼ÓÐÆä¶ÀÁ¢µÄ·ÖÇøºÅ(partition ID), - ÓÃÒÔÇø·Öÿ¸ö·ÖÇøµÄÊý¾ÝÀàÐÍ¡£FreeBSD ·ÖÇøµÄ·ÖÇøºÅΪ 165¡£ - + ÿ¸ö·ÖÇø¶¼ÓÐÆä¶ÀÁ¢µÄ ·ÖÇøºÅ(partition ID), + ÓÃÒÔÇø·Öÿ¸ö·ÖÇøµÄÊý¾ÝÀàÐÍ¡£FreeBSD ·ÖÇøµÄ·ÖÇøºÅΪ + 165¡£ - Ò»°ã¶øÑÔ£¬Ã¿ÖÖ²Ù×÷ϵͳ¶¼»áÓÐ×Ô¼º¶ÀÌصķ½Ê½À´Çø±ð·ÖÇø¡£ÀýÈç DOS ¼°Æä - Ö®ºóµÄ &windows;£¬ »á·ÖÅä¸øÿ¸öÖ÷·ÖÇø¼°Âß¼­·ÖÇøÒ»¸ö + Ò»°ã¶øÑÔ£¬Ã¿ÖÖ²Ù×÷ϵͳ¶¼»áÓÐ×Ô¼º¶ÀÌصķ½Ê½À´Çø±ð·ÖÇø¡£ + ÀýÈç DOS ¼°ÆäÖ®ºóµÄ &windows;£¬ »á·ÖÅä¸øÿ¸öÖ÷·ÖÇø¼°Âß¼­·ÖÇøÒ»¸ö Çý¶¯Æ÷×Ö·û£¬ ´Ó C: ¿ªÊ¼¡£ - FreeBSD ±ØÐë°²×°ÔÚÖ÷·ÖÇø¡£ FreeBSD ¿ÉÒÔÔÚÕâ¸ö·ÖÇøÉÏÃæ´æ·ÅϵͳÊý¾Ý - »òÊÇÄú½¨Á¢µÄÈκÎÎļþ¡£È»¶ø£¬Èç¹ûÄúÓжà¸öÓ²ÅÌ£¬ÄúÒ²¿ÉÒÔÔÚÕâЩӲÅÌÉÏ(È«²¿ - »ò²¿·Ö)½¨Á¢ FreeBSD ·ÖÇø¡£ÔÚÄú°²×° FreeBSD µÄʱºò£¬±ØÐëÒªÓÐÒ»¸ö·ÖÇø¿ÉÒÔ¸ø - FreeBSD ʹÓá£Õâ¸ö·ÖÇø¿ÉÒÔÊÇÉÐδ¹æ»®µÄ·ÖÇø£¬ + FreeBSD ±ØÐë°²×°ÔÚÖ÷·ÖÇø¡£FreeBSD + ¿ÉÒÔÔÚÕâ¸ö·ÖÇøÉÏÃæ´æ·ÅϵͳÊý¾Ý»òÊÇÄú½¨Á¢µÄÈκÎÎļþ¡£ + È»¶ø£¬Èç¹ûÄúÓжà¸öÓ²ÅÌ£¬ÄúÒ²¿ÉÒÔÔÚÕâЩӲÅÌÉÏ(È«²¿»ò²¿·Ö)½¨Á¢ FreeBSD + ·ÖÇø¡£ÔÚÄú°²×° FreeBSD µÄʱºò£¬±ØÐëÒªÓÐÒ»¸ö·ÖÇø¿ÉÒÔ¸ø FreeBSD ʹÓᣠ+ Õâ¸ö·ÖÇø¿ÉÒÔÊÇÉÐδ¹æ»®µÄ·ÖÇø£¬ »òÊÇÒѾ­´æÔÚÇÒ´æÓÐÊý¾Ýµ«Äú²»ÔÙÐèÒªµÄ·ÖÇø¡£ Èç¹ûÄúÒѾ­ÓÃÍêÁËÄúÓ²ÅÌÉϵÄËùÓзÖÇø£¬ @@ -341,62 +355,74 @@ (Èç DOS »ò &windows; Ï嵀 fdisk) À´ÌÚ³öÒ»¸ö·ÖÇø¸ø FreeBSD ʹÓᣠ- Èç¹ûÄúµÄij¸ö·ÖÇøÓжàÓàµÄ¿Õ¼ä£¬Äú¿ÉÒÔʹÓÃËü¡£µ«ÊÇʹÓÃÇ°ÄúÐèÒªÏÈÕûÀí - Ò»ÏÂÕâЩ·ÖÇø¡£ + Èç¹ûÄúµÄij¸ö·ÖÇøÓжàÓàµÄ¿Õ¼ä£¬Äú¿ÉÒÔʹÓÃËü¡£ + µ«ÊÇʹÓÃÇ°ÄúÐèÒªÏÈÕûÀíÒ»ÏÂÕâЩ·ÖÇø¡£ - FreeBSD ×îС°²×°ÐèÒªÔ¼ 100 MB µÄ¿Õ¼ä£¬µ«ÊÇÕâ½öÊÇ ·Ç³£ - »ù±¾µÄ°²×°£¬¼¸ºõûÓÐʣ϶àÉÙ¿Õ¼ä¿ÉÒÔ½¨Á¢Äú×Ô¼ºµÄÎļþ¡£Ò»¸ö½ÏÀíÏëµÄ×îС°²×°ÊÇ - 250 MB£¬²»º¬Í¼ÐνçÃ棻»òÊÇ 350 MB ÒÔÉÏ£¬°üº¬Í¼ÐνçÃæ¡£Èç¹ûÄú»¹ÐèÒª°²×° - ÆäËüµÄµÚÈý·½³§É̵ÄÌ×¼þ£¬ÄÇô½«ÐèÒª¸ü¶àµÄÓ²Å̿ռ䡣 + FreeBSD ×îС°²×°ÐèÒªÔ¼ 100 MB µÄ¿Õ¼ä£¬µ«ÊÇÕâ½öÊÇ + ·Ç³£ »ù±¾µÄ°²×°£¬ + ¼¸ºõûÓÐʣ϶àÉÙ¿Õ¼ä¿ÉÒÔ½¨Á¢Äú×Ô¼ºµÄÎļþ¡£Ò»¸ö½ÏÀíÏëµÄ×îС°²×°ÊÇ + 250 MB£¬²»º¬Í¼ÐνçÃ棻»òÊÇ 350 MB ÒÔÉÏ£¬°üº¬Í¼ÐνçÃæ¡£ + Èç¹ûÄú»¹ÐèÒª°²×°ÆäËüµÄµÚÈý·½³§É̵ÄÌ×¼þ£¬ + ÄÇô½«ÐèÒª¸ü¶àµÄÓ²Å̿ռ䡣 - Äú¿ÉÒÔʹÓÃÉÌÒµÈí¼þ£¬ÀýÈç &partitionmagic; (Ó²ÅÌ·ÖÇøħÊõʦ) - »òÀàËÆ GParted ÕâÑùµÄÃâ·Ñ¹¤¾ßÀ´µ÷Õû·ÖÇø³ß´ç£¬ - Ϊ FreeBSD ÌÚ³ö¿Õ¼ä¡£ FreeBSD ¹âÅÌµÄ tools - Ŀ¼°üº¬Á½¸öÃâ·ÑµÄ¹¤¾ßÒ²¿ÉÒÔÍê³ÉÕâ¸ö¹¤×÷£ºFIPS ÒÔ¼° - PResizer£¬ËüÃǵÄÎĵµ¿ÉÒÔÔÚͬһĿ¼ÖÐÕÒµ½¡£FIPS¡¢ - PResizer£¬ºÍ &partitionmagic; - Äܹ»¸Ä±ä FAT16 ÒÔ¼° FAT32 ·ÖÇøµÄ´óС — - ËüÃÇ¿ÉÒÔÔÚ &ms-dos; ÒÔ¼° &windows; ME ϵͳÖÐʹÓᣠÕâЩ¹¤¾ßµÄ˵Ã÷Îļþ¿ÉÒÔÔÚͬһ¸öĿ¼ÏÂÃæÕÒµ½¡£ - &partitionmagic; ºÍ GParted - ¶¼Äܸıä NTFS ·ÖÇøµÄ³ß´ç¡£ GParted - ÔÚÐí¶à Live CD Linux ·¢Ðа棬 Èç - SystemRescueCD ÖоùÓÐÌṩ¡£ + Äú¿ÉÒÔʹÓÃÉÌÒµÈí¼þ£¬ÀýÈç + &partitionmagic; (Ó²ÅÌ·ÖÇøħÊõʦ) + »òÀàËÆ GParted + ÕâÑùµÄÃâ·Ñ¹¤¾ßÀ´µ÷Õû·ÖÇø³ß´ç£¬Îª FreeBSD ÌÚ³ö¿Õ¼ä¡£ FreeBSD ¹âÅÌµÄ + tools Ŀ¼°üº¬Á½¸öÃâ·ÑµÄ¹¤¾ßÒ²¿ÉÒÔÍê³ÉÕâ¸ö¹¤×÷£º + FIPS ÒÔ¼° + PResizer£¬ËüÃǵÄÎĵµ¿ÉÒÔÔÚͬһĿ¼ÖÐÕÒµ½¡£ + FIPS¡¢PResizer£¬ + ºÍ &partitionmagic; + Äܹ»¸Ä±ä FAT16 ÒÔ¼° FAT32 + ·ÖÇøµÄ´óС — ËüÃÇ¿ÉÒÔÔÚ &ms-dos; ÒÔ¼° &windows; ME ϵͳÖÐʹÓᣠ+ ÕâЩ¹¤¾ßµÄ˵Ã÷Îļþ¿ÉÒÔÔÚͬһ¸öĿ¼ÏÂÃæÕÒµ½¡£ + &partitionmagic; ºÍ + GParted + ¶¼Äܸıä NTFS ·ÖÇøµÄ³ß´ç¡£ + GParted ÔÚÐí¶à Live CD Linux ·¢Ðа棬 + Èç SystemRescueCD + ÖоùÓÐÌṩ¡£ Ä¿Ç°ÒѾ­Óб¨¸æÏÔʾ¸Ä±ä µsoft; Vista - ·ÖÇø³ß´çʱ»á³öÏÖÎÊÌâ¡£ ÔÚ½øÐдËÀà²Ù×÷ʱ£¬ ½¨ÒéÄú×¼±¸Ò»ÕÅ Vista °²×° CDROM¡£ - ÈçͬÆäËûµÄ´ÅÅÌά»¤²Ù×÷Ò»Ñù£¬ Ç¿ÁÒ½¨ÒéÄúÊÂÏȽøÐб¸·Ý¡£ + ·ÖÇø³ß´çʱ»á³öÏÖÎÊÌâ¡£ ÔÚ½øÐдËÀà²Ù×÷ʱ£¬ + ½¨ÒéÄú×¼±¸Ò»ÕÅ Vista °²×° CDROM¡£ÈçͬÆäËûµÄ´ÅÅÌά»¤²Ù×÷Ò»Ñù£¬ + Ç¿ÁÒ½¨ÒéÄúÊÂÏȽøÐб¸·Ý¡£ - ²»µ±µÄʹÓÃÕâЩ¹¤¾ß¿ÉÄÜ»áɾµôÄúÓ²ÅÌÉϵÄÊý¾Ý×ÊÁÏ£¡ÔÚʹÓÃÕâЩ¹¤¾ßÇ° - È·¶¨ÄúÓÐ×î½üµÄ¡¢Ã»ÎÊÌâµÄ±¸·ÝÊý¾Ý¡£ + ²»µ±µÄʹÓÃÕâЩ¹¤¾ß¿ÉÄÜ»áɾµôÄúÓ²ÅÌÉϵÄÊý¾Ý×ÊÁÏ£¡ + ÔÚʹÓÃÕâЩ¹¤¾ßÇ°È·¶¨ÄúÓÐ×î½üµÄ¡¢Ã»ÎÊÌâµÄ±¸·ÝÊý¾Ý¡£ ʹÓÃÒÑ´æÔڵķÖÇø - ¼ÙÉèÄúÖ»ÓÐÒ»¸ö 4GB µÄÓ²ÅÌ£¬¶øÇÒÒѾ­×°ÁË &windows; È»ºóÄú½«Õâ¸öÓ²ÅÌ·Ö³ÉÁ½¸ö·ÖÇø - C: ¸ú D:£¬Ã¿¸ö·ÖÇø´óСΪ - 2 GB¡£ÔÚ C: ·ÖÇøÉÏ´æ·ÅÓÐ 1 GB µÄÊý¾Ý¡¢ - D:·ÖÇøÉÏ´æ·Å 0.5 GB µÄÊý¾Ý¡£ + ¼ÙÉèÄúÖ»ÓÐÒ»¸ö 4GB µÄÓ²ÅÌ£¬¶øÇÒÒѾ­×°ÁË &windows; + È»ºóÄú½«Õâ¸öÓ²ÅÌ·Ö³ÉÁ½¸ö·ÖÇø C: ¸ú + D:£¬Ã¿¸ö·ÖÇø´óСΪ 2 GB¡£ÔÚ + C: ·ÖÇøÉÏ´æ·ÅÓÐ 1 GB µÄÊý¾Ý¡¢ + D:·ÖÇøÉÏ´æ·Å 0.5 GB µÄÊý¾Ý¡£ - ÕâÒâζ×ÅÄúµÄÅÌÉÏÓÐÁ½¸ö·ÖÇø£¬Ò»¸öÇý¶¯Æ÷·ûºÅÊÇÒ»¸ö·ÖÇø(Èç c:¡¢d:)¡£ - Äú¿ÉÒÔ°ÑËùÓдæ·ÅÔÚ D: ·ÖÇøÉϵÄÊý¾Ý¸´ÖƵ½ - C: ·ÖÇø,ÕâÑù¾Í¿Õ³öÁËÒ»¸ö·ÖÇø(d:)¸ø FreeBSD ʹÓᣠ+ ÕâÒâζ×ÅÄúµÄÅÌÉÏÓÐÁ½¸ö·ÖÇø£¬Ò»¸öÇý¶¯Æ÷·ûºÅÊÇÒ»¸ö·ÖÇø + (Èç c:¡¢d:)¡£ Äú¿ÉÒÔ°ÑËùÓдæ·ÅÔÚ D: + ·ÖÇøÉϵÄÊý¾Ý¸´ÖƵ½ C: ·ÖÇø, + ÕâÑù¾Í¿Õ³öÁËÒ»¸ö·ÖÇø(d:)¸ø FreeBSD ʹÓᣠËõ¼õÒÑÏÖÔڵķÖÇø - ¼ÙÉèÄúÖ»ÓÐÒ»¸ö 4 GB µÄÓ²ÅÌ£¬¶øÇÒÒѾ­×°ÁË &windows;¡£ÄúÔÚ°²×° &windows; µÄʱºò - °Ñ 4 GB ¶¼¸øÁË C: ·ÖÇø£¬²¢ÇÒÒѾ­Ê¹ÓÃÁË 1.5 GB µÄ¿Õ¼ä¡£ - ÄúÏ뽫ʣÓà¿Õ¼äÖÐµÄ 2 GB ¸ø FreeBSD ʹÓᣠ+ ¼ÙÉèÄúÖ»ÓÐÒ»¸ö 4 GB µÄÓ²ÅÌ£¬¶øÇÒÒѾ­×°ÁË &windows;¡£ + ÄúÔÚ°²×° &windows; µÄʱºò°Ñ 4 GB ¶¼¸øÁË + C: ·ÖÇø£¬²¢ÇÒÒѾ­Ê¹ÓÃÁË 1.5 GB + µÄ¿Õ¼ä¡£ÄúÏ뽫ʣÓà¿Õ¼äÖÐµÄ 2 GB ¸ø FreeBSD ʹÓᣠΪÁË°²×° FreeBSD£¬Äú±ØÐë´ÓÏÂÃæÁ½ÖÖ·½Ê½ÖÐÑ¡ÔñÒ»ÖÖ£º - ±¸·Ý &windows; µÄÊý¾Ý×ÊÁÏ£¬È»ºóÖØа²×° &windows;£¬²¢¸ø &windows; ·ÖÅä 2 GB - µÄ¿Õ¼ä¡£ + ±¸·Ý &windows; µÄÊý¾Ý×ÊÁÏ£¬È»ºóÖØа²×° &windows;£¬ + ²¢¸ø &windows; ·ÖÅä 2 GB µÄ¿Õ¼ä¡£ @@ -418,11 +444,13 @@ ¸ù¾Ý²»Í¬µÄ Alpha »úÆ÷£¬ÄúµÄÓ²ÅÌ¿ÉÒÔÊÇ SCSI »ò IDE Ó²ÅÌ£¬ Ö»ÒªÄúµÄ»úÆ÷¿ÉÒÔ´ÓÕâЩӲÅÌ¿ª»ú¾Í¿ÉÒÔ¡£ - °´ÕÕ Digital/Compaq ʹÓÃÊÖ²áÊéдµÄ¹ßÀý£¬ËùÓÐ SRM ÊäÈëµÄ²¿·Ö¶¼Óôóд - ±íʾ¡£×¢Ò⣬SRM ´óСдÓб𡣠+ °´ÕÕ Digital/Compaq ʹÓÃÊÖ²áÊéдµÄ¹ßÀý£¬ + ËùÓÐ SRM ÊäÈëµÄ²¿·Ö¶¼Óôóд±íʾ¡£ + ×¢Ò⣬SRM ´óСдÓб𡣠- ÒªÏëµÃÖªÄúÓ²Å̵ÄÃû³ÆÒÔ¼°Ðͺţ¬¿ÉÒÔÔÚ SRM console Ìáʾ·ûÏÂʹÓà - SHOW DEVICE ÃüÁî: + ÒªÏëµÃÖªÄúÓ²Å̵ÄÃû³ÆÒÔ¼°Ðͺţ¬ + ¿ÉÒÔÔÚ SRM console Ìáʾ·ûÏÂʹÓà + SHOW DEVICE ÃüÁî: >>>SHOW DEVICE dka0.0.0.4.0 DKA0 TOSHIBA CD-ROM XM-57 3476 @@ -434,20 +462,23 @@ pqa0.0.0.4.0 PQA0 PCI EIDE pqb0.0.1.4.0 PQB0 PCI EIDE - ´Ë·¶ÀýʹÓà Digital Personal Workstation 433au ²¢ÇÒÏÔʾ³ö´Ë»úÆ÷Áª½Ó - ÓÐÈý¸öÓ²ÅÌ¡£µÚÒ»¸öÊÇ CDROM£¬½Ð×ö DKA0£»ÁíÍâÁ½¸ö - ÊÇÁ½¸öÓ²ÅÌ£¬·Ö±ð½Ð×ö DKC0 ¼° DKC100 - ¡£ + ´Ë·¶ÀýʹÓà Digital Personal Workstation 433au + ²¢ÇÒÏÔʾ³ö´Ë»úÆ÷Áª½ÓÓÐÈý¸öÓ²ÅÌ¡£µÚÒ»¸öÊÇ CDROM£¬½Ð×ö + DKA0£»ÁíÍâÁ½¸öÊÇÁ½¸öÓ²ÅÌ£¬·Ö±ð½Ð×ö + DKC0 ¼° DKC100¡£ + - Ó²ÅÌÃû³ÆÖÐÓÐ DKx ×ÖÑùµÄÊÇ SCSI Ó²ÅÌ¡£ÀýÈç - DKA100 ±íʾÊÇÒ»¸ö SCSI É豸£¬Æä SCSI ID Ϊ 1£¬Î»ÓÚ - µÚÒ»¸ö SCSI ½Ó¿Ú (A)¡£ DKC300 ±íʾһ¸ö SCSI Ó²ÅÌ£¬ - SCSI ID Ϊ 3£¬Î»ÓÚµÚÈý¸ö SCSI ½Ó¿Ú (C)¡£É豸Ãû³Æ PKx - ±íʾ SCSI ¿ØÖÆ¿¨¡£ÓÉÒÔÉÏ SHOW DEVICE Ö¸ÁîµÄÊä³ö½á¹û¿´À´£¬ - SCSI ¹âÅÌÒ²±»ÊÓΪÊÇ SCSI Ó²Å̵ÄÒ»ÖÖ¡£ + Ó²ÅÌÃû³ÆÖÐÓÐ DKx ×ÖÑùµÄÊÇ SCSI Ó²ÅÌ¡£ + ÀýÈç DKA100 ±íʾÊÇÒ»¸ö SCSI É豸£¬ + Æä SCSI ID Ϊ 1£¬Î»ÓÚµÚÒ»¸ö SCSI ½Ó¿Ú (A)¡£ + DKC300 ±íʾһ¸ö SCSI Ó²ÅÌ£¬ + SCSI ID Ϊ 3£¬Î»ÓÚµÚÈý¸ö SCSI ½Ó¿Ú (C)¡£É豸Ãû³Æ + PKx ±íʾ SCSI ¿ØÖÆ¿¨¡£ÓÉÒÔÉÏ + SHOW DEVICE Ö¸ÁîµÄÊä³ö½á¹û¿´À´£¬ + SCSI ¹âÅÌÒ²±»ÊÓΪÊÇ SCSI Ó²Å̵ÄÒ»ÖÖ¡£ - IDE Ó²Å̵ÄÃû³ÆÀàËÆ DQx£¬¶ø PQx - Ôò±íʾÏà¶ÔÓ¦µÄÓ²ÅÌ¿ØÖÆÆ÷¡£ + IDE Ó²Å̵ÄÃû³ÆÀàËÆ DQx£¬¶ø + PQx Ôò±íʾÏà¶ÔÓ¦µÄÓ²ÅÌ¿ØÖÆÆ÷¡£ @@ -455,14 +486,15 @@ ÊÕ¼¯ÄúµÄÍøÂçÅäÖÃÏà¹Ø×ÊÁÏ - Èç¹ûÄúÏëͨ¹ýÍøÂç(FTP »òÊÇ NFS)°²×° FreeBSD£¬ÄÇôÄú¾Í±ØÐëÖªµÀÄúµÄÍøÂçÅäÖà - ÐÅÏ¢¡£ÔÚ°²×° FreeBSD µÄ¹ý³ÌÖн«»áÌáʾÄúÊäÈëÕâЩ×ÊÁÏ£¬ÒÔ˳ÀûÍê³É°²×°¹ý³Ì¡£ + Èç¹ûÄúÏëͨ¹ýÍøÂç(FTP »òÊÇ NFS)°²×° FreeBSD£¬ + ÄÇôÄú¾Í±ØÐëÖªµÀÄúµÄÍøÂçÅäÖÃÐÅÏ¢¡£ÔÚ°²×° FreeBSD + µÄ¹ý³ÌÖн«»áÌáʾÄúÊäÈëÕâЩ×ÊÁÏ£¬ÒÔ˳ÀûÍê³É°²×°¹ý³Ì¡£ ʹÓÃÒÔÌ«Íø»òµçÀÂ/DSL Modem - Èç¹ûÄúͨ¹ý¾ÖÓòÍø»òÊÇҪͨ¹ýÍø¿¨Ê¹ÓõçÀÂ/DSL ÉÏÍø£¬ÄÇôÄú±ØÐë×¼±¸ÏÂÃæ - µÄÐÅÏ¢£º + Èç¹ûÄúͨ¹ý¾ÖÓòÍø»òÊÇҪͨ¹ýÍø¿¨Ê¹ÓõçÀÂ/DSL ÉÏÍø£¬ + ÄÇôÄú±ØÐë×¼±¸ÏÂÃæµÄÐÅÏ¢£º @@ -486,16 +518,17 @@ - Èç¹ûÄú²»ÖªµÀÕâЩÐÅÏ¢£¬Äú¿ÉÒÔѯÎÊϵͳ¹ÜÀíÔ±»òÊÇÄúµÄÍøÂç·þÎñÌṩÕß¡£ - ËûÃÇ¿ÉÄÜ»á˵ÕâЩÐÅÏ¢»áÓÉ DHCP ×Ô¶¯·ÖÅ䣻Èç¹ûÕâÑùµÄ»°£¬ - Çë¼ÇסÕâÒ»µã¾Í¿ÉÒÔÁË¡£ + Èç¹ûÄú²»ÖªµÀÕâЩÐÅÏ¢£¬ + Äú¿ÉÒÔѯÎÊϵͳ¹ÜÀíÔ±»òÊÇÄúµÄÍøÂç·þÎñÌṩÕß¡£ + ËûÃÇ¿ÉÄÜ»á˵ÕâЩÐÅÏ¢»áÓÉ DHCP + ×Ô¶¯·ÖÅ䣻Èç¹ûÕâÑùµÄ»°£¬Çë¼ÇסÕâÒ»µã¾Í¿ÉÒÔÁË¡£ ʹÓà Modem Á¬½Ó - Èç¹ûÄúÓÉ ISP ÌṩµÄ²¦ºÅ·þÎñÉÏÍø£¬ÄúÈÔÈ»¿ÉÒÔͨ¹ýËü°²×° FreeBSD£¬ - Ö»ÊÇ»áÐèÒªºÜ³¤µÄʱ¼ä¡£ + Èç¹ûÄúÓÉ ISP ÌṩµÄ²¦ºÅ·þÎñÉÏÍø£¬ÄúÈÔÈ»¿ÉÒÔͨ¹ýËü°²×° + FreeBSD£¬Ö»ÊÇ»áÐèÒªºÜ³¤µÄʱ¼ä¡£ Äú±ØÐëÖªµÀ£º @@ -517,16 +550,18 @@ ¼ì²é FreeBSD ·¢Ðп±Îó - ËäÈ»ÎÒÃǾ¡Á¦È·±£Ã¿¸ö FreeBSD ·¢Ðа汾µÄÎȶ¨ÐÔ£¬µ«Å¼¶ûÒ²»áÓÐһЩ´íÎó½øÈë·¢Ðа档 - ¼«ÉÙÊýÇé¿öÏ£¬ÕâЩÎÊÌâÉõÖÁ¿ÉÄÜ»áÓ°Ïì°²×°¡£ + ËäÈ»ÎÒÃǾ¡Á¦È·±£Ã¿¸ö FreeBSD ·¢Ðа汾µÄÎȶ¨ÐÔ£¬ + µ«Å¼¶ûÒ²»áÓÐһЩ´íÎó½øÈë·¢Ðа档¼«ÉÙÊýÇé¿öÏ£¬ + ÕâЩÎÊÌâÉõÖÁ¿ÉÄÜ»áÓ°Ïì°²×°¡£ µ±·¢ÏÖºÍÐÞÕýÎÊÌâÖ®ºó£¬ËüÃÇ»áÁÐÔÚ FreeBSD ÍøÕ¾ÖÐµÄ FreeBSD ·¢Ðп±Îó ÖС£ ÔÚÄú°²×°Ö®Ç°£¬Ó¦¸ÃÊ×ÏÈ¿´Ò»¿´Õâ·Ý¿±Îó±í£¬ÒÔÁ˽â¿ÉÄÜ´æÔÚµÄÎÊÌâ¡£ ¹ØÓÚËùÓÐÊͳö°æ±¾µÄÐÅÏ¢£¬°üÀ¨¿±Îó±í£¬¿ÉÒÔÔÚ FreeBSD ÍøÕ¾µÄ·¢ÐаæÐÅÏ¢ Ò»½ÚÖÐÕÒµ½¡£ + url="&url.base;/index.html">FreeBSD ÍøÕ¾ µÄ ·¢ÐаæÐÅÏ¢ + Ò»½ÚÖÐÕÒµ½¡£ @@ -574,24 +609,27 @@ ¡£ Èç¹ûÄú»¹Ã»ÓÐ FreeBSD µÄ°²×°Îļþ£¬ÄúÓ¦¸Ã»Øµ½ - Ò»½Ú£¬ - Ëü½éÉÜÁËÈçºÎ×¼±¸ËùÐèÒªµÄ°²×°½éÖÊ¡£Ö®ºó£¬Äú¾Í¿ÉÒԻص½ÕâÒ»½Ú£¬ - ²¢´Ó ¼ÌÐø¡£ + Ò»½Ú£¬ + Ëü½éÉÜÁËÈçºÎ×¼±¸ËùÐèÒªµÄ°²×°½éÖÊ¡£Ö®ºó£¬Äú¾Í¿ÉÒԻص½ÕâÒ»½Ú£¬ + ²¢´Ó ¼ÌÐø¡£ ×¼±¸Òýµ¼½éÖÊ - FreeBSD µÄ°²×°¹ý³Ì¿ªÊ¼ÓÚ½«ÄúµÄµçÄÔ¿ª»ú½øÈë FreeBSD °²×°»·¾³—£­²¢·ÇÔÚ - ÆäËüµÄ²Ù×÷ϵͳÉÏÔËÐÐÒ»¸ö³ÌÐò¡£¼ÆËã»úͨ³£Ê¹Óð²×°ÔÚÓ²ÅÌÉϵIJÙ×÷ϵͳ½øÐÐ - Òýµ¼£¬Ò²¿ÉÒÔÅäÖóÉʹÓÃÒ»ÕÅbootable(¿ÉÒýµ¼)µÄÈíÅ̽øÐÐÆô¶¯¡£ + FreeBSD µÄ°²×°¹ý³Ì¿ªÊ¼ÓÚ½«ÄúµÄµçÄÔ¿ª»ú½øÈë FreeBSD + °²×°»·¾³ — £­²¢·ÇÔÚÆäËüµÄ²Ù×÷ϵͳÉÏÔËÐÐÒ»¸ö³ÌÐò¡£ + ¼ÆËã»úͨ³£Ê¹Óð²×°ÔÚÓ²ÅÌÉϵIJÙ×÷ϵͳ½øÐÐÒýµ¼£¬ + Ò²¿ÉÒÔÅäÖóÉʹÓÃÒ»ÕÅbootable(¿ÉÒýµ¼)µÄÈíÅ̽øÐÐÆô¶¯¡£ ´ó¶àÊýÏÖ´ú¼ÆËã»ú¶¼¿ÉÒÔ´Ó¹âÇý½øÐÐÒýµ¼ÏµÍ³¡£ - Èç¹ûÄúÓÐ FreeBSD µÄ°²×°¹âÅÌ»ò DVD(»òÕßÊÇÄú¹ºÂòµÄ£¬»òÕßÊÇÄú×Ô¼º×¼±¸µÄ¡£) - ²¢ÇÒÄúµÄ¼ÆËã»ú¿ÉÒÔ´Ó¹âÇý½øÐÐÆô¶¯ (ͨ³£ÔÚ BIOS ÖлáÓÐ Boot Order - »òÀàËƵÄÑ¡Ïî¿ÉÒÔÉèÖÃ)£¬ÄÇôÄú¾Í¿ÉÒÔÌø¹ý´ËС½Ú¡£ÒòΪ FreeBSD ¹âÅ̼° DVD ¹âÅ̶¼ÊÇ¿É - ÒÔÒýµ¼µÄ£¬ÓÃËüÃÇ¿ª»úÄú²»ÓÃ×öʲôÌرðµÄ×¼±¸¡£ + Èç¹ûÄúÓÐ FreeBSD µÄ°²×°¹âÅÌ»ò DVD(»òÕßÊÇÄú¹ºÂòµÄ£¬ + »òÕßÊÇÄú×Ô¼º×¼±¸µÄ¡£)²¢ÇÒÄúµÄ¼ÆËã»ú¿ÉÒÔ´Ó¹âÇý½øÐÐÆô¶¯ + (ͨ³£ÔÚ BIOS ÖлáÓÐ Boot Order + »òÀàËƵÄÑ¡Ïî¿ÉÒÔÉèÖÃ)£¬ÄÇôÄú¾Í¿ÉÒÔÌø¹ý´ËС½Ú¡£ + ÒòΪ FreeBSD ¹âÅ̼° DVD ¹âÅ̶¼ÊÇ¿ÉÒÔÒýµ¼µÄ£¬ + ÓÃËüÃÇ¿ª»úÄú²»ÓÃ×öʲôÌرðµÄ×¼±¸¡£ Ò»°ãÀ´Ëµ£¬Òª½¨Á¢°²×°ÅÌ(ÈíÅÌ)ÇëÒÀÕÕÏÂÁв½Ö裺 @@ -618,7 +656,8 @@ kern1.flp¡¢ kern2.flp£¬ ÒÔ¼° kern3.flp¡£ Çë²éÔÄͬһĿ¼Ï嵀 - README.TXT ÎļþÒÔÁ˽â¹ØÓÚÕâЩӳÏñÎļþµÄ×îÐÂÐÅÏ¢¡£ + README.TXT + ÎļþÒÔÁ˽â¹ØÓÚÕâЩӳÏñÎļþµÄ×îÐÂÐÅÏ¢¡£ ÄúµÄ FTP ³ÌÐò±ØÐëʹÓà ¶þ½øÖÆģʽ À´ÏÂÔØÕâЩӳ @@ -640,43 +679,53 @@ ¸ù¾Ý½¨ÒéÄúÓ¦¸ÃʹÓÃȫеÄÈíÅÌÀ´´æ·Å°²×°³ÌÐò¡£ - Èç¹ûÄúÔÚ°²×° FreeBSD µÄ¹ý³ÌÖÐÔì³Éµ±»ú¡¢¶³½á»òÊÇÆäËü¹ÖÒìÏÖÏ󣬵ÚÒ»¸ö - Òª»³ÒɵľÍÊÇÒýµ¼ÈíÅÌ¡£ÇëÓÃÆäËüµÄÈíÅÌÖÆ×÷Ó³ÏñÎļþÔÙÊÔÊÔ¿´¡£ + Èç¹ûÄúÔÚ°²×° FreeBSD µÄ¹ý³ÌÖÐÔì³Éµ±»ú¡¢ + ¶³½á»òÊÇÆäËü¹ÖÒìÏÖÏ󣬵ÚÒ»¸öÒª»³ÒɵľÍÊÇÒýµ¼ÈíÅÌ¡£ + ÇëÓÃÆäËüµÄÈíÅÌÖÆ×÷Ó³ÏñÎļþÔÙÊÔÊÔ¿´¡£ ½«Ó³ÏñÎļþдÈëÈíÅÌÖÐ - .flp Îļþ ²¢·Ç Ò»°ãµÄÎļþ£¬ - Äú²»ÄÜÖ±½Ó½«ËüÃǸ´ÖƵ½ÈíÅÌÉÏ¡£ÊÂʵÉÏËüÊÇÒ»ÕÅ°üº¬ÍêÕû´ÅÅÌÄÚÈݵÄÓ³ÏñÎļþ¡£Õâ - ±íʾÄú ²»ÄÜ ¼òµ¥µÄʹÓà DOS µÄ copy ÃüÁÎļþдµ½ÈíÅÌÉÏ£¬ - ¶ø±ØÐëʹÓÃÌرðµÄ¹¤¾ß³ÌÐò½«Ó³ÏñÎļþÖ±½Óдµ½ÈíÅÌÖС£ + .flp Îļþ ²¢·Ç + Ò»°ãµÄÎļþ£¬Äú²»ÄÜÖ±½Ó½«ËüÃǸ´ÖƵ½ÈíÅÌÉÏ¡£ + ÊÂʵÉÏËüÊÇÒ»ÕÅ°üº¬ÍêÕû´ÅÅÌÄÚÈݵÄÓ³ÏñÎļþ¡£Õâ±íʾÄú + ²»ÄÜ ¼òµ¥µÄʹÓà DOS µÄ copy + ÃüÁÎļþдµ½ÈíÅÌÉÏ£¬ + ¶ø±ØÐëʹÓÃÌرðµÄ¹¤¾ß³ÌÐò½«Ó³ÏñÎļþÖ±½Óдµ½ÈíÅÌÖС£ DOS - Èç¹ûÄúʹÓà &ms-dos; »ò &windows; ²Ù×÷ϵͳÀ´ÖÆ×÷Òýµ¼ÅÌ£¬ÄÇôÄú¿ÉÒÔʹÓÃÎÒÃÇÌṩ - µÄ fdimage ³ÌÐòÀ´½«Ó³ÏñÎļþдµ½ÈíÅÌÖС£ + Èç¹ûÄúʹÓà &ms-dos; »ò &windows; ²Ù×÷ϵͳÀ´ÖÆ×÷Òýµ¼ÅÌ£¬ + ÄÇôÄú¿ÉÒÔʹÓÃÎÒÃÇÌṩµÄ fdimage + ³ÌÐòÀ´½«Ó³ÏñÎļþдµ½ÈíÅÌÖС£ - Èç¹ûÄúʹÓõÄÊǹâÅÌ£¬¼ÙÉè¹âÅ̵ÄÇý¶¯Æ÷·ûºÅΪ E:£¬ - ÄÇôÇëÖ´ÐÐÏÂÃæµÄÃüÁ + Èç¹ûÄúʹÓõÄÊǹâÅÌ£¬¼ÙÉè¹âÅ̵ÄÇý¶¯Æ÷·ûºÅΪ + E:£¬ÄÇôÇëÖ´ÐÐÏÂÃæµÄÃüÁ E:\> tools\fdimage floppies\boot.flp A: - Öظ´ÉÏÊöÃüÁîÒÔÍê³Éÿ¸ö .flp ÎļþµÄдÈ룬ÿ»»Ò»¸ö - Ó³ÏñÎļþ¶¼±ØÐë¸ü»»ÈíÅÌ£»ÖÆ×÷ºÃµÄÈíÅÌÇë×¢Ã÷ÊÇʹÓÃÄĸöÓ³ÏñÎļþ×öµÄ¡£Èç¹ûÄúµÄÓ³ - ÏñÎļþ´æ·ÅÔÚ²»Í¬µÄµØ·½£¬Çë×ÔÐÐÐÞ¸ÄÉÏÃæµÄÖ¸ÁîÖ¸ÏòÄú´æ·Å .flp - ÎļþµÄµØ·½¡£ÒªÊÇÄúûÓÐ FreeBSD ¹âÅÌ£¬Äú¿ÉÒÔµ½ FreeBSD µÄ FTP Õ¾µãtools - Ŀ¼ ÖÐÏÂÔØ¡£ + Öظ´ÉÏÊöÃüÁîÒÔÍê³Éÿ¸ö .flp ÎļþµÄдÈ룬 + ÿ»»Ò»¸öÓ³ÏñÎļþ¶¼±ØÐë¸ü»»ÈíÅÌ£» + ÖÆ×÷ºÃµÄÈíÅÌÇë×¢Ã÷ÊÇʹÓÃÄĸöÓ³ÏñÎļþ×öµÄ¡£ + Èç¹ûÄúµÄÓ³ÏñÎļþ´æ·ÅÔÚ²»Í¬µÄµØ·½£¬Çë×ÔÐÐÐÞ¸ÄÉÏÃæµÄÖ¸ÁîÖ¸ÏòÄú´æ·Å + .flp ÎļþµÄµØ·½¡£ÒªÊÇÄúûÓÐ FreeBSD ¹âÅÌ£¬ + Äú¿ÉÒÔµ½ FreeBSD µÄ FTP Õ¾µã + + toolsĿ¼ + ÖÐÏÂÔØ¡£ - Èç¹ûÄúÔÚ &unix; ϵͳÉÏÖÆ×÷ÈíÅÌ(ÀýÈçÆäËü FreeBSD »úÆ÷)£¬Äú¿ÉÒÔʹÓà - &man.dd.1; ÃüÁîÀ´½«Ó³ÏñÎļþдµ½ÈíÅÌÖС£Èç¹ûÄúÓà FreeBSD,¿ÉÒÔÖ´ÐÐÏÂÃæµÄÃüÁ + Èç¹ûÄúÔÚ &unix; ϵͳÉÏÖÆ×÷ÈíÅÌ(ÀýÈçÆäËü FreeBSD »úÆ÷)£¬ + Äú¿ÉÒÔʹÓà &man.dd.1; ÃüÁîÀ´½«Ó³ÏñÎļþдµ½ÈíÅÌÖС£ + Èç¹ûÄúÓà FreeBSD,¿ÉÒÔÖ´ÐÐÏÂÃæµÄÃüÁ &prompt.root; dd if=boot.flp of=/dev/fd0 - ÔÚ FreeBSD ÖУ¬/dev/fd0 Ö¸µÄÊǵÚÒ»¸öÈíÇý(¼´ - A: Çý¶¯Æ÷)£»/dev/fd1 ÊÇ - B: Çý¶¯Æ÷,ÒÀ´ËÀàÍÆ¡£ÆäËüµÄ &unix; ϵͳ¿ÉÄÜ»áÓà - ²»Í¬µÄµÄÃû³Æ£¬ÕâʱÄú¾ÍÒª²éÔĸÃϵͳµÄ˵Ã÷Îļþ¡£ + ÔÚ FreeBSD ÖУ¬/dev/fd0 + Ö¸µÄÊǵÚÒ»¸öÈíÇý(¼´ A: Çý¶¯Æ÷)£» + /dev/fd1 ÊÇ B: + Çý¶¯Æ÷,ÒÀ´ËÀàÍÆ¡£ÆäËüµÄ &unix; ϵͳ¿ÉÄÜ»áÓò»Í¬µÄµÄÃû³Æ£¬ + ÕâʱÄú¾ÍÒª²éÔĸÃϵͳµÄ˵Ã÷Îļþ¡£ @@ -688,8 +737,8 @@ ¿ªÊ¼°²×° - ĬÈÏÇé¿öÏÂ, °²×°¹ý³Ì²¢²»»á¸Ä±äÈκÎÄúÓ²ÅÌÖеÄÊý¾Ý£¬³ý·ÇÄú¿´µ½ - ÏÂÃæµÄѶϢ£º + ĬÈÏÇé¿öÏÂ, °²×°¹ý³Ì²¢²»»á¸Ä±äÈκÎÄúÓ²ÅÌÖеÄÊý¾Ý£¬ + ³ý·ÇÄú¿´µ½ÏÂÃæµÄѶϢ£º Last Chance: Are you SURE you want continue the installation? @@ -698,8 +747,9 @@ We can take no responsibility for lost disk contents! - ÔÚ¿´µ½Õâ×îºóµÄ¾¯¸æѶϢǰÄú¶¼¿ÉÒÔËæʱÀ뿪°²×°³ÌÐò½çÃæ²»»á±ä¸üÄúµÄÓ²ÅÌ¡£ - Èç¹ûÄú·¢ÏÖÓÐÈκÎÉ趨´íÎó£¬ÕâʱÄú¿ÉÒÔÖ±½Ó½«µçÔ´¹Øµô¶ø²»»áÔì³ÉÈκÎÉ˺¦¡£ + ÔÚ¿´µ½Õâ×îºóµÄ¾¯¸æѶϢǰÄú¶¼¿ÉÒÔËæʱÀ뿪£¬ + °²×°³ÌÐò½çÃæ²»»á±ä¸üÄúµÄÓ²ÅÌ¡£Èç¹ûÄú·¢ÏÖÓÐÈκÎÉ趨´íÎó£¬ + ÕâʱÄú¿ÉÒÔÖ±½Ó½«µçÔ´¹Øµô¶ø²»»áÔì³ÉÈκÎÉ˺¦¡£ @@ -714,23 +764,27 @@ - ½«µçÄÔµçÔ´´ò¿ª¡£¸Õ¿ªÊ¼µÄʱºòËüÓ¦¸Ã»áÏÔʾ½øÈëϵͳÉèÖò˵¥»ò BIOS - Òª°´Äĸö¼ü£¬³£¼ûµÄÊÇ F2¡¢F10¡¢ - Del »ò + ½«µçÄÔµçÔ´´ò¿ª¡£¸Õ¿ªÊ¼µÄʱºòËüÓ¦¸Ã»áÏÔʾ½øÈëϵͳÉèÖò˵¥»ò + BIOS Òª°´Äĸö¼ü£¬³£¼ûµÄÊÇ F2¡¢ + F10¡¢Del »ò + Alt S - ¡£²»ÂÛÊÇÒª°´Äĸö¼ü£¬Çë°´Ëü½øÈë BIOS ÉèÖû­Ãæ¡£ÓÐʱÄúµÄ¼ÆËã»ú - ¿ÉÄÜ»áÏÔʾһ¸öͼÐλ­Ã棬µäÐ͵Ä×ö·¨ÊÇ°´ Esc ½«¹ØµôÕâ¸öͼÐÎ - »­Ã棬ÒÔʹÄúÄܹ»¿´µ½±ØÒªµÄÉèÖÃÐÅÏ¢¡£ + ¡£²»ÂÛÊÇÒª°´Äĸö¼ü£¬Çë°´Ëü½øÈë BIOS ÉèÖû­Ãæ¡£ + ÓÐʱÄúµÄ¼ÆËã»ú¿ÉÄÜ»áÏÔʾһ¸öͼÐλ­Ã棬µäÐ͵Ä×ö·¨ÊÇ°´ + Esc ½«¹ØµôÕâ¸öͼÐλ­Ã棬 + ÒÔʹÄúÄܹ»¿´µ½±ØÒªµÄÉèÖÃÐÅÏ¢¡£ ÕÒµ½ÉèÖÿª»ú˳ÐòµÄÑ¡ÏËüµÄ±ê¼ÇΪ Boot Order - ͨ³£»áÁгöһЩÉ豸ÈÃÄúÑ¡Ôñ£¬ÀýÈ磺Floppy¡¢ - CDROM¡¢First Hard Disk µÈµÈ¡£ + ͨ³£»áÁгöһЩÉ豸ÈÃÄúÑ¡Ôñ£¬ÀýÈ磺Floppy¡¢ + CDROM¡¢First Hard Disk + µÈµÈ¡£ - Èç¹ûÄúÒªÓÃÈíÅÌ°²×°£¬ÇëÈ·¶¨Ñ¡µ½ floppy disk£»Èç¹ûÄúÒªÓùâÅÌ°²×°£¬ - ÇëÑ¡Ôñ CDROM¡£ÎªÁ˱ÜÃâÒÉ»ó£¬Çë²Î¿¼ÄúµÄÖ÷°å˵Ã÷Êֲᡣ + Èç¹ûÄúÒªÓÃÈíÅÌ°²×°£¬ÇëÈ·¶¨Ñ¡µ½ floppy disk£» + Èç¹ûÄúÒªÓùâÅÌ°²×°£¬ÇëÑ¡Ôñ CDROM¡£ÎªÁ˱ÜÃâÒÉ»ó£¬ + Çë²Î¿¼ÄúµÄÖ÷°å˵Ã÷Êֲᡣ ´¢´æÉ趨²¢À뿪£¬ÏµÍ³Ó¦¸Ã»áÖØÐÂÆô¶¯¡£ @@ -741,14 +795,15 @@ boot.flp ÎļþµÄÄÇÕÅÅÌ£¬ ·ÅÈëÈíÅÌÇý¶¯Æ÷ÖС£ - Èç¹ûÄúÊÇ´Ó¹âÅÌ°²×°£¬ ÄÇô¿ª»úºóÇ뽫 FreeBSD ¹âÅÌ·ÅÈë¹âÇýÖС£ + Èç¹ûÄúÊÇ´Ó¹âÅÌ°²×°£¬ ÄÇô¿ª»úºóÇ뽫 + FreeBSD ¹âÅÌ·ÅÈë¹âÇýÖС£ Èç¹ûÄú¿ª»úºóÈçÍù³£Ò»Ñù²¢Ã»ÓдÓÈíÅÌ»ò¹âÅÌÒýµ¼£¬Çë¼ì²é£º ÊDz»ÊÇÈíÅÌ»ò¹âÅÌÌ«Íí·ÅÈëÃæ´íʧ¿ª»úÒýµ¼Ê±¼ä¡£ Èç¹ûÊÇ£¬ - Ç뽫ËüÃÇ·ÅÈëºóÖØпª»ú¡£ + Ç뽫ËüÃÇ·ÅÈëºóÖØпª»ú¡£ @@ -762,7 +817,8 @@ - FreeBSD ¼´½«Æô¶¯¡£Èç¹ûÄúÊÇ´Ó¹âÅÌÒýµ¼£¬Äú»á¼ûµ½ÀàËÆÏÂÃæµÄ»­Ã棺 + FreeBSD ¼´½«Æô¶¯¡£Èç¹ûÄúÊÇ´Ó¹âÅÌÒýµ¼£¬ + Äú»á¼ûµ½ÀàËÆÏÂÃæµÄ»­Ã棺 Booting from CD-Rom... CD Loader 1.2 @@ -811,7 +867,8 @@ - ²»ÂÛÊÇ´ÓÈíÅÌ»ò¹âÅÌÒýµ¼£¬ ½ÓÏÂÀ´¶¼»á½øÈë &os; Òýµ¼¼ÓÔØÆ÷²Ëµ¥£º + ²»ÂÛÊÇ´ÓÈíÅÌ»ò¹âÅÌÒýµ¼£¬ ½ÓÏÂÀ´¶¼»á½øÈë &os; + Òýµ¼¼ÓÔØÆ÷²Ëµ¥£º
&os; Boot Loader Menu @@ -843,22 +900,25 @@ - ÈçÄúÐèÒªÖÆ×÷ÓÃÓÚ°²×°µÄÈíÅÌ£¬ Çë²Î¿¼ - £¬ ½«ÆäÖÐÒ»ÕÅÖÆ×÷ΪµÚһƬÒýµ¼ÅÌ£¬ ÆäÖаüº¬ - boot.flp¡£ ½«ÕâÕÅÈíÅ̲å½øÈíÇý£¬ ²¢ÊäÈëÏÂÁÐÃüÁ - ÒÔ±ã´ÓÈíÅÌÆô¶¯ - (ÇëÊÓʵ¼ÊÇé¿öÐÞ¸ÄÃüÁîÖеÄÈíÇýÅÌ·û)£º + ÈçÄúÐèÒªÖÆ×÷ÓÃÓÚ°²×°µÄÈíÅÌ£¬Çë²Î¿¼ + £¬ + ½«ÆäÖÐÒ»ÕÅÖÆ×÷ΪµÚһƬÒýµ¼ÅÌ£¬ÆäÖаüº¬ + boot.flp¡£½«ÕâÕÅÈíÅ̲å½øÈíÇý£¬ + ²¢ÊäÈëÏÂÁÐÃüÁÒÔ±ã´ÓÈíÅÌÆô¶¯ + (ÇëÊÓʵ¼ÊÇé¿öÐÞ¸ÄÃüÁîÖеÄÈíÇýÅÌ·û)£º >>>BOOT DVA0 -FLAGS '' -FILE '' - Èç¹ûÄúÒª´Ó¹âÅÌÒýµ¼£¬Ç뽫¹âÅÌ·ÅÈë¹âÇýÖÐÈ»ºóÊäÈëÏÂÁÐÃüÁʼ°²×° - (ÇëÊÓÇé¿öÐÞ¸ÄÃüÁîÖеĹâÇýÅÌ·û)£º + Èç¹ûÄúÒª´Ó¹âÅÌÒýµ¼£¬ + Ç뽫¹âÅÌ·ÅÈë¹âÇýÖÐÈ»ºóÊäÈëÏÂÁÐÃüÁʼ°²×° + (ÇëÊÓÇé¿öÐÞ¸ÄÃüÁîÖеĹâÇýÅÌ·û)£º >>>BOOT DKA0 -FLAGS '' -FILE '' - È»ºó FreeBSD ¾Í»áÆô¶¯¡£Èç¹ûÄú´ÓÈíÅÌÒýµ¼£¬µ½Ä³¸ö½×¶ÎÄú»á¿´µ½ÏÂÃæµÄÐÅÏ¢£º + È»ºó FreeBSD ¾Í»áÆô¶¯¡£Èç¹ûÄú´ÓÈíÅÌÒýµ¼£¬ + µ½Ä³¸ö½×¶ÎÄú»á¿´µ½ÏÂÃæµÄÐÅÏ¢£º Insert disk labelled "Kernel floppy 1" and press any key... @@ -874,8 +934,8 @@ Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ - Äú¿ÉÒԵȴý 10 Ãë»òÊÇ°´ Enter Ìø¹ý¡£Ö®ºó¾Í»á½øÈëÄÚºË - É趨²Ëµ¥¡£ + Äú¿ÉÒԵȴý 10 Ãë»òÊÇ°´ Enter Ìø¹ý¡£ + Ö®ºó¾Í»á½øÈëÄÚºËÉ趨²Ëµ¥¡£ @@ -885,23 +945,28 @@ Òýµ¼ &sparc64; ¶àÊý &sparc64; ϵͳ¾ùÅäÖÃΪ´ÓÓ²ÅÌ×Ô¶¯Òýµ¼¡£ - Èç¹ûÏ£Íû°²×° &os;£¬ ¾ÍÐèÒª´ÓÍøÂç»ò CDROM Æô¶¯ÁË£¬ ÕâÐèÒªÊ×ÏȽøÈë - PROM (OpenFirmware)¡£ + Èç¹ûÏ£Íû°²×° &os;£¬¾ÍÐèÒª´ÓÍøÂç»ò CDROM Æô¶¯ÁË£¬ + ÕâÐèÒªÊ×ÏȽøÈë PROM (OpenFirmware)¡£ - ÒªÍê³ÉÕâÏ×÷£¬ Ê×ÏÈÐèÒªÖØÆôϵͳ£¬ ²¢µÈ´ý³öÏÖÒýµ¼ÏûÏ¢¡£ - ¾ßÌåµÄÐÅϢȡ¾öÓÚÄúʹÓõÄÐͺţ¬ ²»¹ýËüÓ¦¸Ã»áÊÇÀàËÆÏÂÃæÕâÑù£º + ÒªÍê³ÉÕâÏ×÷£¬Ê×ÏÈÐèÒªÖØÆôϵͳ£¬²¢µÈ´ý³öÏÖÒýµ¼ÏûÏ¢¡£ + ¾ßÌåµÄÐÅϢȡ¾öÓÚÄúʹÓõÄÐͺţ¬²»¹ýËüÓ¦¸Ã»áÊÇÀàËÆÏÂÃæÕâÑù£º Sun Blade 100 (UltraSPARC-IIe), Keyboard Present Copyright 1998-2001 Sun Microsystems, Inc. All rights reserved. OpenBoot 4.2, 128 MB memory installed, Serial #51090132. Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4. - Èç¹ûÄúµÄϵͳ´Ëʱ¿ªÊ¼ÁË´ÓÓ²ÅÌÒýµ¼µÄ¹ý³Ì£¬ ÔòÐèÒª°´Ï - L1A + Èç¹ûÄúµÄϵͳ´Ëʱ¿ªÊ¼ÁË´ÓÓ²ÅÌÒýµ¼µÄ¹ý³Ì£¬ÔòÐèÒª°´Ï + + L1A + »ò - StopA£¬ - »òÕßÔÚ´®¿Ú¿ØÖÆ̨ÉÏ·¢ËÍ BREAK (ÀýÈ磬 ÔÚ - &man.tip.1; »ò &man.cu.1; ÖÐÊÇ ~#) ÒÔ±ã½øÈë PROM Ìáʾ·û¡£ + + StopA + £¬ + »òÕßÔÚ´®¿Ú¿ØÖÆ̨ÉÏ·¢ËÍ BREAK + (ÀýÈ磬 ÔÚ &man.tip.1; »ò &man.cu.1; ÖÐÊÇ + ~#) ÒÔ±ã½øÈë PROM Ìáʾ·û¡£ ËüÓ¦¸ÃÊÇÀàËÆÏÂÃæÕâÑù£º @@ -938,12 +1003,14 @@ Ç°ÃæÆÁÄ»ÏÔʾµÄ×îºó¼¸°ÙÐÐ×Ö»á´æÔÚ»º³åÇøÖÐÒÔ±ãÄú²éÔÄ¡£ - Òªä¯ÀÀ»º³åÇø£¬Äú¿ÉÒÔ°´Ï Scroll Lock ¼ü£¬Õâ»á¿ªÆô»­ÃæµÄ - ¾í¶¯¹¦ÄÜ¡£È»ºóÄú¾Í¿ÉÒÔʹÓ÷½Ïò¼ü»ò PageUp ¡¢PageDown - ¼üÀ´ÉÏÏ·­ÔÄ¡£ÔÙ°´Ò»´Î Scroll Lock ¼ü½«Í£Ö¹»­Ãæ¾í¶¯¡£ + Òªä¯ÀÀ»º³åÇø£¬Äú¿ÉÒÔ°´Ï Scroll Lock ¼ü£¬ + Õâ»á¿ªÆô»­ÃæµÄ¾í¶¯¹¦ÄÜ¡£È»ºóÄú¾Í¿ÉÒÔʹÓ÷½Ïò¼ü»ò + PageUp ¡¢PageDown ¼üÀ´ÉÏÏ·­ÔÄ¡£ + ÔÙ°´Ò»´Î Scroll Lock ¼ü½«Í£Ö¹»­Ãæ¾í¶¯¡£ - ÔÚÄúä¯ÀÀµÄʱºò»á¿´µ½ÀàËÆ µÄ»­Ãæ¡£ - ÕæÕýµÄ½á¹ûÒÀÕÕÄúµÄµçÄÔ×°ÖöøÓÐËù²»Í¬¡£ + ÔÚÄúä¯ÀÀµÄʱºò»á¿´µ½ÀàËÆ + µÄ»­Ãæ¡£ + ÕæÕýµÄ½á¹ûÒÀÕÕÄúµÄµçÄÔ×°ÖöøÓÐËù²»Í¬¡£
µäÐ͵ÄÉ豸̽²â½á¹û @@ -1012,15 +1079,16 @@
Çë×Ðϸ¼ì²é̽²â½á¹ûÒÔÈ·¶¨ FreeBSD ÕÒµ½ËùÓÐÄúÆÚÍû³öÏÖµÄÉ豸¡£ - Èç¹ûϵͳûÓÐÕÒµ½É豸£¬ Ôò²»»á½«ÆäÁгö¡£ ¶¨ÖÆÄÚºË + Èç¹ûϵͳûÓÐÕÒµ½É豸£¬ Ôò²»»á½«ÆäÁгö¡£ + ¶¨ÖÆÄÚºË Äܹ»ÈÃÄúΪϵͳÌí¼ÓĬÈ쵀 GENERIC ÄÚºËËù²»Ö§³ÖµÄÉ豸£¬ ÈçÉù¿¨µÈ¡£ ÔÚ &os; 6.2 ºÍ¸ü¸ß°æ±¾ÖУ¬ ÔÚ̽²âÍêϵͳÉ豸֮ºó£¬ - ½«ÏÔʾ ¡£ ÇëʹÓùâ±ê¼üÀ´Ñ¡Ôñ¹ú¼Ò»òµØÇø¡£ ½Ó×Å°´ - Enter£¬ ϵͳ½«×Ô¶¯ÉèÖõØÇø¼°¼üÅÌÓ³Éä¡£ ÄúÒ²¿ÉÒÔºÜÈÝÒ×µØÍ˳ö - sysinstall ³ÌÐò²¢´ÓÍ·À´¹ý¡£ - + ½«ÏÔʾ ¡£ + ÇëʹÓùâ±ê¼üÀ´Ñ¡Ôñ¹ú¼Ò»òµØÇø¡£ ½Ó×Å°´ Enter£¬ + ϵͳ½«×Ô¶¯ÉèÖõØÇø¼°¼üÅÌÓ³Éä¡£ ÄúÒ²¿ÉÒÔºÜÈÝÒ×µØÍ˳ö + sysinstall ³ÌÐò²¢´ÓÍ·À´¹ý¡£
Ñ¡Ôñ¹ú¼Ò¼°µØÇø²Ëµ¥ @@ -1063,18 +1131,21 @@ ½éÉÜ Sysinstall - sysinstall ÊÇ FreeBSD ÏîÄ¿ËùÌṩµÄ°²×°³ÌÐò¡£ - ËüÒÔ console(¿ØÖÆ̨)ΪÖ÷£¬·ÖΪ¶à¸ö²Ëµ¥¼°»­ÃæÈÃÄúÅäÖü°¿ØÖÆ°²×°¹ý³Ì¡£ + sysinstall ÊÇ FreeBSD + ÏîÄ¿ËùÌṩµÄ°²×°³ÌÐò¡£ËüÒÔ console(¿ØÖÆ̨)ΪÖ÷£¬ + ·ÖΪ¶à¸ö²Ëµ¥¼°»­ÃæÈÃÄúÅäÖü°¿ØÖÆ°²×°¹ý³Ì¡£ - sysinstall ²Ëµ¥»­ÃæÓÉ·½Ïò¼ü¡¢Enter¡¢ Tab¡¢Space£¬ - ÒÔ¼°ÆäËü°´¼üËù¿ØÖÆ¡£ÔÚÖ÷»­ÃæµÄ Usage ²Ëµ¥ÓÐÕâЩ°´¼üµÄ˵Ã÷¡£ + sysinstall ²Ëµ¥»­ÃæÓÉ·½Ïò¼ü¡¢ + Enter¡¢Tab¡¢Space£¬ + ÒÔ¼°ÆäËü°´¼üËù¿ØÖÆ¡£ÔÚÖ÷»­ÃæµÄ Usage ²Ëµ¥ÓÐÕâЩ°´¼üµÄ˵Ã÷¡£ - Òª²é¿´ÕâЩ˵Ã÷£¬Ç뽫¹â±êÒƵ½ Usage ÏîÄ¿£¬È»ºó - [Select] °´¼ü±»Ñ¡Ôñ£¬£¬ - È»ºó°´Ï Enter ¼ü¡£ + Òª²é¿´ÕâЩ˵Ã÷£¬Ç뽫¹â±êÒƵ½ Usage + ÏîÄ¿£¬È»ºó [Select] °´¼ü±»Ñ¡Ôñ£¬ + £¬È»ºó°´Ï + Enter ¼ü¡£ - °²×°»­ÃæµÄʹÓÃ˵Ã÷»áÏÔʾ³öÀ´£¬ÔĶÁÍê±ÏÇë°´ Enter ¼ü»Øµ½Ö÷ - »­Ãæ¡£ + °²×°»­ÃæµÄʹÓÃ˵Ã÷»áÏÔʾ³öÀ´£¬ÔĶÁÍê±ÏÇë°´ + Enter ¼ü»Øµ½Ö÷»­Ãæ¡£
Ñ¡È¡ Sysinstall Ö÷²Ëµ¥µÄ Usage ÏîÄ¿ @@ -1116,11 +1187,12 @@ ÔĶÁÕâЩ˵Ã÷ÎļþºÜÖØÒª¡£ - ÒªÔĶÁһƪÎÄÕ£¬ÇëÓ÷½Ïò¼üÑ¡È¡ÒªÔĶÁµÄÎÄÕÂÈ»ºó°´ Enter ¼ü¡£ - ÔĶÁÖÐÔÙ°´Ò»Ï Enter ¾Í»á»Øµ½ËµÃ÷Îļþ»­Ãæ¡£ + ÒªÔĶÁһƪÎÄÕ£¬ÇëÓ÷½Ïò¼üÑ¡È¡ÒªÔĶÁµÄÎÄÕÂÈ»ºó°´ + Enter ¼ü¡£ÔĶÁÖÐÔÙ°´Ò»Ï Enter + ¾Í»á»Øµ½ËµÃ÷Îļþ»­Ãæ¡£ - ÈôÒª»Øµ½Ö÷²Ëµ¥£¬Ó÷½Ïò¼üÑ¡Ôñ Exit È»ºó°´Ï - Enter ¼ü¡£ + ÈôÒª»Øµ½Ö÷²Ëµ¥£¬Ó÷½Ïò¼üÑ¡Ôñ Exit + È»ºó°´Ï Enter ¼ü¡£ @@ -1141,12 +1213,14 @@
- Äú¿ÉÒÔʹÓÃÉÏϼüÒƶ¯µ½ÄúÏëʹÓõļüÅ̶ÔÓ¦·½Ê½£¬È»ºó°´Ï Space - ¼üÒÔÑ¡È¡Ëü£»ÔÙ°´ Space ¼ü¿ÉÒÔÈ¡ÏûÑ¡È¡¡£µ±ÄúÍê³Éºó£¬ÇëÑ¡Ôñ &gui.ok; - È»ºó°´ Enter ¼ü¡£ + Äú¿ÉÒÔʹÓÃÉÏϼüÒƶ¯µ½ÄúÏëʹÓõļüÅ̶ÔÓ¦·½Ê½£¬ + È»ºó°´Ï Space ¼üÒÔÑ¡È¡Ëü£»ÔÙ°´ + Space ¼ü¿ÉÒÔÈ¡ÏûÑ¡È¡¡£µ±ÄúÍê³Éºó£¬ + ÇëÑ¡Ôñ &gui.ok; È»ºó°´ Enter ¼ü¡£ - ÕâÒ»ÆÁĻֻÏÔʾ³ö²¿·ÖÁÐ±í¡£Ñ¡Ôñ &gui.cancel; °´ Tab ¼ü½«Ê¹Óà - ĬÈϵļüÅ̶ÔÓ¦£¬²¢·µ»Øµ½Ö÷²Ëµ¥ + ÕâÒ»ÆÁĻֻÏÔʾ³ö²¿·ÖÁÐ±í¡£Ñ¡Ôñ &gui.cancel; + °´ Tab ¼ü½«Ê¹ÓÃĬÈϵļüÅ̶ÔÓ¦£¬ + ²¢·µ»Øµ½Ö÷²Ëµ¥
Sysinstall ¼üÅ̶ÔÓ¦²Ëµ¥ @@ -1163,7 +1237,8 @@ °²×°Ñ¡ÏîÉèÖû­Ãæ - Ñ¡Ôñ Options È»ºó°´ Enter ¼ü¡£ + Ñ¡Ôñ Options È»ºó°´ + Enter ¼ü¡£
Sysinstall Ö÷²Ëµ¥ @@ -1185,12 +1260,13 @@
- Ô¤Éèֵͨ³£¿ÉÒÔÊÊÓÃÓڴ󲿷ֵÄʹÓÃÕߣ¬Äú²¢²»ÐèÒª¸Ä±äËüÃÇ¡£°æ±¾Ãû³ÆÒª - ¸ù¾Ý°²×°µÄ°æ±¾½øÐб仯¡£ + Ô¤Éèֵͨ³£¿ÉÒÔÊÊÓÃÓڴ󲿷ֵÄʹÓÃÕߣ¬Äú²¢²»ÐèÒª¸Ä±äËüÃÇ¡£ + °æ±¾Ãû³ÆÒª¸ù¾Ý°²×°µÄ°æ±¾½øÐб仯¡£ - Ä¿Ç°Ñ¡ÔñÏîÄ¿µÄÃèÊö»áÔÚÆÁĻϷ½ÒÔÀ¶µ×°××ÖÏÔʾ¡£×¢ÒâÆäÖÐÓÐÒ»¸öÏîÄ¿ÊÇ - Use Defaults(ʹÓÃĬÈÏÖµ)Äú¿ÉÒÔÓÉ´ËÏËùÓÐµÄ - É趨»¹Ô­ÎªÔ¤ÉèÖµ¡£ + Ä¿Ç°Ñ¡ÔñÏîÄ¿µÄÃèÊö»áÔÚÆÁĻϷ½ÒÔÀ¶µ×°××ÖÏÔʾ¡£ + ×¢ÒâÆäÖÐÓÐÒ»¸öÏîÄ¿ÊÇ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 20 22:30:15 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 87A2E16A420; Thu, 20 Dec 2007 22:30:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 266A916A417 for ; Thu, 20 Dec 2007 22:30:15 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1544D13C45D for ; Thu, 20 Dec 2007 22:30:15 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKMUFuM089410 for ; Thu, 20 Dec 2007 22:30:15 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKMTElf089245 for perforce@freebsd.org; Thu, 20 Dec 2007 22:29:14 GMT (envelope-from jhb@freebsd.org) Date: Thu, 20 Dec 2007 22:29:14 GMT Message-Id: <200712202229.lBKMTElf089245@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 131331 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 22:30:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=131331 Change 131331 by jhb@jhb_mutex on 2007/12/20 22:29:11 IFC @ 131329 (been a long time) Affected files ... .. //depot/projects/smpng/sys/Makefile#18 integrate .. //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#26 integrate .. //depot/projects/smpng/sys/amd64/amd64/cpu_switch.S#18 integrate .. //depot/projects/smpng/sys/amd64/amd64/db_trace.c#25 integrate .. //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/exception.S#18 integrate .. //depot/projects/smpng/sys/amd64/amd64/genassym.c#20 integrate .. //depot/projects/smpng/sys/amd64/amd64/identcpu.c#24 integrate .. //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#27 integrate .. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#22 integrate .. //depot/projects/smpng/sys/amd64/amd64/legacy.c#9 integrate .. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#31 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#67 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#44 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_watchdog.c#3 integrate .. //depot/projects/smpng/sys/amd64/amd64/msi.c#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/nexus.c#27 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#76 integrate .. //depot/projects/smpng/sys/amd64/amd64/prof_machdep.c#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/support.S#20 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#60 integrate .. //depot/projects/smpng/sys/amd64/amd64/tsc.c#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/uma_machdep.c#4 integrate .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#36 integrate .. //depot/projects/smpng/sys/amd64/conf/DEFAULTS#8 integrate .. //depot/projects/smpng/sys/amd64/conf/GENERIC#59 integrate .. //depot/projects/smpng/sys/amd64/conf/GENERIC.hints#5 integrate .. //depot/projects/smpng/sys/amd64/conf/NOTES#39 integrate .. //depot/projects/smpng/sys/amd64/ia32/ia32_syscall.c#24 integrate .. //depot/projects/smpng/sys/amd64/include/asm.h#8 integrate .. //depot/projects/smpng/sys/amd64/include/asmacros.h#8 integrate .. //depot/projects/smpng/sys/amd64/include/clock.h#9 integrate .. //depot/projects/smpng/sys/amd64/include/kdb.h#4 integrate .. //depot/projects/smpng/sys/amd64/include/legacyvar.h#6 integrate .. //depot/projects/smpng/sys/amd64/include/pc/bios.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/pci_cfgreg.h#5 integrate .. //depot/projects/smpng/sys/amd64/include/pcpu.h#7 integrate .. //depot/projects/smpng/sys/amd64/include/pmc_mdep.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/smp.h#16 integrate .. //depot/projects/smpng/sys/amd64/include/specialreg.h#13 integrate .. //depot/projects/smpng/sys/amd64/include/stack.h#1 branch .. //depot/projects/smpng/sys/amd64/include/vmparam.h#10 integrate .. //depot/projects/smpng/sys/amd64/isa/clock.c#23 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux.h#13 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#25 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#22 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_support.s#1 branch .. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#22 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#22 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysvec.c#28 integrate .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#26 integrate .. //depot/projects/smpng/sys/amd64/pci/pci_bus.c#21 integrate .. //depot/projects/smpng/sys/amd64/pci/pci_cfgreg.c#9 integrate .. //depot/projects/smpng/sys/arm/arm/bcopy_page.S#5 integrate .. //depot/projects/smpng/sys/arm/arm/bcopyinout.S#9 integrate .. //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#22 integrate .. //depot/projects/smpng/sys/arm/arm/cpufunc.c#15 integrate .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_arm11.S#1 branch .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_armv5.S#1 branch .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_armv5_ec.S#1 branch .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_xscale_c3.S#1 branch .. //depot/projects/smpng/sys/arm/arm/db_trace.c#16 integrate .. //depot/projects/smpng/sys/arm/arm/elf_machdep.c#7 integrate .. //depot/projects/smpng/sys/arm/arm/elf_trampoline.c#14 integrate .. //depot/projects/smpng/sys/arm/arm/genassym.c#9 integrate .. //depot/projects/smpng/sys/arm/arm/identcpu.c#11 integrate .. //depot/projects/smpng/sys/arm/arm/in_cksum_arm.S#7 integrate .. //depot/projects/smpng/sys/arm/arm/intr.c#15 integrate .. //depot/projects/smpng/sys/arm/arm/locore.S#15 integrate .. //depot/projects/smpng/sys/arm/arm/machdep.c#22 integrate .. //depot/projects/smpng/sys/arm/arm/nexus_io.c#7 delete .. //depot/projects/smpng/sys/arm/arm/nexus_io_asm.S#4 delete .. //depot/projects/smpng/sys/arm/arm/pmap.c#40 integrate .. //depot/projects/smpng/sys/arm/arm/stack_machdep.c#1 branch .. //depot/projects/smpng/sys/arm/arm/support.S#12 integrate .. //depot/projects/smpng/sys/arm/arm/swtch.S#15 integrate .. //depot/projects/smpng/sys/arm/arm/trap.c#28 integrate .. //depot/projects/smpng/sys/arm/arm/undefined.c#15 integrate .. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#26 integrate .. //depot/projects/smpng/sys/arm/at91/at91.c#11 integrate .. //depot/projects/smpng/sys/arm/at91/at91_mci.c#4 integrate .. //depot/projects/smpng/sys/arm/at91/at91_mcireg.h#2 integrate .. //depot/projects/smpng/sys/arm/at91/at91_pmc.c#5 integrate .. //depot/projects/smpng/sys/arm/at91/at91rm92reg.h#5 integrate .. //depot/projects/smpng/sys/arm/at91/if_ate.c#14 integrate .. //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#15 integrate .. //depot/projects/smpng/sys/arm/at91/ohci_atmelarm.c#3 integrate .. //depot/projects/smpng/sys/arm/at91/std.at91#4 integrate .. //depot/projects/smpng/sys/arm/at91/std.kb920x#4 integrate .. //depot/projects/smpng/sys/arm/at91/uart_cpu_at91rm9200usart.c#4 integrate .. //depot/projects/smpng/sys/arm/conf/AVILA#3 integrate .. //depot/projects/smpng/sys/arm/conf/AVILA.hints#1 branch .. //depot/projects/smpng/sys/arm/conf/BWCT#2 integrate .. //depot/projects/smpng/sys/arm/conf/CRB#1 branch .. //depot/projects/smpng/sys/arm/conf/EP80219#5 integrate .. //depot/projects/smpng/sys/arm/conf/HL200#1 branch .. //depot/projects/smpng/sys/arm/conf/IQ31244#14 integrate .. //depot/projects/smpng/sys/arm/conf/KB920X#7 integrate .. //depot/projects/smpng/sys/arm/conf/SIMICS#12 integrate .. //depot/projects/smpng/sys/arm/conf/SKYEYE#5 integrate .. //depot/projects/smpng/sys/arm/include/armreg.h#6 integrate .. //depot/projects/smpng/sys/arm/include/asm.h#7 integrate .. //depot/projects/smpng/sys/arm/include/asmacros.h#6 integrate .. //depot/projects/smpng/sys/arm/include/atomic.h#28 integrate .. //depot/projects/smpng/sys/arm/include/cpuconf.h#9 integrate .. //depot/projects/smpng/sys/arm/include/cpufunc.h#12 integrate .. //depot/projects/smpng/sys/arm/include/endian.h#14 integrate .. //depot/projects/smpng/sys/arm/include/intr.h#7 integrate .. //depot/projects/smpng/sys/arm/include/kdb.h#4 integrate .. //depot/projects/smpng/sys/arm/include/pcpu.h#5 integrate .. //depot/projects/smpng/sys/arm/include/pmap.h#23 integrate .. //depot/projects/smpng/sys/arm/include/pmc_mdep.h#3 integrate .. //depot/projects/smpng/sys/arm/include/pte.h#4 integrate .. //depot/projects/smpng/sys/arm/include/stack.h#1 branch .. //depot/projects/smpng/sys/arm/include/vmparam.h#9 integrate .. //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#15 integrate .. //depot/projects/smpng/sys/arm/sa11x0/files.sa11x0#2 integrate .. //depot/projects/smpng/sys/arm/sa11x0/uart_dev_sa1110.c#7 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/ep80219_machdep.c#6 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321.c#7 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_pci.c#11 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_timer.c#12 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_wdog.c#4 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321var.h#5 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/iq31244_machdep.c#25 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/obio.c#5 integrate .. //depot/projects/smpng/sys/arm/xscale/i8134x/crb_machdep.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/files.crb#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/files.i81342#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342_mcu.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342_pci.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342_space.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342reg.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/i81342var.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/iq81342_7seg.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/iq81342reg.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/iq81342var.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/obio.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/obio_space.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/obiovar.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/std.crb#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/std.i81342#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/uart_bus_i81342.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i8134x/uart_cpu_i81342.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/ixp425/avila_ata.c#4 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/avila_machdep.c#4 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/files.ixp425#2 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/if_npe.c#5 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425.c#5 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_npe.c#5 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_npevar.h#2 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_pci.c#5 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_qmgr.c#3 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425var.h#3 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/uart_bus_ixp425.c#2 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/uart_cpu_ixp425.c#3 integrate .. //depot/projects/smpng/sys/boot/arm/at91/Makefile.inc#6 integrate .. //depot/projects/smpng/sys/boot/arm/at91/boot2/board.h#2 integrate .. //depot/projects/smpng/sys/boot/arm/at91/boot2/boot2.c#6 integrate .. //depot/projects/smpng/sys/boot/arm/at91/boot2/bwct_board.c#1 branch .. //depot/projects/smpng/sys/boot/arm/at91/boot2/centipad_board.c#1 branch .. //depot/projects/smpng/sys/boot/arm/at91/boot2/kb920x_board.c#3 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/Makefile#7 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#5 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#6 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/eeprom.c#4 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.c#8 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.h#6 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac_init.c#5 integrate .. //depot/projects/smpng/sys/boot/arm/at91/libat91/lib.h#5 integrate .. //depot/projects/smpng/sys/boot/common/loader.8#46 integrate .. //depot/projects/smpng/sys/boot/common/module.c#8 integrate .. //depot/projects/smpng/sys/boot/common/ufsread.c#10 integrate .. //depot/projects/smpng/sys/boot/ficl/Makefile#15 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf#49 integrate .. //depot/projects/smpng/sys/boot/forth/support.4th#5 integrate .. //depot/projects/smpng/sys/boot/i386/Makefile#7 integrate .. //depot/projects/smpng/sys/boot/i386/boot2/boot2.c#32 integrate .. //depot/projects/smpng/sys/boot/i386/cdboot/cdboot.s#7 integrate .. //depot/projects/smpng/sys/boot/i386/gptboot/Makefile#1 branch .. //depot/projects/smpng/sys/boot/i386/gptboot/gptboot.c#1 branch .. //depot/projects/smpng/sys/boot/i386/gptboot/gptldr.S#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/Makefile#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/dconsole.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/firewire.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/fwohci.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/fwohci.h#1 branch .. //depot/projects/smpng/sys/boot/i386/libfirewire/fwohcireg.h#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/Makefile#17 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bioscd.c#9 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosdisk.c#15 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosmem.c#5 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biossmap.c#6 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/devicename.c#6 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/pxe.c#6 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/smbios.c#5 integrate .. //depot/projects/smpng/sys/boot/i386/loader/Makefile#23 integrate .. //depot/projects/smpng/sys/boot/i386/loader/conf.c#10 integrate .. //depot/projects/smpng/sys/boot/i386/loader/main.c#16 integrate .. //depot/projects/smpng/sys/boot/i386/pmbr/Makefile#1 branch .. //depot/projects/smpng/sys/boot/i386/pmbr/pmbr.s#1 branch .. //depot/projects/smpng/sys/boot/ia64/common/exec.c#2 integrate .. //depot/projects/smpng/sys/boot/ofw/common/main.c#9 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/Makefile#8 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/ofw_console.c#7 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/ofw_net.c#10 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/openfirm.c#13 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/openfirm.h#9 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/openfirm_mmu.c#2 delete .. //depot/projects/smpng/sys/boot/pc98/Makefile.inc#5 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot.c#11 integrate .. //depot/projects/smpng/sys/boot/pc98/cdboot/cdboot.s#3 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/bioscd.c#3 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#13 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/main.c#13 integrate .. //depot/projects/smpng/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/smpng/sys/boot/powerpc/loader/Makefile#15 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/conf.c#7 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/metadata.c#7 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/start.c#7 delete .. //depot/projects/smpng/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/smpng/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/smpng/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/smpng/sys/boot/sparc64/loader/main.c#23 integrate .. //depot/projects/smpng/sys/bsm/audit.h#9 integrate .. //depot/projects/smpng/sys/bsm/audit_internal.h#7 integrate .. //depot/projects/smpng/sys/bsm/audit_kevents.h#9 integrate .. //depot/projects/smpng/sys/bsm/audit_record.h#9 integrate .. //depot/projects/smpng/sys/cam/README.quirks#1 branch .. //depot/projects/smpng/sys/cam/cam.c#8 integrate .. //depot/projects/smpng/sys/cam/cam_xpt.c#47 integrate .. //depot/projects/smpng/sys/cam/cam_xpt_sim.h#3 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_all.c#25 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_all.h#13 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#34 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#79 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_low.c#17 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_sa.c#30 integrate .. //depot/projects/smpng/sys/coda/00READ#2 delete .. //depot/projects/smpng/sys/coda/README#3 delete .. //depot/projects/smpng/sys/coda/TODO#2 delete .. //depot/projects/smpng/sys/coda/cnode.h#11 delete .. //depot/projects/smpng/sys/coda/coda.h#6 delete .. //depot/projects/smpng/sys/coda/coda_fbsd.c#16 delete .. //depot/projects/smpng/sys/coda/coda_io.h#4 delete .. //depot/projects/smpng/sys/coda/coda_kernel.h#3 delete .. //depot/projects/smpng/sys/coda/coda_namecache.c#10 delete .. //depot/projects/smpng/sys/coda/coda_namecache.h#6 delete .. //depot/projects/smpng/sys/coda/coda_opstats.h#3 delete .. //depot/projects/smpng/sys/coda/coda_pioctl.h#4 delete .. //depot/projects/smpng/sys/coda/coda_psdev.c#18 delete .. //depot/projects/smpng/sys/coda/coda_psdev.h#5 delete .. //depot/projects/smpng/sys/coda/coda_subr.c#15 delete .. //depot/projects/smpng/sys/coda/coda_subr.h#4 delete .. //depot/projects/smpng/sys/coda/coda_venus.c#13 delete .. //depot/projects/smpng/sys/coda/coda_venus.h#6 delete .. //depot/projects/smpng/sys/coda/coda_vfsops.c#26 delete .. //depot/projects/smpng/sys/coda/coda_vfsops.h#8 delete .. //depot/projects/smpng/sys/coda/coda_vnops.c#30 delete .. //depot/projects/smpng/sys/coda/coda_vnops.h#13 delete .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32.h#5 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#46 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#38 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#38 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#38 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#38 integrate .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#42 integrate .. //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#18 integrate .. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#61 integrate .. //depot/projects/smpng/sys/compat/linux/linux_file.c#37 integrate .. //depot/projects/smpng/sys/compat/linux/linux_futex.c#5 integrate .. //depot/projects/smpng/sys/compat/linux/linux_getcwd.c#24 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#49 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.h#15 integrate .. //depot/projects/smpng/sys/compat/linux/linux_misc.c#83 integrate .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#39 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#37 integrate .. //depot/projects/smpng/sys/compat/linux/linux_uid16.c#24 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_ndis.c#37 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_windrv.c#7 integrate .. //depot/projects/smpng/sys/compat/ndis/ndis_var.h#27 integrate .. //depot/projects/smpng/sys/compat/ndis/ntoskrnl_var.h#23 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#42 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#43 integrate .. //depot/projects/smpng/sys/compat/opensolaris/kern/opensolaris_atomic.c#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/kern/opensolaris_kobj.c#3 integrate .. //depot/projects/smpng/sys/compat/opensolaris/kern/opensolaris_kstat.c#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/kern/opensolaris_policy.c#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/kern/opensolaris_vfs.c#4 integrate .. //depot/projects/smpng/sys/compat/opensolaris/rpc/xdr.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/atomic.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/bitmap.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/cpupart.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/cpuvar.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/cyclic.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/dnlc.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/elf.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/kcondvar.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/kmem.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/mman.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/modctl.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/mutex.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/objfs.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/param.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/pcpu.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/proc.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/rwlock.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/stat.h#1 branch .. //depot/projects/smpng/sys/compat/opensolaris/sys/time.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/types.h#3 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/vfs.h#2 integrate .. //depot/projects/smpng/sys/compat/opensolaris/sys/vnode.h#3 integrate .. //depot/projects/smpng/sys/compat/pecoff/imgact_pecoff.c#27 integrate .. //depot/projects/smpng/sys/compat/svr4/imgact_svr4.c#14 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_fcntl.c#24 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#61 integrate .. //depot/projects/smpng/sys/conf/Makefile.amd64#17 integrate .. //depot/projects/smpng/sys/conf/Makefile.arm#27 integrate .. //depot/projects/smpng/sys/conf/Makefile.ia64#35 integrate .. //depot/projects/smpng/sys/conf/NOTES#145 integrate .. //depot/projects/smpng/sys/conf/files#209 integrate .. //depot/projects/smpng/sys/conf/files.amd64#52 integrate .. //depot/projects/smpng/sys/conf/files.arm#13 integrate .. //depot/projects/smpng/sys/conf/files.i386#107 integrate .. //depot/projects/smpng/sys/conf/files.ia64#59 integrate .. //depot/projects/smpng/sys/conf/files.pc98#89 integrate .. //depot/projects/smpng/sys/conf/files.powerpc#37 integrate .. //depot/projects/smpng/sys/conf/files.sparc64#63 integrate .. //depot/projects/smpng/sys/conf/files.sun4v#5 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#57 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#66 integrate .. //depot/projects/smpng/sys/conf/newvers.sh#20 integrate .. //depot/projects/smpng/sys/conf/options#144 integrate .. //depot/projects/smpng/sys/conf/options.amd64#21 integrate .. //depot/projects/smpng/sys/conf/options.arm#15 integrate .. //depot/projects/smpng/sys/conf/options.i386#59 integrate .. //depot/projects/smpng/sys/conf/options.ia64#21 integrate .. //depot/projects/smpng/sys/conf/options.pc98#58 integrate .. //depot/projects/smpng/sys/conf/options.powerpc#10 integrate .. //depot/projects/smpng/sys/contrib/altq/altq/altq_cbq.c#4 integrate .. //depot/projects/smpng/sys/contrib/altq/altq/altq_hfsc.c#3 integrate .. //depot/projects/smpng/sys/contrib/altq/altq/altq_priq.c#3 integrate .. //depot/projects/smpng/sys/contrib/altq/altq/altq_red.c#3 integrate .. //depot/projects/smpng/sys/contrib/altq/altq/altq_subr.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/evmisc.c#23 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/evxface.c#19 integrate .. //depot/projects/smpng/sys/contrib/dev/npe/IxNpeMicrocode.dat.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/npe/LICENSE#1 branch .. //depot/projects/smpng/sys/contrib/dev/wpi/LICENSE#1 branch .. //depot/projects/smpng/sys/contrib/dev/wpi/iwlwifi-3945-2.14.4.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/fil.c#23 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_auth.c#17 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_auth.h#7 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_compat.h#15 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.h#15 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#5 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_frag.c#14 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_frag.h#8 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#12 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_htable.c#4 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_htable.h#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_ipsec_pxy.c#4 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_irc_pxy.c#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_log.c#15 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_lookup.c#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_lookup.h#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_nat.c#16 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_nat.h#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pool.c#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pool.h#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#4 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_proxy.c#14 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_proxy.h#8 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c#7 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#8 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rpcb_pxy.c#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_scan.c#4 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_scan.h#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_state.c#16 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_state.h#10 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_sync.c#5 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_sync.h#4 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ipl.h#12 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/mlfk_ipl.c#11 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/api/cc_conn.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/OPENSOLARIS.LICENSE#1 branch .. //depot/projects/smpng/sys/contrib/opensolaris/common/atomic/amd64/atomic.S#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/common/atomic/i386/atomic.S#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/common/atomic/ia64/atomic.S#1 branch .. //depot/projects/smpng/sys/contrib/opensolaris/common/avl/avl.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/common/nvpair/nvpair.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/dnlc.c#3 delete .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/gfs.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/arc.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/vdev.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#5 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zap_micro.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c#4 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#4 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#5 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c#5 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zil.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zio.c#4 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/fs/zfs/zvol.c#3 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/rpc/xdr.c#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/rpc/xdr.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/asm_linkage.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/atomic.h#2 delete .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/byteorder.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/dnlc.h#2 delete .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/isa_defs.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/procset.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/sysmacros.h#2 integrate .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/vfs.h#2 delete .. //depot/projects/smpng/sys/contrib/opensolaris/uts/common/sys/vmem.h#2 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.c#16 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.h#8 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#27 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.h#7 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf.c#26 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_if.c#8 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_ioctl.c#22 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_mtag.h#1 branch .. //depot/projects/smpng/sys/contrib/pf/net/pf_norm.c#15 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_osfp.c#5 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_ruleset.c#1 branch .. //depot/projects/smpng/sys/contrib/pf/net/pf_subr.c#3 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_table.c#6 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pfvar.h#11 integrate .. //depot/projects/smpng/sys/crypto/via/padlock.c#9 integrate .. //depot/projects/smpng/sys/ddb/db_examine.c#8 integrate .. //depot/projects/smpng/sys/ddb/db_ps.c#39 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#58 integrate .. //depot/projects/smpng/sys/dev/aac/aac_cam.c#23 integrate .. //depot/projects/smpng/sys/dev/aac/aac_debug.c#18 integrate .. //depot/projects/smpng/sys/dev/aac/aac_pci.c#45 integrate .. //depot/projects/smpng/sys/dev/aac/aacreg.h#18 integrate .. //depot/projects/smpng/sys/dev/aac/aacvar.h#27 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_asus.c#10 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_ibm.c#11 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_panasonic.c#6 integrate .. //depot/projects/smpng/sys/dev/acpica/Osd/OsdHardware.c#20 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#103 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_battery.c#20 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_cpu.c#40 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_dock.c#5 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_ec.c#45 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_hpet.c#8 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci.c#22 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#38 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_acpi.c#26 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#40 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_timer.c#24 integrate .. //depot/projects/smpng/sys/dev/acpica/acpiio.h#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpivar.h#67 integrate .. //depot/projects/smpng/sys/dev/adlink/adlink.c#14 integrate .. //depot/projects/smpng/sys/dev/advansys/advansys.c#16 integrate .. //depot/projects/smpng/sys/dev/advansys/advlib.h#3 integrate .. //depot/projects/smpng/sys/dev/advansys/adwcam.c#18 integrate .. //depot/projects/smpng/sys/dev/agp/agp.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_ali.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_amd.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_amd64.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_ati.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_i810.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_if.m#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_intel.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_nvidia.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_sis.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agp_via.c#1 branch .. //depot/projects/smpng/sys/dev/agp/agppriv.h#1 branch .. //depot/projects/smpng/sys/dev/agp/agpreg.h#1 branch .. //depot/projects/smpng/sys/dev/agp/agpvar.h#1 branch .. //depot/projects/smpng/sys/dev/aha/aha.c#21 integrate .. //depot/projects/smpng/sys/dev/ahb/ahb.c#20 integrate .. //depot/projects/smpng/sys/dev/ahb/ahbreg.h#3 integrate .. //depot/projects/smpng/sys/dev/aic/aic.c#12 integrate .. //depot/projects/smpng/sys/dev/aic/aic_cbus.c#7 integrate .. //depot/projects/smpng/sys/dev/aic/aic_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/aic/aic_pccard.c#14 integrate .. //depot/projects/smpng/sys/dev/aic/aicvar.h#4 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_osm.c#26 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.c#27 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_osm.c#23 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic_osm_lib.c#5 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic_osm_lib.h#7 integrate .. //depot/projects/smpng/sys/dev/amd/amd.c#21 integrate .. //depot/projects/smpng/sys/dev/amr/amr.c#44 integrate .. //depot/projects/smpng/sys/dev/amr/amr_cam.c#20 integrate .. //depot/projects/smpng/sys/dev/amr/amr_pci.c#29 integrate .. //depot/projects/smpng/sys/dev/amr/amrvar.h#25 integrate .. //depot/projects/smpng/sys/dev/an/if_an.c#54 integrate .. //depot/projects/smpng/sys/dev/an/if_anreg.h#14 integrate .. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.c#17 integrate .. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.h#5 integrate .. //depot/projects/smpng/sys/dev/asmc/asmc.c#1 branch .. //depot/projects/smpng/sys/dev/asmc/asmcvar.h#1 branch .. //depot/projects/smpng/sys/dev/asr/asr.c#38 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#88 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#53 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#82 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#65 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#52 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#38 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#66 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#52 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#51 integrate .. //depot/projects/smpng/sys/dev/ata/ata-usb.c#6 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#35 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#67 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.h#18 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-fd.c#36 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.c#36 integrate .. //depot/projects/smpng/sys/dev/ath/ah_osdep.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ah_osdep.h#2 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/amrr/amrr.c#11 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/onoe/onoe.c#11 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/onoe/onoe.h#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/sample/sample.c#10 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#53 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath_pci.c#17 integrate .. //depot/projects/smpng/sys/dev/ath/if_athioctl.h#15 integrate .. //depot/projects/smpng/sys/dev/ath/if_athrate.h#6 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#32 integrate .. //depot/projects/smpng/sys/dev/atkbdc/psm.c#8 integrate .. //depot/projects/smpng/sys/dev/awi/awi.c#27 integrate .. //depot/projects/smpng/sys/dev/awi/awivar.h#9 integrate .. //depot/projects/smpng/sys/dev/bce/if_bce.c#18 integrate .. //depot/projects/smpng/sys/dev/bce/if_bcefw.h#4 integrate .. //depot/projects/smpng/sys/dev/bce/if_bcereg.h#9 integrate .. //depot/projects/smpng/sys/dev/bfe/if_bfe.c#27 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#94 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#55 integrate .. //depot/projects/smpng/sys/dev/bktr/msp34xx.c#6 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt.c#19 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus.c#33 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus_cis.c#29 integrate .. //depot/projects/smpng/sys/dev/ce/if_ce.c#9 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#54 integrate .. //depot/projects/smpng/sys/dev/cm/smc90cx6.c#15 integrate .. //depot/projects/smpng/sys/dev/coretemp/coretemp.c#1 branch .. //depot/projects/smpng/sys/dev/cp/if_cp.c#21 integrate .. //depot/projects/smpng/sys/dev/ctau/if_ct.c#23 integrate .. //depot/projects/smpng/sys/dev/cx/if_cx.c#30 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_ael1002.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_common.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_ctl_defs.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_firmware_exports.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_mc5.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_regs.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_sge_defs.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_t3_hw.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_tcb.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_version.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_vsc7323.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_vsc8211.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_xgmac.c#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/common/jhash.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_adapter.h#4 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_include.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_ioctl.h#2 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_l2t.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_l2t.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_lro.c#3 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_main.c#4 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_offload.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_offload.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/cxgb_osdep.h#3 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_sge.c#5 integrate .. //depot/projects/smpng/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/sys/mbufq.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/sys/mvec.h#3 integrate .. //depot/projects/smpng/sys/dev/cxgb/sys/uipc_mvec.c#3 integrate .. //depot/projects/smpng/sys/dev/cxgb/t3b_protocol_sram-1.1.0.bin.gz.uu#1 branch .. //depot/projects/smpng/sys/dev/cxgb/t3b_tp_eeprom-1.1.0.bin.gz.uu#1 branch .. //depot/projects/smpng/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/t3fw-3.2.bin.gz.uu#2 delete .. //depot/projects/smpng/sys/dev/cxgb/t3fw-4.7.0.bin.gz.uu#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/smpng/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/smpng/sys/dev/dc/dcphy.c#5 integrate .. //depot/projects/smpng/sys/dev/dc/if_dc.c#15 integrate .. //depot/projects/smpng/sys/dev/dc/if_dcreg.h#7 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons.c#9 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons.h#6 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons_crom.c#7 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons_os.c#10 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons_os.h#3 integrate .. //depot/projects/smpng/sys/dev/de/if_de.c#5 integrate .. //depot/projects/smpng/sys/dev/de/if_devar.h#3 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt.h#7 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_eisa.c#11 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_isa.c#9 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_pci.c#14 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_scsi.c#20 integrate .. //depot/projects/smpng/sys/dev/drm/drmP.h#17 integrate .. //depot/projects/smpng/sys/dev/drm/drm_agpsupport.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/i915_dma.c#5 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#40 integrate .. //depot/projects/smpng/sys/dev/em/README#15 integrate .. //depot/projects/smpng/sys/dev/em/e1000_80003es2lan.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_80003es2lan.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82540.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82541.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82541.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82542.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82543.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82543.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82571.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82571.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82575.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_82575.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_api.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_api.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_defines.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_hw.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_ich8lan.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_ich8lan.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_mac.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_mac.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_manage.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_manage.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_nvm.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_nvm.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_osdep.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_phy.c#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_phy.h#3 integrate .. //depot/projects/smpng/sys/dev/em/e1000_regs.h#3 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#84 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#42 integrate .. //depot/projects/smpng/sys/dev/en/midway.c#32 integrate .. //depot/projects/smpng/sys/dev/esp/esp_sbus.c#11 integrate .. //depot/projects/smpng/sys/dev/esp/ncr53c9x.c#10 integrate .. //depot/projects/smpng/sys/dev/fb/boot_font.c#8 integrate .. //depot/projects/smpng/sys/dev/fb/creator.c#13 integrate .. //depot/projects/smpng/sys/dev/fb/gallant12x22.c#3 integrate .. //depot/projects/smpng/sys/dev/fb/gallant12x22.h#4 delete .. //depot/projects/smpng/sys/dev/fb/gfb.h#5 integrate .. //depot/projects/smpng/sys/dev/fb/machfb.c#5 integrate .. //depot/projects/smpng/sys/dev/fb/splash_bmp.c#2 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc.c#30 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.c#42 integrate .. //depot/projects/smpng/sys/dev/firewire/firewirereg.h#22 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdev.c#26 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdma.c#9 integrate .. //depot/projects/smpng/sys/dev/firewire/fwmem.c#21 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci.c#39 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#41 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohcivar.h#13 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#31 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwevar.h#6 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwip.c#12 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwipvar.h#4 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#44 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp_targ.c#12 integrate .. //depot/projects/smpng/sys/dev/flash/at45d.c#2 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#82 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem.c#32 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem_pci.c#22 integrate .. //depot/projects/smpng/sys/dev/gem/if_gemreg.h#4 integrate .. //depot/projects/smpng/sys/dev/gem/if_gemvar.h#14 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_intr.c#17 integrate .. //depot/projects/smpng/sys/dev/hptiop/hptiop.c#2 integrate .. //depot/projects/smpng/sys/dev/hptmv/entry.c#15 integrate .. //depot/projects/smpng/sys/dev/hptmv/ioctl.c#6 integrate .. //depot/projects/smpng/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/smpng/sys/dev/hptrr/array.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/him.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/smpng/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/smpng/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/smpng/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/smpng/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/list.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/smpng/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_amd.c#8 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_logging.c#8 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_mod.c#22 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_piv.c#9 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_ppro.c#5 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_x86.c#6 integrate .. //depot/projects/smpng/sys/dev/ichsmb/ichsmb_pci.c#15 integrate .. //depot/projects/smpng/sys/dev/ichwd/ichwd.c#8 integrate .. //depot/projects/smpng/sys/dev/ichwd/ichwd.h#4 integrate .. //depot/projects/smpng/sys/dev/idt/idt_pci.c#8 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#44 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_pci.c#11 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_usb.c#4 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndisvar.h#18 integrate .. //depot/projects/smpng/sys/dev/iir/iir.c#19 integrate .. //depot/projects/smpng/sys/dev/iir/iir.h#15 integrate .. //depot/projects/smpng/sys/dev/iir/iir_pci.c#18 integrate .. //depot/projects/smpng/sys/dev/ipmi/ipmi_isa.c#2 integrate .. //depot/projects/smpng/sys/dev/ipmi/ipmi_kcs.c#2 integrate .. //depot/projects/smpng/sys/dev/ipmi/ipmi_smic.c#2 integrate .. //depot/projects/smpng/sys/dev/ipmi/ipmi_ssif.c#3 integrate .. //depot/projects/smpng/sys/dev/ipw/if_ipw.c#16 integrate .. //depot/projects/smpng/sys/dev/ipw/if_ipwreg.h#3 integrate .. //depot/projects/smpng/sys/dev/ipw/if_ipwvar.h#6 integrate .. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_cam.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_sm.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_soc.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_subr.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/iscsi.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/iscsi.h#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/iscsi_subr.c#1 branch .. //depot/projects/smpng/sys/dev/iscsi/initiator/iscsivar.h#1 branch .. //depot/projects/smpng/sys/dev/isp/isp.c#58 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#58 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#42 integrate .. //depot/projects/smpng/sys/dev/isp/isp_ioctl.h#19 integrate .. //depot/projects/smpng/sys/dev/isp/isp_library.c#12 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#57 integrate .. //depot/projects/smpng/sys/dev/isp/isp_sbus.c#28 integrate .. //depot/projects/smpng/sys/dev/isp/isp_target.c#25 integrate .. //depot/projects/smpng/sys/dev/isp/ispvar.h#38 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwi.c#28 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwireg.h#11 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwivar.h#9 integrate .. //depot/projects/smpng/sys/dev/ixgbe/LICENSE#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe.c#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe.h#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_82598.c#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_api.c#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_api.h#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_common.c#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_common.h#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_osdep.h#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_phy.c#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_phy.h#1 branch .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_type.h#1 branch .. //depot/projects/smpng/sys/dev/kbdmux/kbdmux.c#6 integrate .. //depot/projects/smpng/sys/dev/lge/if_lge.c#38 integrate .. //depot/projects/smpng/sys/dev/lmc/if_lmc.c#16 integrate .. //depot/projects/smpng/sys/dev/mc146818/mc146818.c#5 integrate .. //depot/projects/smpng/sys/dev/mc146818/mc146818var.h#4 integrate .. //depot/projects/smpng/sys/dev/md/md.c#81 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi.c#19 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi_cam.c#2 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi_disk.c#7 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi_pci.c#7 integrate .. //depot/projects/smpng/sys/dev/mfi/mfireg.h#8 integrate .. //depot/projects/smpng/sys/dev/mfi/mfivar.h#8 integrate .. //depot/projects/smpng/sys/dev/mii/amphy.c#16 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#43 integrate .. //depot/projects/smpng/sys/dev/mii/brgphyreg.h#7 integrate .. //depot/projects/smpng/sys/dev/mii/ciphy.c#7 integrate .. //depot/projects/smpng/sys/dev/mii/ciphyreg.h#3 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phy.c#15 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phyreg.h#5 integrate .. //depot/projects/smpng/sys/dev/mii/gentbi.c#4 integrate .. //depot/projects/smpng/sys/dev/mii/icsphy.c#1 branch .. //depot/projects/smpng/sys/dev/mii/icsphyreg.h#1 branch .. //depot/projects/smpng/sys/dev/mii/miidevs#26 integrate .. //depot/projects/smpng/sys/dev/mii/nsphy.c#16 integrate .. //depot/projects/smpng/sys/dev/mii/rgephy.c#12 integrate .. //depot/projects/smpng/sys/dev/mii/rgephyreg.h#3 integrate .. //depot/projects/smpng/sys/dev/mii/rlphy.c#23 integrate .. //depot/projects/smpng/sys/dev/mii/tdkphy.c#18 integrate .. //depot/projects/smpng/sys/dev/mii/ukphy_subr.c#7 integrate .. //depot/projects/smpng/sys/dev/mly/mly.c#32 integrate .. //depot/projects/smpng/sys/dev/mmc/bridge.h#2 integrate .. //depot/projects/smpng/sys/dev/mmc/mmc.c#3 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcbr_if.m#2 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcbrvar.h#2 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcbus_if.m#2 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcreg.h#2 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcsd.c#3 integrate .. //depot/projects/smpng/sys/dev/mmc/mmcvar.h#3 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi.h#8 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_cnfg.h#8 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_init.h#7 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_ioc.h#8 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_log_fc.h#2 delete .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_log_sas.h#2 delete .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_raid.h#7 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_sas.h#3 integrate .. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_targ.h#6 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.c#24 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.h#23 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_cam.c#26 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_pci.c#33 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_raid.c#12 integrate .. //depot/projects/smpng/sys/dev/msk/if_msk.c#8 integrate .. //depot/projects/smpng/sys/dev/msk/if_mskreg.h#4 integrate .. //depot/projects/smpng/sys/dev/mxge/eth_z8e.dat.gz.uu#6 delete .. //depot/projects/smpng/sys/dev/mxge/eth_z8e.h#1 branch .. //depot/projects/smpng/sys/dev/mxge/ethp_z8e.dat.gz.uu#6 delete .. //depot/projects/smpng/sys/dev/mxge/ethp_z8e.h#1 branch .. //depot/projects/smpng/sys/dev/mxge/if_mxge.c#18 integrate .. //depot/projects/smpng/sys/dev/mxge/if_mxge_var.h#7 integrate .. //depot/projects/smpng/sys/dev/mxge/mcp_gen_header.h#2 integrate .. //depot/projects/smpng/sys/dev/mxge/mxge_eth_z8e.c#1 branch .. //depot/projects/smpng/sys/dev/mxge/mxge_ethp_z8e.c#1 branch .. //depot/projects/smpng/sys/dev/mxge/mxge_lro.c#1 branch .. //depot/projects/smpng/sys/dev/mxge/mxge_mcp.h#5 integrate .. //depot/projects/smpng/sys/dev/my/if_my.c#28 integrate .. //depot/projects/smpng/sys/dev/nfe/if_nfe.c#9 integrate .. //depot/projects/smpng/sys/dev/nfe/if_nfereg.h#5 integrate .. //depot/projects/smpng/sys/dev/nfe/if_nfevar.h#3 integrate .. //depot/projects/smpng/sys/dev/nge/if_nge.c#53 integrate .. //depot/projects/smpng/sys/dev/nmdm/nmdm.c#31 integrate .. //depot/projects/smpng/sys/dev/nve/if_nve.c#16 integrate .. //depot/projects/smpng/sys/dev/nvram/nvram.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/if_nxge.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/if_nxge.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/build-version.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/version.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xge-debug.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xge-defs.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xge-list.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xge-os-pal.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xge-queue.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-channel.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-config.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-device.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-driver.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-event.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-fifo.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-mgmt.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-mgmtaux.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-mm.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-regs.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-ring.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-stats.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal-types.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/include/xgehal.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/xge-osdep.h#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xge-queue.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-channel-fp.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-channel.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-config.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-device-fp.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-device.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-driver.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-fifo-fp.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-fifo.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-mgmt.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-mgmtaux.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-mm.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-ring-fp.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-ring.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-stats.c#1 branch .. //depot/projects/smpng/sys/dev/nxge/xgell-version.h#1 branch .. //depot/projects/smpng/sys/dev/ofw/ofw_disk.c#17 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirm.c#12 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirm.h#9 integrate .. //depot/projects/smpng/sys/dev/ofw/openpromio.c#8 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard.c#45 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard_cis_quirks.c#10 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#57 integrate .. //depot/projects/smpng/sys/dev/pccard/pccardvarp.h#4 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#66 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbb_pci.c#15 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbbvar.h#20 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#95 integrate .. //depot/projects/smpng/sys/dev/pci/pci_pci.c#35 integrate .. //depot/projects/smpng/sys/dev/pci/pci_private.h#23 integrate .. //depot/projects/smpng/sys/dev/pci/pci_user.c#18 integrate .. //depot/projects/smpng/sys/dev/pci/pcib_private.h#13 integrate .. //depot/projects/smpng/sys/dev/pci/pcireg.h#25 integrate .. //depot/projects/smpng/sys/dev/pci/pcivar.h#28 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq_ifsubr.c#14 integrate .. //depot/projects/smpng/sys/dev/pdq/pdqreg.h#3 integrate .. //depot/projects/smpng/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/smpng/sys/dev/ppbus/vpo.c#12 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#31 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pci.c#13 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#39 integrate .. //depot/projects/smpng/sys/dev/ral/if_ral_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/ral/rt2560.c#10 integrate .. //depot/projects/smpng/sys/dev/ral/rt2560reg.h#2 integrate .. //depot/projects/smpng/sys/dev/ral/rt2560var.h#3 integrate .. //depot/projects/smpng/sys/dev/ral/rt2661.c#7 integrate .. //depot/projects/smpng/sys/dev/ral/rt2661reg.h#2 integrate .. //depot/projects/smpng/sys/dev/ral/rt2661var.h#3 integrate .. //depot/projects/smpng/sys/dev/random/harvest.c#11 integrate .. //depot/projects/smpng/sys/dev/random/randomdev_soft.c#14 integrate .. //depot/projects/smpng/sys/dev/random/yarrow.c#14 integrate .. //depot/projects/smpng/sys/dev/ray/if_ray.c#27 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#56 integrate .. //depot/projects/smpng/sys/dev/rp/rp.c#24 integrate .. //depot/projects/smpng/sys/dev/rr232x/osm_bsd.c#5 integrate .. //depot/projects/smpng/sys/dev/safe/safe.c#12 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni.c#22 integrate .. //depot/projects/smpng/sys/dev/sbsh/if_sbsh.c#16 integrate .. //depot/projects/smpng/sys/dev/si/si_pci.c#8 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#64 integrate .. //depot/projects/smpng/sys/dev/sio/sio_isa.c#16 integrate .. //depot/projects/smpng/sys/dev/sio/sio_puc.c#10 integrate .. //depot/projects/smpng/sys/dev/sk/if_sk.c#14 integrate .. //depot/projects/smpng/sys/dev/snp/snp.c#27 integrate .. //depot/projects/smpng/sys/dev/sound/clone.c#1 branch .. //depot/projects/smpng/sys/dev/sound/clone.h#1 branch .. //depot/projects/smpng/sys/dev/sound/isa/ad1816.c#26 integrate .. //depot/projects/smpng/sys/dev/sound/isa/ad1816.h#4 integrate .. //depot/projects/smpng/sys/dev/sound/isa/ess.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/isa/mss.c#33 integrate .. //depot/projects/smpng/sys/dev/sound/isa/sb16.c#25 integrate .. //depot/projects/smpng/sys/dev/sound/isa/sb8.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/midi/sequencer.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/pci/als4000.c#22 integrate .. //depot/projects/smpng/sys/dev/sound/pci/atiixp.c#12 integrate .. //depot/projects/smpng/sys/dev/sound/pci/atiixp.h#4 integrate .. //depot/projects/smpng/sys/dev/sound/pci/au88x0.c#13 integrate .. //depot/projects/smpng/sys/dev/sound/pci/aureal.c#16 integrate .. //depot/projects/smpng/sys/dev/sound/pci/cmi.c#36 integrate .. //depot/projects/smpng/sys/dev/sound/pci/cs4281.c#17 integrate .. //depot/projects/smpng/sys/dev/sound/pci/csapcm.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ds1.c#26 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#34 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx-midi.c#2 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx-pcm.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx.h#4 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24.c#12 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24.h#2 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24ht.c#9 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24ht.h#3 integrate .. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#26 integrate .. //depot/projects/smpng/sys/dev/sound/pci/fm801.c#22 integrate .. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac.c#15 integrate .. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac_private.h#6 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ich.c#52 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro.c#23 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro3.c#27 integrate .. //depot/projects/smpng/sys/dev/sound/pci/neomagic.c#11 integrate .. //depot/projects/smpng/sys/dev/sound/pci/solo.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pci/spicds.c#3 integrate .. //depot/projects/smpng/sys/dev/sound/pci/spicds.h#2 integrate .. //depot/projects/smpng/sys/dev/sound/pci/t4dwave.c#25 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via8233.c#27 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via82c686.c#27 integrate .. //depot/projects/smpng/sys/dev/sound/pci/vibes.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#38 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97_patch.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/buffer.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/buffer.h#14 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/channel.c#41 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/channel.h#15 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/dsp.c#42 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/dsp.h#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_fmt.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_rate.c#15 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_volume.c#5 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/mixer.c#28 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/mixer.h#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sndstat.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sound.c#40 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sound.h#32 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/vchan.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/vchan.h#5 integrate .. //depot/projects/smpng/sys/dev/sound/sbus/cs4231.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/unit.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 20 23:13:01 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CF5016A469; Thu, 20 Dec 2007 23:13:01 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4366216A418 for ; Thu, 20 Dec 2007 23:13:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 35F8613C4F7 for ; Thu, 20 Dec 2007 23:13:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKND1gm098687 for ; Thu, 20 Dec 2007 23:13:01 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKND126098677 for perforce@freebsd.org; Thu, 20 Dec 2007 23:13:01 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 20 Dec 2007 23:13:01 GMT Message-Id: <200712202313.lBKND126098677@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 131337 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 23:13:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=131337 Change 131337 by hselasky@hselasky_laptop001 on 2007/12/20 23:12:18 We need to set higher priority on the interrupt threads. TIP for testing: Buy an USB Sound card and lower the priority of the interrupt thread. When the system is busy you will hear glitches in the sound stream. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#75 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#82 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#75 (text+ko) ==== @@ -58,6 +58,8 @@ #include #include #include +#include +#include #include #include #include @@ -2687,8 +2689,15 @@ struct usbd_config_td *ctd = arg; struct usbd_config_td_item *item; struct usbd_mbuf *m; + struct thread *td; register int error; + /* adjust priority */ + td = curthread; + thread_lock(td); + sched_prio(td, PI_DISK); + thread_unlock(td); + mtx_lock(ctd->p_mtx); while (1) { @@ -2813,7 +2822,7 @@ } if (usb_thread_create (&usbd_config_td_thread, ctd, &(ctd->config_thread), - "usbd config thread")) { + "USB config thread")) { PRINTFN(0, ("unable to create config thread!\n")); ctd->config_thread = NULL; goto error; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#82 (text+ko) ==== @@ -43,6 +43,8 @@ #include #include #include +#include +#include #include #include @@ -2121,8 +2123,15 @@ { struct usbd_memory_info *info = arg; struct usbd_xfer *xfer[4]; + struct thread *td; uint8_t dropcount; + /* adjust priority */ + td = curthread; + thread_lock(td); + sched_prio(td, PI_NET); + thread_unlock(td); + mtx_lock(info->usb_mtx); /* From owner-p4-projects@FreeBSD.ORG Thu Dec 20 23:29:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2389016A41B; Thu, 20 Dec 2007 23:29:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C9EDD16A418 for ; Thu, 20 Dec 2007 23:29:18 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BD1F413C43E for ; Thu, 20 Dec 2007 23:29:18 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKNTI0k000600 for ; Thu, 20 Dec 2007 23:29:18 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKNTIGA000597 for perforce@freebsd.org; Thu, 20 Dec 2007 23:29:18 GMT (envelope-from jhb@freebsd.org) Date: Thu, 20 Dec 2007 23:29:18 GMT Message-Id: <200712202329.lBKNTIGA000597@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 131338 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 23:29:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131338 Change 131338 by jhb@jhb_mutex on 2007/12/20 23:29:12 IFC @131334 Affected files ... .. //depot/projects/smpng/sys/vm/vm_page.c#94 integrate .. //depot/projects/smpng/sys/vm/vm_phys.c#2 integrate .. //depot/projects/smpng/sys/vm/vm_phys.h#2 integrate Differences ... ==== //depot/projects/smpng/sys/vm/vm_page.c#94 (text+ko) ==== @@ -97,7 +97,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.363 2007/12/19 05:47:50 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.364 2007/12/20 22:45:54 alc Exp $"); #include #include @@ -1026,8 +1026,11 @@ mtx_unlock(&vm_page_queue_free_mtx); return (NULL); } - vm_phys_unfree_page(m); - vm_phys_set_pool(VM_FREEPOOL_DEFAULT, m, 0); + if (vm_phys_unfree_page(m)) + vm_phys_set_pool(VM_FREEPOOL_DEFAULT, m, 0); + else + panic("vm_page_alloc: cache page %p is missing" + " from the free queue", m); } else if ((req & VM_ALLOC_IFCACHED) != 0) { mtx_unlock(&vm_page_queue_free_mtx); return (NULL); ==== //depot/projects/smpng/sys/vm/vm_phys.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.5 2007/12/19 23:09:45 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_phys.c,v 1.6 2007/12/20 22:45:54 alc Exp $"); #include "opt_ddb.h" @@ -468,7 +468,7 @@ * * The free page queues must be locked. */ -void +boolean_t vm_phys_unfree_page(vm_page_t m) { struct vm_freelist *fl; @@ -489,13 +489,15 @@ order < VM_NFREEORDER - 1; ) { order++; pa = m->phys_addr & (~(vm_paddr_t)0 << (PAGE_SHIFT + order)); - KASSERT(pa >= seg->start && pa < seg->end, - ("vm_phys_unfree_page: paddr %#jx is not within segment %p", - (uintmax_t)pa, seg)); - m_set = &seg->first_page[atop(pa - seg->start)]; + if (pa >= seg->start && pa < seg->end) + m_set = &seg->first_page[atop(pa - seg->start)]; + else + return (FALSE); } - KASSERT(m_set->order >= order, ("vm_phys_unfree_page: page %p's order" - " (%d) is less than expected (%d)", m_set, m_set->order, order)); + if (m_set->order < order) + return (FALSE); + if (m_set->order == VM_NFREEORDER) + return (FALSE); KASSERT(m_set->order < VM_NFREEORDER, ("vm_phys_unfree_page: page %p has unexpected order %d", m_set, m_set->order)); @@ -525,6 +527,7 @@ fl[order].lcnt++; } KASSERT(m_set == m, ("vm_phys_unfree_page: fatal inconsistency")); + return (TRUE); } /* ==== //depot/projects/smpng/sys/vm/vm_phys.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/vm/vm_phys.h,v 1.3 2007/09/25 06:25:06 alc Exp $ + * $FreeBSD: src/sys/vm/vm_phys.h,v 1.4 2007/12/20 22:45:54 alc Exp $ */ /* @@ -38,6 +38,8 @@ #ifndef _VM_PHYS_H_ #define _VM_PHYS_H_ +#ifdef _KERNEL + void vm_phys_add_page(vm_paddr_t pa); vm_page_t vm_phys_alloc_contig(unsigned long npages, vm_paddr_t low, vm_paddr_t high, @@ -47,7 +49,8 @@ void vm_phys_free_pages(vm_page_t m, int order); void vm_phys_init(void); void vm_phys_set_pool(int pool, vm_page_t m, int order); -void vm_phys_unfree_page(vm_page_t m); +boolean_t vm_phys_unfree_page(vm_page_t m); boolean_t vm_phys_zero_pages_idle(void); +#endif /* _KERNEL */ #endif /* !_VM_PHYS_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Dec 20 23:42:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A1FA16A468; Thu, 20 Dec 2007 23:42:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9B69716A41A for ; Thu, 20 Dec 2007 23:42:32 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 85BFE13C4CE for ; Thu, 20 Dec 2007 23:42:32 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBKNgW07002995 for ; Thu, 20 Dec 2007 23:42:32 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBKNgWSY002992 for perforce@freebsd.org; Thu, 20 Dec 2007 23:42:32 GMT (envelope-from jhb@freebsd.org) Date: Thu, 20 Dec 2007 23:42:32 GMT Message-Id: <200712202342.lBKNgWSY002992@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 131339 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Dec 2007 23:42:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131339 Change 131339 by jhb@jhb_mutex on 2007/12/20 23:41:43 Tidy. Affected files ... .. //depot/projects/smpng/sys/kern/subr_smp.c#46 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_smp.c#46 (text+ko) ==== @@ -106,8 +106,8 @@ /* Variables needed for SMP rendezvous. */ static void (*volatile smp_rv_setup_func)(void *arg); static void (*volatile smp_rv_action_func)(void *arg); -static void (* volatile smp_rv_teardown_func)(void *arg); -static void * volatile smp_rv_func_arg; +static void (*volatile smp_rv_teardown_func)(void *arg); +static void *volatile smp_rv_func_arg; static volatile int smp_rv_waiters[3]; /* @@ -286,7 +286,8 @@ return 1; } -void smp_no_rendevous_barrier(void *dummy) +void +smp_no_rendevous_barrier(void *dummy) { #ifdef SMP KASSERT((!smp_started),("smp_no_rendevous called and smp is started")); @@ -309,7 +310,6 @@ void (*local_setup_func)(void*) = smp_rv_setup_func; void (*local_action_func)(void*) = smp_rv_action_func; void (*local_teardown_func)(void*) = smp_rv_teardown_func; - /* Ensure we have up-to-date values. */ atomic_add_acq_int(&smp_rv_waiters[0], 1); @@ -320,21 +320,17 @@ if (local_setup_func != smp_no_rendevous_barrier) { if (smp_rv_setup_func != NULL) smp_rv_setup_func(smp_rv_func_arg); + /* spin on entry rendezvous */ atomic_add_int(&smp_rv_waiters[1], 1); while (smp_rv_waiters[1] < mp_ncpus) cpu_spinwait(); } - atomic_add_int(&smp_rv_waiters[1], 1); - while (smp_rv_waiters[1] < mp_ncpus) - cpu_spinwait(); - /* action function */ if (local_action_func != NULL) local_action_func(local_func_arg); - /* spin on exit rendezvous */ atomic_add_int(&smp_rv_waiters[2], 1); if (local_teardown_func == smp_no_rendevous_barrier) @@ -376,18 +372,16 @@ smp_rv_waiters[2] = 0; atomic_store_rel_int(&smp_rv_waiters[0], 0); - - - /* signal other processors, which will enter the IPI with interrupts off */ + /* Signal other processors, which will enter the IPI with interrupts off */ ipi_all_but_self(IPI_RENDEZVOUS); /* call executor function */ smp_rendezvous_action(); - if (teardown_func == smp_no_rendevous_barrier) { + if (teardown_func == smp_no_rendevous_barrier) while (atomic_load_acq_int(&smp_rv_waiters[2]) < mp_ncpus) cpu_spinwait(); - } + /* release lock */ mtx_unlock_spin(&smp_ipi_mtx); } @@ -409,9 +403,9 @@ mp_setvariables_for_up, NULL) void -smp_rendezvous(void (* setup_func)(void *), - void (* action_func)(void *), - void (* teardown_func)(void *), +smp_rendezvous(void (*setup_func)(void *), + void (*action_func)(void *), + void (*teardown_func)(void *), void *arg) { From owner-p4-projects@FreeBSD.ORG Fri Dec 21 13:55:27 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CFC0816A46B; Fri, 21 Dec 2007 13:55:26 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7535316A421 for ; Fri, 21 Dec 2007 13:55:26 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 548FC13C474 for ; Fri, 21 Dec 2007 13:55:21 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBLDtLfU013499 for ; Fri, 21 Dec 2007 13:55:21 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBLDtLTE013496 for perforce@freebsd.org; Fri, 21 Dec 2007 13:55:21 GMT (envelope-from gabor@freebsd.org) Date: Fri, 21 Dec 2007 13:55:21 GMT Message-Id: <200712211355.lBLDtLTE013496@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 131369 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Dec 2007 13:55:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=131369 Change 131369 by gabor@gabor_server on 2007/12/21 13:55:19 IFC Affected files ... .. //depot/projects/docproj_hu/books/handbook/advanced-networking/chapter.sgml#3 integrate Differences ... ==== //depot/projects/docproj_hu/books/handbook/advanced-networking/chapter.sgml#3 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -901,8 +901,8 @@ &prompt.root; ifconfig ath0 up scan SSID BSSID CHAN RATE S:N INT CAPS -dlinkap 00:13:46:49:41:76 6 54M 29:0 100 EPS WPA WME -freebsdap 00:11:95:c3:0d:ac 1 54M 22:0 100 EPS WPA +dlinkap 00:13:46:49:41:76 6 54M 29:3 100 EPS WPA WME +freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 EPS WPA You must mark the interface @@ -1143,7 +1143,7 @@ parameters you have set up for selecting an access point: - ifconfig_ath0="inet 192.168.1.100 netmask 255.255.255.0 ssid your_ssid_here" + ifconfig_ath0="ssid your_ssid_here inet 192.168.1.100 netmask 255.255.255.0" @@ -1635,8 +1635,8 @@ WEP can be set up with ifconfig: - &prompt.root; ifconfig ath0 inet 192.168.1.100 netmask 255.255.255.0 ssid my_net \ - wepmode on weptxkey 3 wepkey 3:0x3456789012 + &prompt.root; ifconfig ath0 ssid my_net wepmode on weptxkey 3 wepkey 3:0x3456789012 \ + inet 192.168.1.100 netmask 255.255.255.0 @@ -1698,7 +1698,7 @@ On the box A: - &prompt.root; ifconfig ath0 inet 192.168.0.1 netmask 255.255.255.0 ssid freebsdap mediaopt adhoc + &prompt.root; ifconfig ath0 ssid freebsdap mediaopt adhoc inet 192.168.0.1 netmask 255.255.255.0 &prompt.root; ifconfig ath0 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 @@ -1717,14 +1717,14 @@ &prompt.root; ifconfig ath0 up scan SSID BSSID CHAN RATE S:N INT CAPS - freebsdap 02:11:95:c3:0d:ac 2 54M 19:0 100 IS + freebsdap 02:11:95:c3:0d:ac 2 54M 19:3 100 IS The I in the output confirms the machine A is in ad-hoc mode. We just have to configure B with a different IP address: - &prompt.root; ifconfig ath0 inet 192.168.0.2 netmask 255.255.255.0 ssid freebsdap mediaopt adhoc + &prompt.root; ifconfig ath0 ssid freebsdap mediaopt adhoc inet 192.168.0.2 netmask 255.255.255.0 &prompt.root; ifconfig ath0 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1 @@ -1739,6 +1739,305 @@ ready to exchange informations.
+ + &os; Host Access Points + + &os; can act as an Access Point (AP) which eliminates the + need to buy a hardware AP or run an ad-hoc network. This can be + particularly useful when your &os; machine is acting as a + gateway to another network (e.g., the Internet). + + + Basic Settings + + Before configuring your &os; machine as an AP, the + kernel must be configured with the appropriate wireless + networking support for your wireless card. You also have to + add the support for the security protocols you intend to + use. For more details, see . + + + The use of the NDIS driver wrapper and the &windows; + drivers do not allow currently the AP operation. Only + native &os; wireless drivers support AP mode. + + + Once the wireless networking support is loaded, you can + check if your wireless device supports the host-based access + point mode (also know as hostap mode): + + &prompt.root; ifconfig ath0 list caps +ath0=783ed0f<WEP,TKIP,AES,AES_CCM,IBSS,HOSTAP,AHDEMO,TXPMGT,SHSLOT,SHPREAMBLE,MONITOR,TKIPMIC,WPA1,WPA2,BURST,WME> + + This output displays the card capabilities; the + HOSTAP word confirms this wireless card + can act as an Access Point. Various supported ciphers are + also mentioned: WEP, TKIP, WPA2, etc., these informations + are important to know what security protocols could be set + on the Access Point. + + The wireless device can now be put into hostap mode and + configured with the correct SSID and IP address: + + &prompt.root; ifconfig ath0 ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0 + + Use again ifconfig to see the status + of the ath0 interface: + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy OFF txpowmax 38 bmiss 7 protmode CTS burst dtimperiod 1 bintval 100 + + The hostap parameter indicates the + interface is running in the host-based access point + mode. + + The interface configuration can be done automatically at + boot time by adding the following line to + /etc/rc.conf: + + ifconfig_ath0="ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0" + + + + Host-based Access Point without Authentication or + Encryption + + Although it is not recommended to run an AP without any + authentication or encryption, this is a simple way to check + if your AP is working. This configuration is also important + for debugging client issues. + + Once the AP configured as previously shown, it is + possible from another wireless machine to initiate a scan to + find the AP: + + &prompt.root; ifconfig ath0 up scan +SSID BSSID CHAN RATE S:N INT CAPS +freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 ES + + The client machine found the Access Point and can be + associated with it: + + &prompt.root; ifconfig ath0 ssid freebsdap inet 192.168.0.2 netmask 255.255.255.0 +&prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1 + inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255 + ether 00:11:95:d5:43:62 + media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps) + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100 + + + + WPA Host-based Access Point + + This section will focus on setting up &os; Access Point + using the WPA security protocol. More details regarding WPA + and the configuration of WPA-based wireless clients can be + found in the . + + The hostapd daemon is used to + deal with client authentication and keys management on the + WPA enabled Access Point. + + In the following, all the configuration operations will + be performed on the &os; machine acting as AP. Once the + AP is correctly working, hostapd + should be automatically enabled at boot with the following + line in /etc/rc.conf: + + hostapd_enable="YES" + + Before trying to configure + hostapd, be sure you have done + the basic settings introduced in the . + + + WPA-PSK + + WPA-PSK is intended for small networks where the use + of an backend authentication server is not possible or + desired. + + The configuration is done in the + /etc/hostapd.conf file: + + interface=ath0 +debug=1 +ctrl_interface=/var/run/hostapd +ctrl_interface_group=wheel +ssid=freebsdap +wpa=1 +wpa_passphrase=freebsdmall +wpa_key_mgmt=WPA-PSK +wpa_pairwise=CCMP TKIP + + + + This field indicates the wireless interface used + for the Access Point. + + + + This field sets the level of verbosity during the + execution of hostapd. A + value of 1 represents the minimal + level. + + + + The ctrl_interface field gives + the pathname of the directory used by + hostapd to stores its + domain socket files for the communication with + external programs such as &man.hostapd.cli.8;. The + default value is used here. + + + + The ctrl_interface_group line + sets the group (here, it is the + wheel group) allowed to access + to the control interface files. + + + + This field sets the network name. + + + + The wpa field enables WPA and + specifies which WPA authentication protocol will be + required. A value of 1 configures the + AP for WPA-PSK. + + + + The wpa_passphrase field + contains the ASCII passphrase for the WPA + authentication. + + + Always use strong passwords that are + sufficiently long and made from a rich alphabet so + they will not be guessed and/or attacked. + + + + + The wpa_key_mgmt line refers to + the key management protocol we use. In our case it is + WPA-PSK. + + + + The wpa_pairwise field + indicates the set of accepted encryption algorithms by + the Access Point. Here both TKIP (WPA) and CCMP + (WPA2) ciphers are accepted. CCMP cipher is an + alternative to TKIP and that is strongly preferred + when possible; TKIP should be used solely for stations + incapable of doing CCMP. + + + + The next step is to start + hostapd: + + &prompt.root /etc/rc.d/hostapd forcestart + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2290 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode WPA2/802.11i privacy MIXED deftxkey 2 TKIP 2:128-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100 + + The Access Point is running, the clients can now be + associated with it, see for more details. It is + possible to see the stations associated with the AP using + the ifconfig ath0 list + sta command. + + + + + WEP Host-based Access Point + + It is not recommended to use WEP for setting up an + Access Point since there is no authentication mechanism and + it is easily to be cracked. Some legacy wireless cards only + support WEP as security protocol, these cards will only + allow to set up AP without authentication or encryption or + using the WEP protocol. + + The wireless device can now be put into hostap mode and + configured with the correct SSID and IP address: + + &prompt.root; ifconfig ath0 ssid freebsdap wepmode on weptxkey 3 wepkey 3:0x3456789012 mode 11g mediaopt hostap \ + inet 192.168.0.1 netmask 255.255.255.0 + + + + The weptxkey means which WEP + key will be used in the transmission. Here we used the + third key (note that the key numbering starts with + 1). This parameter must be specified + to really encrypt the data. + + + + The wepkey means setting the + selected WEP key. It should in the format + index:key, if the index is + not given, key 1 is set. That is + to say we need to set the index if we use keys other + than the first key. + + + + Use again ifconfig to see the status + of the ath0 interface: + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy ON deftxkey 3 wepkey 3:40-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100 + + From another wireless machine, it is possible to initiate + a scan to find the AP: + + &prompt.root; ifconfig ath0 up scan +SSID BSSID CHAN RATE S:N INT CAPS +freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 EPS + + The client machine found the Access Point and can be + associated with it using the correct parameters (key, etc.), + see for more + details. + + + Troubleshooting @@ -2773,6 +3072,21 @@ + Address limits + + The number of unique source MAC addresses behind an + interface can limited. Once the limit is reached packets + with unknown source addresses are dropped until an + existing host cache entry expires or is removed. + + The following example sets the maximum number of Ethernet + devices for CustomerA on + vlan100 to 10. + + &prompt.root; ifconfig bridge0 ifmaxaddr vlan100 10 + + + SNMP Monitoring The bridge interface and STP parameters can be monitored From owner-p4-projects@FreeBSD.ORG Fri Dec 21 13:56:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6AC3316A468; Fri, 21 Dec 2007 13:56:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0F25416A41B for ; Fri, 21 Dec 2007 13:56:23 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E466413C459 for ; Fri, 21 Dec 2007 13:56:22 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBLDuMG5013548 for ; Fri, 21 Dec 2007 13:56:22 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBLDuMaU013545 for perforce@freebsd.org; Fri, 21 Dec 2007 13:56:22 GMT (envelope-from gabor@freebsd.org) Date: Fri, 21 Dec 2007 13:56:22 GMT Message-Id: <200712211356.lBLDuMaU013545@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 131370 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Dec 2007 13:56:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131370 Change 131370 by gabor@gabor_server on 2007/12/21 13:55:36 IFC Affected files ... .. //depot/projects/docproj_hu/books/handbook/audit/chapter.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/books/handbook/audit/chapter.sgml#4 (text+ko) ==== @@ -1,11 +1,11 @@ + Original Revision: r1.31 --> @@ -55,7 +55,7 @@ valósítja meg, és így képes együttmûködni a &sun; &solaris; valamint az &apple; &macos; X bizonsági rendszereivel egyaránt. - + Ebben a fejezetben a biztonsági események vizsgálatának telepítéséhez és beállításához szükséges ismeretek @@ -63,7 +63,7 @@ vizsgálati házirendekrõl, valamint mutatunk egy példát a vizsgálatok beállítására. - + A fejezet elolvasása során megismerjük: @@ -256,31 +256,33 @@ A vizsgálat támogatásának telepítése - + A eseményvizsgálathoz szükséges - felhasználói programok a &os; 6.2-RELEASE - kiadásától kezdõdõen az alap - operációs rendszer részét képezik. - Azonban az eseményvizsgálat használatához a - rendszermagban is be kell kapcsolnunk a megfelelõ + felhasználói programok a &os; alaprendszer + részét képezik. A &os; 6.3 és + késõbbi verzióiban az eseményvizsgálat + támogatása alapértelmezés szerint + megtalálható a rendszermagban, azonban a + &os; 6.2-ben be kell kapcsolnunk a megfelelõ támogatást, mégpedig a rendszermag konfigurációs állományában az alábbi sor hozzáadásával: - + options AUDIT - + Fordítsuk és telepítsük újra a rendszermagot az ben ismertetett folyamat szerint. - - Ahogy a rendszermagot sikerült lefordítanunk és + + Ahogy a rendszermagot a bekapcsolt eseményvizsgálati + támogatással sikerült lefordítanunk és telepítenünk, valamint a rendszerünk is újraindult, indítsuk el a vizsgáló daemont a következõ sor hozzáadásával a &man.rc.conf.5;-ban: - + auditd_enable="YES" - + A vizsgálatot innentõl ténylegesen egy ismételt újraindítással vagy pedig az elõbb említett daemon manuális @@ -370,7 +372,7 @@ értékelõdnek ki, és két kifejezés összefûzéssel kombinálható. - + A most következõ lista tartalmazza a audit_class állományban található alapértelmezett @@ -431,7 +433,7 @@ állományt eredményezõ események vizsgálata. - + fd - file delete (állomány törlése) - @@ -569,7 +571,7 @@ nem vizsgálja a sikertelen eseményeket. - + Az alábbi példa egy olyan szûrési feltételt mutat be, amely a ki/bejelentkezések közül megadja a sikereset és a sikerteleneket, @@ -581,7 +583,7 @@ A konfigurációs állományok - + A vizsgálati rendszer beállításához az esetek túlnyomó részében a @@ -928,7 +930,7 @@ Ha az auditd daemon a parancs kiadásánák pillanatában nem futna, akkor hiba történik és errõl hibaüzenetet - kapunk. + kapunk. A &man.cron.8; segítségével tizenként @@ -989,6 +991,10 @@ lezárni, így tehát a szabálytalan leálláskor megmaradó nyomok esetén nem. + + A &os; 6.3 és késõbbi verzióiban, a + praudit XML kimeneti formátumot is támogat, + amely az kapcsolóval érhetõ el. From owner-p4-projects@FreeBSD.ORG Fri Dec 21 13:56:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30E8616A52F; Fri, 21 Dec 2007 13:56:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DDB7016A4F6 for ; Fri, 21 Dec 2007 13:56:23 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6F8D613C45D for ; Fri, 21 Dec 2007 13:56:23 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBLDuNb3013555 for ; Fri, 21 Dec 2007 13:56:23 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBLDuM6S013551 for perforce@freebsd.org; Fri, 21 Dec 2007 13:56:22 GMT (envelope-from gabor@freebsd.org) Date: Fri, 21 Dec 2007 13:56:22 GMT Message-Id: <200712211356.lBLDuM6S013551@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 131371 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Dec 2007 13:56:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131371 Change 131371 by gabor@gabor_server on 2007/12/21 13:56:12 IFC Affected files ... .. //depot/projects/docproj_hu/books/handbook/mirrors/chapter.sgml#3 integrate Differences ... ==== //depot/projects/docproj_hu/books/handbook/mirrors/chapter.sgml#3 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -1291,8 +1291,10 @@ doc/el_* doc/es_* doc/fr_* +doc/hu_* doc/it_* doc/ja_* +doc/mn_* doc/nl_* doc/no_* doc/pl_* From owner-p4-projects@FreeBSD.ORG Fri Dec 21 13:57:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6371D16A41B; Fri, 21 Dec 2007 13:57:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0868216A418 for ; Fri, 21 Dec 2007 13:57:25 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DD3C713C457 for ; Fri, 21 Dec 2007 13:57:24 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBLDvOe8013595 for ; Fri, 21 Dec 2007 13:57:24 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBLDvOYe013592 for perforce@freebsd.org; Fri, 21 Dec 2007 13:57:24 GMT (envelope-from gabor@freebsd.org) Date: Fri, 21 Dec 2007 13:57:24 GMT Message-Id: <200712211357.lBLDvOYe013592@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 131372 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Dec 2007 13:57:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131372 Change 131372 by gabor@gabor_server on 2007/12/21 13:56:35 IFC Affected files ... .. //depot/projects/docproj_hu/books/handbook/network-servers/chapter.sgml#2 integrate .. //depot/projects/docproj_hu/share/sgml/mailing-lists.ent#3 integrate .. //depot/projects/docproj_hu/share/sgml/teams.ent#3 integrate .. //depot/projects/docproj_hu/share/sgml/trademarks.ent#4 integrate Differences ... ==== //depot/projects/docproj_hu/books/handbook/network-servers/chapter.sgml#2 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -3819,7 +3819,7 @@ install Apache when you first installed FreeBSD, then you can install it from the www/apache13 or www/apache20 port. + role="package">www/apache22 port. Once Apache has been installed successfully, it must be configured. @@ -3952,6 +3952,10 @@ apache_enable="YES" + or for Apache 2.2: + + apache22_enable="YES" + If you would like to supply additional command line options for the Apache httpd program started at system boot, you @@ -4041,7 +4045,7 @@ 1.3.X that includes mod_ssl may be installed with the www/apache13-modssl port. SSL support is also available for Apache 2.X in the - www/apache20 port, + www/apache22 port, where it is enabled by default. @@ -4082,7 +4086,7 @@ remember that mod_perl 1.0 only works with Apache 1.3 and mod_perl 2.0 only works with - Apache 2. + Apache 2.X. mod_perl 1.0 is available in www/mod_perl and a statically compiled version is available in ==== //depot/projects/docproj_hu/share/sgml/mailing-lists.ent#3 (text+ko) ==== @@ -1,7 +1,7 @@