Date: Wed, 19 Jun 2002 00:04:30 -0700 (PDT) From: Julian Elischer <julian@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 13146 for review Message-ID: <200206190704.g5J74U310720@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=13146 Change 13146 by julian@julian_jules1 on 2002/06/19 00:04:26 MFC.. I'm impressed.. No conflicts in all those files! Affected files ... ... //depot/projects/kse/sys/alpha/conf/GENERIC#13 integrate ... //depot/projects/kse/sys/alpha/osf1/osf1_misc.c#12 integrate ... //depot/projects/kse/sys/compat/linux/linux_misc.c#17 integrate ... //depot/projects/kse/sys/conf/files#38 integrate ... //depot/projects/kse/sys/conf/files.sparc64#18 integrate ... //depot/projects/kse/sys/conf/kern.pre.mk#12 integrate ... //depot/projects/kse/sys/conf/kmod.mk#11 integrate ... //depot/projects/kse/sys/conf/options#20 integrate ... //depot/projects/kse/sys/conf/options.i386#18 integrate ... //depot/projects/kse/sys/conf/options.ia64#7 integrate ... //depot/projects/kse/sys/conf/options.pc98#18 integrate ... //depot/projects/kse/sys/dev/drm/drm_os_freebsd.h#4 integrate ... //depot/projects/kse/sys/dev/em/if_em_fxhw.c#4 delete ... //depot/projects/kse/sys/dev/em/if_em_fxhw.h#4 delete ... //depot/projects/kse/sys/dev/em/if_em_phy.c#5 delete ... //depot/projects/kse/sys/dev/em/if_em_phy.h#4 delete ... //depot/projects/kse/sys/dev/hea/eni.c#7 integrate ... //depot/projects/kse/sys/dev/hea/eni.h#4 integrate ... //depot/projects/kse/sys/dev/hea/eni_globals.c#2 integrate ... //depot/projects/kse/sys/dev/hea/eni_var.h#3 integrate ... //depot/projects/kse/sys/dev/hea/hea_freebsd.c#3 integrate ... //depot/projects/kse/sys/dev/hfa/fore_globals.c#2 integrate ... //depot/projects/kse/sys/dev/hfa/fore_include.h#3 integrate ... //depot/projects/kse/sys/dev/hfa/fore_load.c#5 integrate ... //depot/projects/kse/sys/dev/hfa/fore_var.h#2 integrate ... //depot/projects/kse/sys/dev/hfa/hfa_freebsd.c#3 integrate ... //depot/projects/kse/sys/dev/isp/isp.c#20 integrate ... //depot/projects/kse/sys/dev/isp/isp_freebsd.c#13 integrate ... //depot/projects/kse/sys/dev/isp/isp_freebsd.h#11 integrate ... //depot/projects/kse/sys/dev/isp/isp_inline.h#8 integrate ... //depot/projects/kse/sys/dev/isp/isp_ioctl.h#7 integrate ... //depot/projects/kse/sys/dev/isp/isp_pci.c#11 integrate ... //depot/projects/kse/sys/dev/isp/isp_target.c#6 integrate ... //depot/projects/kse/sys/dev/isp/isp_target.h#6 integrate ... //depot/projects/kse/sys/dev/isp/ispmbox.h#13 integrate ... //depot/projects/kse/sys/dev/isp/ispvar.h#12 integrate ... //depot/projects/kse/sys/dev/md/md.c#21 integrate ... //depot/projects/kse/sys/dev/puc/pucdata.c#5 integrate ... //depot/projects/kse/sys/dev/puc/pucvar.h#2 integrate ... //depot/projects/kse/sys/dev/sio/sio.c#15 integrate ... //depot/projects/kse/sys/dev/sio/sio_ebus.c#1 branch ... //depot/projects/kse/sys/dev/sio/sioreg.h#6 integrate ... //depot/projects/kse/sys/dev/usb/uhub.c#10 integrate ... //depot/projects/kse/sys/dev/usb/umass.c#12 integrate ... //depot/projects/kse/sys/dev/usb/usb_subr.c#9 integrate ... //depot/projects/kse/sys/dev/wi/if_wi_pci.c#4 integrate ... //depot/projects/kse/sys/fs/udf/udf_mount.h#2 delete ... //depot/projects/kse/sys/fs/udf/udf_vfsops.c#2 integrate ... //depot/projects/kse/sys/fs/unionfs/union.h#6 integrate ... //depot/projects/kse/sys/fs/unionfs/union_vfsops.c#10 integrate ... //depot/projects/kse/sys/i386/i386/pmap.c#37 integrate ... //depot/projects/kse/sys/kern/kern_exec.c#28 integrate ... //depot/projects/kse/sys/kern/kern_prot.c#27 integrate ... //depot/projects/kse/sys/kern/uipc_socket2.c#17 integrate ... //depot/projects/kse/sys/kern/vfs_subr.c#33 integrate ... //depot/projects/kse/sys/modules/netgraph/device/Makefile#1 branch ... //depot/projects/kse/sys/modules/sppp/Makefile#3 integrate ... //depot/projects/kse/sys/net/rtsock.c#17 integrate ... //depot/projects/kse/sys/netatm/atm_cm.c#6 integrate ... //depot/projects/kse/sys/netatm/atm_device.c#4 integrate ... //depot/projects/kse/sys/netatm/atm_if.c#5 integrate ... //depot/projects/kse/sys/netatm/atm_if.h#5 integrate ... //depot/projects/kse/sys/netatm/atm_subr.c#9 integrate ... //depot/projects/kse/sys/netatm/atm_sys.h#4 integrate ... //depot/projects/kse/sys/netatm/atm_var.h#8 integrate ... //depot/projects/kse/sys/netgraph/ng_device.c#1 branch ... //depot/projects/kse/sys/netgraph/ng_device.h#1 branch ... //depot/projects/kse/sys/netinet/accf_data.c#5 integrate ... //depot/projects/kse/sys/netinet/accf_http.c#5 integrate ... //depot/projects/kse/sys/netinet/in_pcb.c#18 integrate ... //depot/projects/kse/sys/netinet/in_pcb.h#12 integrate ... //depot/projects/kse/sys/netinet/tcp_input.c#21 integrate ... //depot/projects/kse/sys/netinet/tcp_subr.c#15 integrate ... //depot/projects/kse/sys/netinet/tcp_var.h#10 integrate ... //depot/projects/kse/sys/netinet/udp_usrreq.c#16 integrate ... //depot/projects/kse/sys/netinet/udp_var.h#4 integrate ... //depot/projects/kse/sys/netinet6/in6_pcb.c#16 integrate ... //depot/projects/kse/sys/netinet6/in6_pcb.h#6 integrate ... //depot/projects/kse/sys/netinet6/raw_ip6.c#12 integrate ... //depot/projects/kse/sys/netinet6/udp6_usrreq.c#12 integrate ... //depot/projects/kse/sys/netkey/keysock.c#10 integrate ... //depot/projects/kse/sys/pc98/pc98/sio.c#15 integrate ... //depot/projects/kse/sys/sparc64/conf/GENERIC#14 integrate ... //depot/projects/kse/sys/sparc64/include/vmparam.h#9 integrate ... //depot/projects/kse/sys/sparc64/sparc64/pmap.c#29 integrate ... //depot/projects/kse/sys/sys/_sigset.h#1 branch ... //depot/projects/kse/sys/sys/_types.h#3 integrate ... //depot/projects/kse/sys/sys/file.h#11 integrate ... //depot/projects/kse/sys/sys/malloc.h#8 integrate ... //depot/projects/kse/sys/sys/mount.h#11 integrate ... //depot/projects/kse/sys/sys/select.h#2 integrate ... //depot/projects/kse/sys/sys/signal.h#6 integrate ... //depot/projects/kse/sys/sys/socket.h#8 integrate ... //depot/projects/kse/sys/sys/socketvar.h#20 integrate ... //depot/projects/kse/sys/sys/statvfs.h#1 branch ... //depot/projects/kse/sys/sys/time.h#9 integrate ... //depot/projects/kse/sys/sys/types.h#15 integrate ... //depot/projects/kse/sys/sys/ucred.h#10 integrate ... //depot/projects/kse/sys/vm/uma.h#5 integrate ... //depot/projects/kse/sys/vm/uma_core.c#9 integrate ... //depot/projects/kse/sys/vm/uma_int.h#4 integrate ... //depot/projects/kse/sys/vm/vm_contig.c#7 integrate ... //depot/projects/kse/sys/vm/vm_fault.c#12 integrate ... //depot/projects/kse/sys/vm/vm_glue.c#31 integrate ... //depot/projects/kse/sys/vm/vm_kern.c#6 integrate ... //depot/projects/kse/sys/vm/vm_map.c#21 integrate ... //depot/projects/kse/sys/vm/vm_map.h#14 integrate ... //depot/projects/kse/sys/vm/vm_mmap.c#16 integrate ... //depot/projects/kse/sys/vm/vm_object.c#11 integrate Differences ... ==== //depot/projects/kse/sys/alpha/conf/GENERIC#13 (text+ko) ==== @@ -19,7 +19,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.138 2002/05/03 17:59:21 jmallett Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.140 2002/06/16 06:48:42 mjacob Exp $ machine alpha cpu EV4 @@ -130,7 +130,7 @@ # real time clock device mcclock -# Serial (COM) ports +# Serial (COM) ports (required) device sio # 8250, 16[45]50 based serial ports # Parallel port ==== //depot/projects/kse/sys/alpha/osf1/osf1_misc.c#12 (text+ko) ==== @@ -29,7 +29,7 @@ /* * Additional Copyright (c) 1999 by Andrew Gallatin - * $FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.30 2002/04/13 23:11:22 jhb Exp $ + * $FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.31 2002/06/19 06:39:25 alfred Exp $ */ @@ -1056,17 +1056,20 @@ struct proc *p; int error; uid_t uid; + struct uidinfo *uip; struct ucred *newcred, *oldcred; p = td->td_proc; uid = SCARG(uap, uid); newcred = crget(); + uip = uifind(uid); PROC_LOCK(p); oldcred = p->p_ucred; if ((error = suser_cred(p->p_ucred, PRISON_ROOT)) != 0 && uid != oldcred->cr_ruid && uid != oldcred->cr_svuid) { PROC_UNLOCK(p); + uifree(uip); crfree(newcred); return (error); } @@ -1074,7 +1077,7 @@ crcopy(newcred, oldcred); if (error == 0) { if (uid != oldcred->cr_ruid) { - change_ruid(newcred, uid); + change_ruid(newcred, uip); setsugid(p); } if (oldcred->cr_svuid != uid) { @@ -1083,11 +1086,12 @@ } } if (newcred->cr_uid != uid) { - change_euid(newcred, uid); + change_euid(newcred, uip); setsugid(p); } p->p_ucred = newcred; PROC_UNLOCK(p); + uifree(uip); crfree(oldcred); return (0); } ==== //depot/projects/kse/sys/compat/linux/linux_misc.c#17 (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/sys/compat/linux/linux_misc.c,v 1.122 2002/06/02 20:05:42 schweikh Exp $ + * $FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.123 2002/06/14 07:24:01 rwatson Exp $ */ #include "opt_compat.h" @@ -302,6 +302,10 @@ if (error) goto cleanup; + /* + * XXX: This should use vn_open() so that it is properly authorized, + * and to reduce code redundancy all over the place here. + */ error = VOP_OPEN(vp, FREAD, td->td_ucred, td); if (error) goto cleanup; ==== //depot/projects/kse/sys/conf/files#38 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.648 2002/06/13 23:19:34 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.650 2002/06/18 21:32:33 julian Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1016,6 +1016,7 @@ net/rtsock.c standard net/slcompress.c optional ppp net/slcompress.c optional sl +net/slcompress.c optional sppp net/zlib.c optional ppp_deflate net/zlib.c optional ipsec netatalk/aarp.c optional netatalk @@ -1112,6 +1113,7 @@ net/bpf_filter.c optional netgraph_bpf netgraph/ng_bridge.c optional netgraph_bridge netgraph/ng_cisco.c optional netgraph_cisco +netgraph/ng_device.c optional netgraph_device netgraph/ng_echo.c optional netgraph_echo netgraph/ng_ether.c optional netgraph_ether netgraph/ng_frame_relay.c optional netgraph_frame_relay ==== //depot/projects/kse/sys/conf/files.sparc64#18 (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.sparc64,v 1.21 2002/06/08 07:17:18 jake Exp $ +# $FreeBSD: src/sys/conf/files.sparc64,v 1.22 2002/06/18 01:14:54 obrien Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -12,6 +12,12 @@ crypto/des/des_enc.c optional ipsec ipsec_esp dev/ofw/ofw_console.c optional ofw_console dev/ofw/openfirm.c standard +dev/sio/sio.c optional sio +dev/sio/sio_ebus.c optional sio ebus +dev/sio/sio_isa.c optional sio isa +dev/sio/sio_pccard.c optional sio card +dev/sio/sio_pccard.c optional sio pccard +dev/sio/sio_pci.c optional sio pci libkern/ffs.c standard kern/subr_diskmbr.c standard kern/syscalls.c optional ktr ==== //depot/projects/kse/sys/conf/kern.pre.mk#12 (text+ko) ==== @@ -3,7 +3,7 @@ # Unified Makefile for building kenrels. This includes all the definitions # that need to be included before %BEFORE_DEPEND # -# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.12 2002/05/12 15:51:38 bde Exp $ +# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.13 2002/06/16 10:42:05 mux Exp $ # # Can be overridden by makeoptions or /etc/make.conf @@ -38,7 +38,7 @@ INCLUDES+= -I/usr/include .endif -COPTS= ${INCLUDES} ${IDENT} -D_KERNEL -ffreestanding -include opt_global.h +COPTS= ${INCLUDES} ${IDENT} -D_KERNEL -include opt_global.h CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -fno-common # XXX LOCORE means "don't declare C stuff" not "for locore.s". ==== //depot/projects/kse/sys/conf/kmod.mk#11 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91 -# $FreeBSD: src/sys/conf/kmod.mk,v 1.124 2002/05/14 07:49:12 ru Exp $ +# $FreeBSD: src/sys/conf/kmod.mk,v 1.125 2002/06/17 20:01:06 n_hibma Exp $ # # The include file <bsd.kmod.mk> handles installing Kernel Loadable Device # drivers (KLD's). @@ -278,7 +278,7 @@ .if !target(load) load: ${PROG} - ${KMODLOAD} -v ${.CURDIR}/${KMOD}.ko + ${KMODLOAD} -v ${.OBJDIR}/${KMOD}.ko .endif .if !target(unload) ==== //depot/projects/kse/sys/conf/options#20 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.325 2002/06/13 22:41:23 rwatson Exp $ +# $FreeBSD: src/sys/conf/options,v 1.326 2002/06/18 21:30:36 n_hibma Exp $ # # On the handling of kernel options # @@ -69,10 +69,12 @@ COMPAT_SUNOS opt_compat.h COMPILING_LINT opt_global.h CY_PCI_FASTINTR +CONSPEED opt_comconsole.h DDB DDB_NOKLDSYM opt_ddb.h DDB_UNATTENDED opt_ddb.h GDB_REMOTE_CHAT opt_ddb.h +GDBSPEED opt_ddb.h NODEVFS opt_devfs.h HW_WDOG KTRACE ==== //depot/projects/kse/sys/conf/options.i386#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.i386,v 1.170 2002/05/16 21:23:40 trhodes Exp $ +# $FreeBSD: src/sys/conf/options.i386,v 1.171 2002/06/18 21:30:36 n_hibma Exp $ # Options specific to the i386 platform kernels DISABLE_PSE @@ -14,7 +14,6 @@ POWERFAIL_NMI opt_trap.h AUTO_EOI_1 opt_auto_eoi.h AUTO_EOI_2 opt_auto_eoi.h -CONSPEED opt_comconsole.h I586_PMC_GUPROF opt_i586_guprof.h WLCACHE opt_wavelan.h WLDEBUG opt_wavelan.h ==== //depot/projects/kse/sys/conf/options.ia64#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.ia64,v 1.10 2002/04/14 04:33:41 peter Exp $ +# $FreeBSD: src/sys/conf/options.ia64,v 1.11 2002/06/18 21:30:37 n_hibma Exp $ # Options specific to the ia64 platform kernels ITANIUM opt_global.h @@ -15,8 +15,6 @@ SHOW_BUSYBUFS PANIC_REBOOT_WAIT_TIME opt_panic.h -CONSPEED opt_comconsole.h - MAXCONS opt_syscons.h SC_ALT_MOUSE_IMAGE opt_syscons.h SC_DEBUG_LEVEL opt_syscons.h ==== //depot/projects/kse/sys/conf/options.pc98#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.145 2002/05/19 13:18:10 nyan Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.146 2002/06/18 21:30:37 n_hibma Exp $ # Options specific to the pc98 platform kernels DISABLE_PSE @@ -14,7 +14,6 @@ POWERFAIL_NMI opt_trap.h AUTO_EOI_1 opt_auto_eoi.h AUTO_EOI_2 opt_auto_eoi.h -CONSPEED opt_comconsole.h I586_PMC_GUPROF opt_i586_guprof.h WLCACHE opt_wavelan.h WLDEBUG opt_wavelan.h ==== //depot/projects/kse/sys/dev/drm/drm_os_freebsd.h#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/sys/dev/drm/drm_os_freebsd.h,v 1.5 2002/05/31 23:19:50 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm_os_freebsd.h,v 1.6 2002/06/16 21:50:42 des Exp $ */ #include <sys/param.h> @@ -17,7 +17,6 @@ #include <sys/uio.h> #include <sys/filio.h> #include <sys/sysctl.h> -#include <sys/select.h> #include <vm/vm.h> #include <vm/pmap.h> #include <machine/pmap.h> ==== //depot/projects/kse/sys/dev/hea/eni.c#7 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hea/eni.c,v 1.21 2002/06/11 21:22:32 alfred Exp $ + * @(#) $FreeBSD: src/sys/dev/hea/eni.c,v 1.22 2002/06/14 16:59:37 arr Exp $ * */ @@ -66,7 +66,7 @@ #include <dev/hea/eni_var.h> #ifndef lint -__RCSID("@(#) $FreeBSD: src/sys/dev/hea/eni.c,v 1.21 2002/06/11 21:22:32 alfred Exp $"); +__RCSID("@(#) $FreeBSD: src/sys/dev/hea/eni.c,v 1.22 2002/06/14 16:59:37 arr Exp $"); #endif /* @@ -415,8 +415,8 @@ eup->eu_openvcc = eni_openvcc; eup->eu_closevcc = eni_closevcc; eup->eu_output = eni_output; - eup->eu_vcc_pool = &eni_vcc_pool; - eup->eu_nif_pool = &eni_nif_pool; + eup->eu_vcc_zone = eni_vcc_zone; + eup->eu_nif_zone = eni_nif_zone; /* * Enable Memory Mapping / Bus Mastering ==== //depot/projects/kse/sys/dev/hea/eni.h#4 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hea/eni.h,v 1.5 2002/06/07 05:23:01 mdodd Exp $ + * @(#) $FreeBSD: src/sys/dev/hea/eni.h,v 1.6 2002/06/14 16:59:37 arr Exp $ * */ @@ -491,8 +491,8 @@ #define eu_mtu eu_cmn.cu_mtu #define eu_open_vcc eu_cmn.cu_open_vcc #define eu_vcc eu_cmn.cu_vcc -#define eu_vcc_pool eu_cmn.cu_vcc_pool -#define eu_nif_pool eu_cmn.cu_nif_pool +#define eu_vcc_zone eu_cmn.cu_vcc_zone +#define eu_nif_zone eu_cmn.cu_nif_zone #define eu_ioctl eu_cmn.cu_ioctl #define eu_instvcc eu_cmn.cu_instvcc #define eu_openvcc eu_cmn.cu_openvcc ==== //depot/projects/kse/sys/dev/hea/eni_globals.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hea/eni_globals.c,v 1.8 2000/10/27 21:32:06 phk Exp $ + * @(#) $FreeBSD: src/sys/dev/hea/eni_globals.c,v 1.9 2002/06/14 16:59:37 arr Exp $ * */ @@ -53,8 +53,10 @@ #include <dev/hea/eni_stats.h> #include <dev/hea/eni.h> +#include <vm/uma.h> + #ifndef lint -__RCSID("@(#) $FreeBSD: src/sys/dev/hea/eni_globals.c,v 1.8 2000/10/27 21:32:06 phk Exp $"); +__RCSID("@(#) $FreeBSD: src/sys/dev/hea/eni_globals.c,v 1.9 2002/06/14 16:59:37 arr Exp $"); #endif /* @@ -98,17 +100,5 @@ /* * Storage pools */ -struct sp_info eni_nif_pool = { - "eni nif pool", /* si_name */ - sizeof(struct atm_nif), /* si_blksiz */ - 5, /* si_blkcnt */ - 52 /* si_maxallow */ -}; - -struct sp_info eni_vcc_pool = { - "eni vcc pool", /* si_name */ - sizeof(Eni_vcc), /* si_blksiz */ - 10, /* si_blkcnt */ - 100 /* si_maxallow */ -}; - +uma_zone_t eni_nif_zone; +uma_zone_t eni_vcc_zone; ==== //depot/projects/kse/sys/dev/hea/eni_var.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hea/eni_var.h,v 1.3 2002/03/20 02:07:22 alfred Exp $ + * @(#) $FreeBSD: src/sys/dev/hea/eni_var.h,v 1.4 2002/06/14 16:59:37 arr Exp $ * */ @@ -79,7 +79,7 @@ */ extern Eni_unit *eni_units[]; extern struct stack_defn *eni_services; -extern struct sp_info eni_nif_pool; -extern struct sp_info eni_vcc_pool; +extern uma_zone_t eni_nif_zone; +extern uma_zone_t eni_vcc_zone; #endif /* _ENI_ENI_VAR_H */ ==== //depot/projects/kse/sys/dev/hea/hea_freebsd.c#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/sys/dev/hea/hea_freebsd.c,v 1.3 2002/06/07 05:23:01 mdodd Exp $ + * $FreeBSD: src/sys/dev/hea/hea_freebsd.c,v 1.4 2002/06/14 16:59:37 arr Exp $ */ /* @@ -158,13 +158,25 @@ eup = &sc->eup; error = 0; + eni_vcc_zone = uma_zcreate("eni vcc", sizeof(Eni_vcc), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + if (eni_vcc_zone == NULL) + panic("hea_attach: uma_zcreate vcc"); + uma_zone_set_max(eni_vcc_zone, 100); + + eni_nif_zone = uma_zcreate("eni nif", sizeof(struct atm_nif), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + if (eni_nif_zone == NULL) + panic("hea_attach: uma_zcreate nif"); + uma_zone_set_max(eni_nif_zone, 52); + /* * Start initializing it */ eup->eu_unit = device_get_unit(dev); eup->eu_mtu = ENI_IFF_MTU; - eup->eu_vcc_pool = &eni_vcc_pool; - eup->eu_nif_pool = &eni_nif_pool; + eup->eu_vcc_zone = eni_vcc_zone; + eup->eu_nif_zone = eni_nif_zone; eup->eu_ioctl = eni_atm_ioctl; eup->eu_instvcc = eni_instvcc; eup->eu_openvcc = eni_openvcc; @@ -329,6 +341,9 @@ hea_free(dev); + uma_zdestroy(eni_vcc_zone); + uma_zdestroy(eni_nif_zone); + return (error); } ==== //depot/projects/kse/sys/dev/hfa/fore_globals.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hfa/fore_globals.c,v 1.9 2000/10/30 20:37:00 phk Exp $ + * @(#) $FreeBSD: src/sys/dev/hfa/fore_globals.c,v 1.10 2002/06/14 16:59:37 arr Exp $ * */ @@ -57,8 +57,10 @@ #include <dev/hfa/fore_stats.h> #include <dev/hfa/fore_var.h> +#include <vm/uma.h> + #ifndef lint -__RCSID("@(#) $FreeBSD: src/sys/dev/hfa/fore_globals.c,v 1.9 2000/10/30 20:37:00 phk Exp $"); +__RCSID("@(#) $FreeBSD: src/sys/dev/hfa/fore_globals.c,v 1.10 2002/06/14 16:59:37 arr Exp $"); #endif /* @@ -104,20 +106,8 @@ /* * Storage pools */ -struct sp_info fore_nif_pool = { - "fore nif pool", /* si_name */ - sizeof(struct atm_nif), /* si_blksiz */ - 5, /* si_blkcnt */ - 52 /* si_maxallow */ -}; - -struct sp_info fore_vcc_pool = { - "fore vcc pool", /* si_name */ - sizeof(Fore_vcc), /* si_blksiz */ - 10, /* si_blkcnt */ - 100 /* si_maxallow */ -}; - +uma_zone_t fore_nif_zone; +uma_zone_t fore_vcc_zone; /* * Watchdog timer ==== //depot/projects/kse/sys/dev/hfa/fore_include.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hfa/fore_include.h,v 1.5 2002/03/20 02:07:23 alfred Exp $ + * @(#) $FreeBSD: src/sys/dev/hfa/fore_include.h,v 1.6 2002/06/14 16:59:37 arr Exp $ * */ @@ -101,8 +101,8 @@ extern Fore_unit *fore_units[]; extern int fore_nunits; extern struct stack_defn *fore_services; -extern struct sp_info fore_nif_pool; -extern struct sp_info fore_vcc_pool; +extern uma_zone_t fore_nif_zone; +extern uma_zone_t fore_vcc_zone; extern struct atm_time fore_timer; #endif /* _FORE_INCLUDE_H */ ==== //depot/projects/kse/sys/dev/hfa/fore_load.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hfa/fore_load.c,v 1.25 2002/04/16 01:38:31 arr Exp $ + * @(#) $FreeBSD: src/sys/dev/hfa/fore_load.c,v 1.26 2002/06/14 16:59:37 arr Exp $ * */ @@ -67,7 +67,7 @@ #include <dev/hfa/fore_include.h> #ifndef lint -__RCSID("@(#) $FreeBSD: src/sys/dev/hfa/fore_load.c,v 1.25 2002/04/16 01:38:31 arr Exp $"); +__RCSID("@(#) $FreeBSD: src/sys/dev/hfa/fore_load.c,v 1.26 2002/06/14 16:59:37 arr Exp $"); #endif static int fore_probe(device_t); @@ -225,8 +225,8 @@ fup->fu_unit = unit; fup->fu_mtu = FORE_IFF_MTU; fup->fu_pcitag = config_id; - fup->fu_vcc_pool = &fore_vcc_pool; - fup->fu_nif_pool = &fore_nif_pool; + fup->fu_vcc_zone = fore_vcc_zone; + fup->fu_nif_zone = &fore_nif_zone; fup->fu_ioctl = fore_atm_ioctl; fup->fu_instvcc = fore_instvcc; fup->fu_openvcc = fore_openvcc; ==== //depot/projects/kse/sys/dev/hfa/fore_var.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/dev/hfa/fore_var.h,v 1.5 2001/01/17 01:08:49 peter Exp $ + * @(#) $FreeBSD: src/sys/dev/hfa/fore_var.h,v 1.6 2002/06/14 16:59:37 arr Exp $ * */ @@ -237,8 +237,8 @@ #define fu_vcc fu_cmn.cu_vcc #define fu_intrpri fu_cmn.cu_intrpri #define fu_savepri fu_cmn.cu_savepri -#define fu_vcc_pool fu_cmn.cu_vcc_pool -#define fu_nif_pool fu_cmn.cu_nif_pool +#define fu_vcc_zone fu_cmn.cu_vcc_zone +#define fu_nif_zone fu_cmn.cu_nif_zone #define fu_ioctl fu_cmn.cu_ioctl #define fu_instvcc fu_cmn.cu_instvcc #define fu_openvcc fu_cmn.cu_openvcc ==== //depot/projects/kse/sys/dev/hfa/hfa_freebsd.c#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/sys/dev/hfa/hfa_freebsd.c,v 1.2 2002/06/07 01:55:42 mdodd Exp $ + * $FreeBSD: src/sys/dev/hfa/hfa_freebsd.c,v 1.3 2002/06/14 16:59:37 arr Exp $ */ /* @@ -169,8 +169,8 @@ */ fup->fu_unit = device_get_unit(dev); fup->fu_mtu = FORE_IFF_MTU; - fup->fu_vcc_pool = &fore_vcc_pool; - fup->fu_nif_pool = &fore_nif_pool; + fup->fu_vcc_zone = fore_vcc_zone; + fup->fu_nif_zone = fore_nif_zone; fup->fu_ioctl = fore_atm_ioctl; fup->fu_instvcc = fore_instvcc; fup->fu_openvcc = fore_openvcc; @@ -377,6 +377,19 @@ error = EINVAL; break; } + + fore_nif_zone = uma_zcreate("fore nif", sizeof(struct atm_nif), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + if (fore_nif_zone == NULL) + panic("hfa_modevent:uma_zcreate nif"); + uma_zone_set_max(fore_nif_zone, 52); + + fore_vcc_zone = uma_zcreate("fore vcc", sizeof(Fore_vcc), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + if (fore_vcc_zone == NULL) + panic("hfa_modevent: uma_zcreate vcc"); + uma_zone_set_max(fore_vcc_zone, 100); + /* * Initialize DMA mapping */ @@ -399,6 +412,9 @@ */ atm_untimeout(&fore_timer); + uma_zdestroy(fore_nif_zone); + uma_zdestroy(fore_vcc_zone); + break; default: break; ==== //depot/projects/kse/sys/dev/isp/isp.c#20 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/isp/isp.c,v 1.93 2002/05/01 21:58:36 mjacob Exp $ */ +/* $FreeBSD: src/sys/dev/isp/isp.c,v 1.94 2002/06/16 05:18:22 mjacob Exp $ */ /* * Machine and OS Independent (well, as best as possible) * code for the Qlogic ISP SCSI adapters. @@ -161,7 +161,7 @@ { mbreg_t mbs; u_int16_t code_org; - int loops, i, touched, dodnld = 1; + int loops, i, dodnld = 1; char *btype = "????"; isp->isp_state = ISP_NILSTATE; @@ -184,7 +184,7 @@ * case, we don't really use this yet, but we may in * the future. */ - if ((touched = isp->isp_touched) == 0) { + if (isp->isp_touched == 0) { /* * First see whether or not we're sitting in the ISP PROM. * If we've just been reset, we'll have the string "ISP " @@ -676,8 +676,10 @@ mbs.param[0] = MBOX_EXEC_FIRMWARE; mbs.param[1] = code_org; isp_mboxcmd(isp, &mbs, MBLOGNONE); - /* give it a chance to start */ - USEC_SLEEP(isp, 500); + /* + * Give it a chance to start. + */ + USEC_DELAY(500); if (IS_SCSI(isp)) { /* @@ -789,19 +791,21 @@ * because we may be called again after firmware has been loaded once * and released. */ - if (touched == 0) { - if (IS_SCSI(isp)) { - if (dodnld) { + if (IS_SCSI(isp)) { + if (dodnld) { + if (IS_ULTRA2(isp) || IS_ULTRA3(isp)) { isp->isp_maxluns = 32; } else { isp->isp_maxluns = 8; } } else { - if (FCPARAM(isp)->isp_fwattr & ISP_FW_ATTR_SCCLUN) { - isp->isp_maxluns = 16384; - } else { - isp->isp_maxluns = 16; - } + isp->isp_maxluns = 8; + } + } else { + if (FCPARAM(isp)->isp_fwattr & ISP_FW_ATTR_SCCLUN) { + isp->isp_maxluns = 16384; + } else { + isp->isp_maxluns = 16; } } } @@ -1177,7 +1181,6 @@ */ fcp->isp_fwoptions |= ICBOPT_PDBCHANGE_AE; - /* * Make sure that target role reflects into fwoptions. */ @@ -2411,7 +2414,13 @@ rs0 = (sns_ga_nxt_rsp_t *) ((u_int8_t *)fcp->isp_scratch+0x100); isp_get_ga_nxt_response(isp, rs0, rs1); if (rs1->snscb_cthdr.ct_response != FS_ACC) { - isp_prt(isp, ISP_LOGWARN, swrej, "GA_NXT", + int level; + if (rs1->snscb_cthdr.ct_reason == 9 && + rs1->snscb_cthdr.ct_explanation == 7) + level = ISP_LOGDEBUG0; + else + level = ISP_LOGWARN; + isp_prt(isp, level, swrej, "GA_NXT", rs1->snscb_cthdr.ct_reason, rs1->snscb_cthdr.ct_explanation, portid); FC_SCRATCH_RELEASE(isp); @@ -2424,6 +2433,10 @@ (((u_int32_t) rs1->snscb_port_id[2])); /* + * XXX: We should check to make sure that this entry + * XXX: supports the type(s) we are interested in. + */ + /* * Okay, we now have information about a fabric object. * If it is the type we're interested in, tell the outer layers * about it. The outer layer needs to know: Port ID, WWNN, @@ -2556,7 +2569,13 @@ rs0 = (sns_gid_ft_rsp_t *) ((u_int8_t *)fcp->isp_scratch+IGPOFF); isp_get_gid_ft_response(isp, rs0, rs1, NGENT); if (rs1->snscb_cthdr.ct_response != FS_ACC) { - isp_prt(isp, ISP_LOGWARN, swrej, "GID_FT", + int level; + if (rs1->snscb_cthdr.ct_reason == 9 && + rs1->snscb_cthdr.ct_explanation == 7) + level = ISP_LOGDEBUG0; + else + level = ISP_LOGWARN; + isp_prt(isp, level, swrej, "GID_FT", rs1->snscb_cthdr.ct_reason, rs1->snscb_cthdr.ct_explanation, 0); FC_SCRATCH_RELEASE(isp); @@ -2791,6 +2810,12 @@ } FC_SCRATCH_RELEASE(isp); + /* + * XXX: Workaround for some bogus fabric registrants + */ + if (ftype) { + (void) isp_scan_fabric(isp, 0); + } fcp->isp_loopstate = LOOP_FSCAN_DONE; return (0); } @@ -3023,7 +3048,7 @@ return (CMD_RQLATER); } if (fcp->isp_fwstate != FW_READY || - fcp->isp_loopstate < LOOP_PDB_RCVD) { + fcp->isp_loopstate < LOOP_FSCAN_DONE) { return (CMD_RQLATER); } } @@ -3199,7 +3224,7 @@ XS_SETERR(xs, HBA_NOERROR); isp_prt(isp, ISP_LOGDEBUG2, "START cmd for %d.%d.%d cmd 0x%x datalen %ld", - XS_CHANNEL(xs), target, XS_LUN(xs), XS_CDBP(xs)[0], + XS_CHANNEL(xs), XS_TGT(xs), XS_LUN(xs), XS_CDBP(xs)[0], (long) XS_XFRLEN(xs)); ISP_ADD_REQUEST(isp, nxti); isp->isp_nactive++; @@ -3665,11 +3690,15 @@ * Only whine if this isn't the expected fallout of * aborting the command. */ - if (sp->req_header.rqs_entry_type != RQSTYPE_RESPONSE || - ts != RQCS_ABORTED) { + if (sp->req_header.rqs_entry_type != RQSTYPE_RESPONSE) { + isp_prt(isp, ISP_LOGERR, + "cannot find handle 0x%x (type 0x%x)", + sp->req_handle, + sp->req_header.rqs_entry_type); + } else if (ts != RQCS_ABORTED) { isp_prt(isp, ISP_LOGERR, - "cannot find handle 0x%x in xflist", - sp->req_handle); + "cannot find handle 0x%x (status 0x%x)", + sp->req_handle, ts); } WRITE_RESPONSE_QUEUE_OUT_POINTER(isp, optr); continue; @@ -3839,6 +3868,7 @@ static int isp_parse_async(struct ispsoftc *isp, u_int16_t mbox) { + int rval = 0; int bus; if (IS_DUALBUS(isp)) { @@ -3852,14 +3882,17 @@ case ASYNC_BUS_RESET: isp->isp_sendmarker |= (1 << bus); #ifdef ISP_TARGET_MODE - isp_target_async(isp, bus, mbox); + if (isp_target_async(isp, bus, mbox)) + rval = -1; #endif isp_async(isp, ISPASYNC_BUS_RESET, &bus); break; case ASYNC_SYSTEM_ERROR: isp_async(isp, ISPASYNC_FW_CRASH, NULL); - /* no point continuing after this */ - return (-1); + isp_reinit(isp); + isp_async(isp, ISPASYNC_FW_RESTARTED, NULL); + rval = -1; + break; case ASYNC_RQS_XFER_ERR: isp_prt(isp, ISP_LOGERR, "Request Queue Transfer Error"); @@ -3883,7 +3916,8 @@ "timeout initiated SCSI bus reset of bus %d", bus); isp->isp_sendmarker |= (1 << bus); #ifdef ISP_TARGET_MODE - isp_target_async(isp, bus, mbox); + if (isp_target_async(isp, bus, mbox)) + rval = -1; #endif break; @@ -3891,7 +3925,8 @@ isp_prt(isp, ISP_LOGINFO, "device reset on bus %d", bus); isp->isp_sendmarker |= (1 << bus); #ifdef ISP_TARGET_MODE - isp_target_async(isp, bus, mbox); + if (isp_target_async(isp, bus, mbox)) + rval = -1; #endif break; @@ -3977,19 +4012,19 @@ break; case ASYNC_CTIO_DONE: + { #ifdef ISP_TARGET_MODE - /* - * Bus gets overloaded with the handle. Dual bus - * cards don't put bus# into the handle. - */ - isp_target_async(isp, ((ISP_READ(isp, OUTMAILBOX2) << 16) | - ISP_READ(isp, OUTMAILBOX1)), mbox); + int handle = + (ISP_READ(isp, OUTMAILBOX2) << 16) | + (ISP_READ(isp, OUTMAILBOX1)); + if (isp_target_async(isp, handle, mbox)) + rval = -1; #else isp_prt(isp, ISP_LOGINFO, "Fast Posting CTIO done"); #endif isp->isp_fphccmplt++; /* count it as a fast posting intr */ - return (0); - + break; + } case ASYNC_LIP_F8: case ASYNC_LIP_OCCURRED: FCPARAM(isp)->isp_lipseq = @@ -4000,7 +4035,8 @@ isp_mark_getpdb_all(isp); isp_async(isp, ISPASYNC_LIP, NULL); #ifdef ISP_TARGET_MODE - isp_target_async(isp, bus, mbox); >>> TRUNCATED FOR MAIL (1000 lines) <<< To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200206190704.g5J74U310720>