Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Oct 2003 13:21:34 -0800 (PST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 40645 for review
Message-ID:  <200310272121.h9RLLY3p022849@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=40645

Change 40645 by jhb@jhb_laptop on 2003/10/27 13:21:16

	IFC @40644.

Affected files ...

.. //depot/projects/smpng/sys/amd64/include/stdarg.h#3 integrate
.. //depot/projects/smpng/sys/amd64/include/sysarch.h#3 integrate
.. //depot/projects/smpng/sys/boot/forth/beastie.4th#4 integrate
.. //depot/projects/smpng/sys/cam/cam_periph.c#14 integrate
.. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#21 integrate
.. //depot/projects/smpng/sys/conf/NOTES#56 integrate
.. //depot/projects/smpng/sys/conf/files#88 integrate
.. //depot/projects/smpng/sys/conf/files.ia64#35 integrate
.. //depot/projects/smpng/sys/conf/kern.pre.mk#24 integrate
.. //depot/projects/smpng/sys/conf/options#63 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi.c#50 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_acad.c#13 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_button.c#11 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_cmbat.c#16 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_lid.c#9 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#19 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpivar.h#30 integrate
.. //depot/projects/smpng/sys/dev/aic7xxx/ahc_pci.c#13 integrate
.. //depot/projects/smpng/sys/dev/aic7xxx/ahd_pci.c#11 integrate
.. //depot/projects/smpng/sys/dev/dcons/dcons.c#1 branch
.. //depot/projects/smpng/sys/dev/dcons/dcons.h#1 branch
.. //depot/projects/smpng/sys/dev/dcons/dcons_crom.c#1 branch
.. //depot/projects/smpng/sys/dev/drm/ati_pcigart.h#3 integrate
.. //depot/projects/smpng/sys/dev/drm/drm.h#4 integrate
.. //depot/projects/smpng/sys/dev/drm/drmP.h#6 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_auth.h#4 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_bufs.h#5 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_context.h#6 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_dma.h#6 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_drv.h#11 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_fops.h#7 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_ioctl.h#5 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_irq.h#1 branch
.. //depot/projects/smpng/sys/dev/drm/drm_memory.h#8 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_memory_debug.h#2 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_os_freebsd.h#11 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_pci.h#2 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_sysctl.h#5 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_vm.h#7 integrate
.. //depot/projects/smpng/sys/dev/drm/mga.h#4 integrate
.. //depot/projects/smpng/sys/dev/drm/mga_dma.c#6 integrate
.. //depot/projects/smpng/sys/dev/drm/mga_drv.c#5 integrate
.. //depot/projects/smpng/sys/dev/drm/mga_irq.c#3 integrate
.. //depot/projects/smpng/sys/dev/drm/r128.h#4 integrate
.. //depot/projects/smpng/sys/dev/drm/r128_cce.c#6 integrate
.. //depot/projects/smpng/sys/dev/drm/r128_drv.c#5 integrate
.. //depot/projects/smpng/sys/dev/drm/r128_drv.h#6 integrate
.. //depot/projects/smpng/sys/dev/drm/r128_irq.c#3 integrate
.. //depot/projects/smpng/sys/dev/drm/r128_state.c#6 integrate
.. //depot/projects/smpng/sys/dev/drm/radeon.h#6 integrate
.. //depot/projects/smpng/sys/dev/drm/radeon_cp.c#7 integrate
.. //depot/projects/smpng/sys/dev/drm/radeon_drv.c#6 integrate
.. //depot/projects/smpng/sys/dev/drm/radeon_irq.c#4 integrate
.. //depot/projects/smpng/sys/dev/drm/sis.h#2 integrate
.. //depot/projects/smpng/sys/dev/drm/sis_drv.c#2 integrate
.. //depot/projects/smpng/sys/dev/drm/sis_mm.c#2 integrate
.. //depot/projects/smpng/sys/dev/drm/tdfx.h#3 integrate
.. //depot/projects/smpng/sys/dev/drm/tdfx_drv.c#5 integrate
.. //depot/projects/smpng/sys/dev/ep/if_ep.c#12 integrate
.. //depot/projects/smpng/sys/dev/ep/if_ep_eisa.c#7 integrate
.. //depot/projects/smpng/sys/dev/ep/if_ep_isa.c#8 integrate
.. //depot/projects/smpng/sys/dev/ep/if_ep_mca.c#6 integrate
.. //depot/projects/smpng/sys/dev/ep/if_ep_pccard.c#12 integrate
.. //depot/projects/smpng/sys/dev/ep/if_epreg.h#4 integrate
.. //depot/projects/smpng/sys/dev/ep/if_epvar.h#5 integrate
.. //depot/projects/smpng/sys/dev/ex/if_ex_pccard.c#5 integrate
.. //depot/projects/smpng/sys/dev/firewire/firewire.c#26 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwdev.c#12 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwmem.c#13 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#19 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwohcivar.h#7 integrate
.. //depot/projects/smpng/sys/dev/hatm/if_hatm.c#8 integrate
.. //depot/projects/smpng/sys/dev/hatm/if_hatm_intr.c#4 integrate
.. //depot/projects/smpng/sys/dev/ncv/ncr53c500_pccard.c#11 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccard.c#25 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccarddevs#32 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccarddevs.h#32 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccardvar.h#16 integrate
.. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#35 integrate
.. //depot/projects/smpng/sys/dev/puc/puc_pccard.c#4 integrate
.. //depot/projects/smpng/sys/dev/puc/pucdata.c#20 integrate
.. //depot/projects/smpng/sys/dev/sn/if_sn.c#9 integrate
.. //depot/projects/smpng/sys/dev/sn/if_sn_pccard.c#9 integrate
.. //depot/projects/smpng/sys/dev/sn/if_snreg.h#2 integrate
.. //depot/projects/smpng/sys/dev/sn/if_snvar.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/if_cue.c#18 integrate
.. //depot/projects/smpng/sys/dev/vx/if_vx.c#12 integrate
.. //depot/projects/smpng/sys/dev/vx/if_vx_eisa.c#5 integrate
.. //depot/projects/smpng/sys/dev/vx/if_vx_pci.c#5 integrate
.. //depot/projects/smpng/sys/dev/vx/if_vxreg.h#3 integrate
.. //depot/projects/smpng/sys/dev/vx/if_vxvar.h#1 branch
.. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#9 integrate
.. //depot/projects/smpng/sys/geom/geom_ccd.c#7 integrate
.. //depot/projects/smpng/sys/geom/geom_fox.c#3 integrate
.. //depot/projects/smpng/sys/i386/acpica/acpi_wakecode.S#4 integrate
.. //depot/projects/smpng/sys/i386/conf/NOTES#65 integrate
.. //depot/projects/smpng/sys/i386/i386/mp_clock.c#10 integrate
.. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#54 integrate
.. //depot/projects/smpng/sys/i386/i386/pmap.c#49 integrate
.. //depot/projects/smpng/sys/ia64/disasm/disasm.h#1 branch
.. //depot/projects/smpng/sys/ia64/disasm/disasm_decode.c#1 branch
.. //depot/projects/smpng/sys/ia64/disasm/disasm_extract.c#1 branch
.. //depot/projects/smpng/sys/ia64/disasm/disasm_format.c#1 branch
.. //depot/projects/smpng/sys/ia64/disasm/disasm_int.h#1 branch
.. //depot/projects/smpng/sys/ia64/ia64/db_disasm.c#7 delete
.. //depot/projects/smpng/sys/ia64/ia64/db_interface.c#17 integrate
.. //depot/projects/smpng/sys/ia64/ia64/db_trace.c#13 integrate
.. //depot/projects/smpng/sys/ia64/ia64/machdep.c#67 integrate
.. //depot/projects/smpng/sys/ia64/ia64/support.S#3 integrate
.. //depot/projects/smpng/sys/ia64/ia64/sys_machdep.c#5 integrate
.. //depot/projects/smpng/sys/ia64/ia64/trap.c#57 integrate
.. //depot/projects/smpng/sys/ia64/ia64/unaligned.c#5 integrate
.. //depot/projects/smpng/sys/ia64/include/inst.h#3 delete
.. //depot/projects/smpng/sys/ia64/include/md_var.h#12 integrate
.. //depot/projects/smpng/sys/ia64/include/proc.h#8 integrate
.. //depot/projects/smpng/sys/ia64/include/sysarch.h#2 integrate
.. //depot/projects/smpng/sys/isa/fd.c#26 integrate
.. //depot/projects/smpng/sys/kern/kern_alq.c#6 integrate
.. //depot/projects/smpng/sys/kern/kern_intr.c#33 integrate
.. //depot/projects/smpng/sys/kern/kern_prot.c#75 integrate
.. //depot/projects/smpng/sys/kern/kern_resource.c#39 integrate
.. //depot/projects/smpng/sys/kern/kern_sig.c#77 integrate
.. //depot/projects/smpng/sys/kern/kern_time.c#26 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#17 integrate
.. //depot/projects/smpng/sys/kern/subr_bus.c#27 integrate
.. //depot/projects/smpng/sys/kern/vfs_aio.c#43 integrate
.. //depot/projects/smpng/sys/kern/vfs_bio.c#51 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#60 integrate
.. //depot/projects/smpng/sys/modules/Makefile#63 integrate
.. //depot/projects/smpng/sys/modules/dcons/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/dcons_crom/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/netgraph/atm/Makefile#3 integrate
.. //depot/projects/smpng/sys/modules/netgraph/atm/atmbase/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/netgraph/atm/sscfu/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/netgraph/atm/sscop/Makefile#1 branch
.. //depot/projects/smpng/sys/net/if.c#37 integrate
.. //depot/projects/smpng/sys/net/if_ethersubr.c#38 integrate
.. //depot/projects/smpng/sys/net/if_fddisubr.c#14 integrate
.. //depot/projects/smpng/sys/net/if_loop.c#21 integrate
.. //depot/projects/smpng/sys/net/if_tun.c#25 integrate
.. //depot/projects/smpng/sys/net/if_types.h#2 integrate
.. //depot/projects/smpng/sys/net/if_var.h#17 integrate
.. //depot/projects/smpng/sys/netatalk/aarp.c#8 integrate
.. //depot/projects/smpng/sys/netgraph/atm/ng_sscfu.h#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/ng_sscop.h#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/ngatmbase.c#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/ngatmbase.h#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/sscfu/ng_sscfu.c#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/sscfu/ng_sscfu_cust.h#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/sscop/ng_sscop.c#1 branch
.. //depot/projects/smpng/sys/netgraph/atm/sscop/ng_sscop_cust.h#1 branch
.. //depot/projects/smpng/sys/netinet/icmp6.h#7 integrate
.. //depot/projects/smpng/sys/netinet/in.h#24 integrate
.. //depot/projects/smpng/sys/netinet/in_pcb.h#22 integrate
.. //depot/projects/smpng/sys/netinet/ip6.h#4 integrate
.. //depot/projects/smpng/sys/netinet/ip_mroute.c#26 integrate
.. //depot/projects/smpng/sys/netinet/tcp_subr.c#35 integrate
.. //depot/projects/smpng/sys/netinet6/frag6.c#5 integrate
.. //depot/projects/smpng/sys/netinet6/icmp6.c#17 integrate
.. //depot/projects/smpng/sys/netinet6/in6.h#11 integrate
.. //depot/projects/smpng/sys/netinet6/in6_pcb.c#23 integrate
.. //depot/projects/smpng/sys/netinet6/in6_src.c#11 integrate
.. //depot/projects/smpng/sys/netinet6/in6_var.h#7 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_input.c#24 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_output.c#19 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_var.h#8 integrate
.. //depot/projects/smpng/sys/netinet6/mld6.c#6 integrate
.. //depot/projects/smpng/sys/netinet6/nd6.c#14 integrate
.. //depot/projects/smpng/sys/netinet6/nd6.h#7 integrate
.. //depot/projects/smpng/sys/netinet6/nd6_rtr.c#9 integrate
.. //depot/projects/smpng/sys/netinet6/raw_ip6.c#17 integrate
.. //depot/projects/smpng/sys/netinet6/route6.c#5 integrate
.. //depot/projects/smpng/sys/netinet6/udp6_output.c#12 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#30 integrate
.. //depot/projects/smpng/sys/pci/agp.c#15 integrate
.. //depot/projects/smpng/sys/pci/agp_i810.c#12 integrate
.. //depot/projects/smpng/sys/pci/if_dc.c#46 integrate
.. //depot/projects/smpng/sys/security/mac/mac_internal.h#2 integrate
.. //depot/projects/smpng/sys/security/mac/mac_net.c#2 integrate
.. //depot/projects/smpng/sys/security/mac/mac_pipe.c#2 integrate
.. //depot/projects/smpng/sys/security/mac/mac_process.c#2 integrate
.. //depot/projects/smpng/sys/security/mac/mac_vfs.c#2 integrate
.. //depot/projects/smpng/sys/sys/agpio.h#4 integrate
.. //depot/projects/smpng/sys/sys/bus.h#13 integrate
.. //depot/projects/smpng/sys/sys/interrupt.h#9 integrate
.. //depot/projects/smpng/sys/sys/proc.h#101 integrate
.. //depot/projects/smpng/sys/sys/time.h#13 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#37 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_snapshot.c#31 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_softdep.c#29 integrate
.. //depot/projects/smpng/sys/vm/swap_pager.c#34 integrate
.. //depot/projects/smpng/sys/vm/vm_object.c#45 integrate
.. //depot/projects/smpng/sys/vm/vm_page.h#21 integrate
.. //depot/projects/smpng/sys/vm/vm_pageout.c#39 integrate
.. //depot/projects/smpng/sys/vm/vm_pager.h#9 integrate
.. //depot/projects/smpng/sys/vm/vnode_pager.c#36 integrate

Differences ...

==== //depot/projects/smpng/sys/amd64/include/stdarg.h#3 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.5 2003/05/10 00:55:15 peter Exp $
+ * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.6 2003/10/24 02:50:39 peter Exp $
  */
 
 #ifndef _MACHINE_STDARG_H_
@@ -46,9 +46,12 @@
 #define	va_arg(ap, type) \
 	__builtin_va_arg((ap), type)
 
+#define	__va_copy(dest, src) \
+	__builtin_va_copy((dest), (src))
+
 #if __ISO_C_VISIBLE >= 1999
 #define	va_copy(dest, src) \
-	__builtin_va_copy((dest), (src))
+	__va_copy(dest, src)
 #endif
 
 #define	va_end(ap) \

==== //depot/projects/smpng/sys/amd64/include/sysarch.h#3 (text+ko) ====

@@ -30,7 +30,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/include/sysarch.h,v 1.19 2003/05/12 02:37:29 peter Exp $
+ * $FreeBSD: src/sys/amd64/include/sysarch.h,v 1.21 2003/10/23 06:06:14 peter Exp $
  */
 
 /*
@@ -39,22 +39,21 @@
 #ifndef _MACHINE_SYSARCH_H_
 #define _MACHINE_SYSARCH_H_
 
-#define	AMD64_GET_FSBASE	0
-#define	AMD64_SET_FSBASE	1
-#define	AMD64_GET_GSBASE	2
-#define	AMD64_SET_GSBASE	3
+/* Leave space for 0-127 for to avoid translating syscalls */
+#define	AMD64_GET_FSBASE	128
+#define	AMD64_SET_FSBASE	129
+#define	AMD64_GET_GSBASE	130
+#define	AMD64_SET_GSBASE	131
 
-#if 0 /* these wrappers need to be implemented in libc first */
 #ifndef _KERNEL
 #include <sys/cdefs.h>
 
 __BEGIN_DECLS
-unsigned long amd64_get_fsbase(void);
-unsigned long amd64_set_fsbase(unsigned long);
-unsigned long amd64_get_gsbase(void);
-unsigned long amd64_set_gsbase(unsigned long);
+int amd64_get_fsbase(void **);
+int amd64_set_fsbase(void *);
+int amd64_get_gsbase(void **);
+int amd64_set_gsbase(void *);
 __END_DECLS
 #endif
-#endif
 
 #endif /* !_MACHINE_SYSARCH_H_ */

==== //depot/projects/smpng/sys/boot/forth/beastie.4th#4 (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/boot/forth/beastie.4th,v 1.5 2003/09/13 18:35:01 scottl Exp $
+\ $FreeBSD: src/sys/boot/forth/beastie.4th,v 1.6 2003/10/27 16:39:49 scottl Exp $
 
 marker task-beastie.4th
 
@@ -209,9 +209,9 @@
 		dup tkey
 		0 25 at-xy
 		dup 32 = if nip 0 swap then
-		dup -1 = if s" boot" evaluate then
-		dup 13 = if s" boot" evaluate then
-		dup bootkey @ = if s" boot" evaluate then
+		dup -1 = if 0 boot then
+		dup 13 = if 0 boot then
+		dup bootkey @ = if 0 boot then
 		dup bootacpikey @ = if
 			acpienabled? if
 				s" acpi_load" unsetenv
@@ -221,7 +221,7 @@
 				s" YES" s" acpi_load" setenv
 				s" 0" s" hint.acpi.0.disabled" setenv
 			then
-			s" boot" evaluate
+			0 boot
 		then
 		dup bootsafekey @ = if
 			s" arch-i386" environment? if
@@ -233,15 +233,15 @@
 			s" 0" s" hw.ata.atapi_dma" setenv
 			s" 0" s" hw.ata.wc" setenv
 			s" 0" s" hw.eisa_slots" setenv
-			s" boot" evaluate
+			0 boot
 		then
 		dup bootverbosekey @ = if
 			s" YES" s" boot_verbose" setenv
-			s" boot" evaluate
+			0 boot
 		then
 		dup bootsinglekey @ = if
 			s" YES" s" boot_single" setenv
-			s" boot" evaluate
+			0 boot
 		then
 		dup escapekey @ = if
 			2drop

==== //depot/projects/smpng/sys/cam/cam_periph.c#14 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.54 2003/10/18 11:01:11 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.55 2003/10/27 06:15:54 ken Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -994,14 +994,26 @@
 		scsi_cmd = (struct scsi_start_stop_unit *)
 				&done_ccb->csio.cdb_io.cdb_bytes;
 		if (sense != 0) {
+			struct ccb_getdev cgd;
 			struct scsi_sense_data *sense;
 			int    error_code, sense_key, asc, ascq;	
+			scsi_sense_action err_action;
 
 			sense = &done_ccb->csio.sense_data;
 			scsi_extract_sense(sense, &error_code, 
 					   &sense_key, &asc, &ascq);
 
 			/*
+			 * Grab the inquiry data for this device.
+			 */
+			xpt_setup_ccb(&cgd.ccb_h, done_ccb->ccb_h.path,
+				      /*priority*/ 1);
+			cgd.ccb_h.func_code = XPT_GDEV_TYPE;
+			xpt_action((union ccb *)&cgd);
+			err_action = scsi_error_action(&done_ccb->csio,
+						       &cgd.inq_data, 0);
+
+			/*
 	 		 * If the error is "invalid field in CDB", 
 			 * and the load/eject flag is set, turn the 
 			 * flag off and try again.  This is just in 
@@ -1028,12 +1040,15 @@
 
 				xpt_action(done_ccb);
 
-			} else if (done_ccb->ccb_h.retry_count > 1) {
+			} else if ((done_ccb->ccb_h.retry_count > 1)
+				&& ((err_action & SS_MASK) != SS_FAIL)) {
+
 				/*
 				 * In this case, the error recovery
 				 * command failed, but we've got 
 				 * some retries left on it.  Give
-				 * it another try.
+				 * it another try unless this is an
+				 * unretryable error.
 				 */
 
 				/* set the timeout to .5 sec */

==== //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#21 (text+ko) ====

@@ -46,7 +46,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.87 2003/10/18 17:24:05 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.88 2003/10/27 06:15:55 ken Exp $");
 
 #include "opt_cd.h"
 
@@ -2856,20 +2856,6 @@
              
 	ccb = cdgetccb(periph, /* priority */ 1);
 
-	scsi_test_unit_ready(&ccb->csio, 0, cddone,
-	    MSG_SIMPLE_Q_TAG, SSD_FULL_SIZE, 1000);
-	ccb->ccb_h.ccb_bp = NULL;
-
-	error = cam_periph_runccb(ccb, NULL,
-				  /*cam_flags*/0,
-				  /*sense_flags*/SF_RETRY_UA,
-				  softc->disk.d_devstat);
-
-	if ((ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) {
-		xpt_release_ccb(ccb);
-		return (ENXIO);
-	}
-
 	rcap_buf = malloc(sizeof(struct scsi_read_capacity_data), 
 			  M_TEMP, M_WAITOK);
 

==== //depot/projects/smpng/sys/conf/NOTES#56 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1179 2003/10/22 22:27:49 njl Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1182 2003/10/27 11:19:08 harti Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -29,11 +29,11 @@
 # comment on the same line if possible.  Very detailed descriptions of
 # devices and subsystems belong in manpages.
 #
-# A space followed by a tab separates 'option' from an option name.  Two
+# A space followed by a tab separates 'options' from an option name.  Two
 # spaces followed by a tab separate 'device' from a device name.  Comments
 # after an option or device should use one space after the comment character.
 # To comment out a negative option that disables code and thus should not be
-# enabled for LINT builds, precede 'option' with "#!".
+# enabled for LINT builds, precede 'options' with "#!".
 #
 
 #
@@ -452,7 +452,10 @@
 options		NETGRAPH_ATM_ATMPIF
 
 # NgATM - Netgraph ATM
-options		NGATM_ATM
+options 	NGATM_ATM
+options 	NGATM_ATMBASE
+options 	NGATM_SSCOP
+options 	NGATM_SSCFU
 
 device		mn	# Munich32x/Falc54 Nx64kbit/sec cards.
 device		lmc	# tulip based LanMedia WAN cards
@@ -2241,11 +2244,21 @@
 options		UVSCOM_DEFAULT_OPKTSIZE=8	# default output packet size
 
 #####################################################################
-# Firewire support
+# FireWire support
 
-device		firewire	# Firewire bus code
+device		firewire	# FireWire bus code
 device		sbp		# SCSI over Firewire (Requires scbus and da)
-device		fwe		# Ethernet over Firewire (non-standard!)
+device		fwe		# Ethernet over FireWire (non-standard!)
+
+#####################################################################
+# dcons support (Dumb Console Device)
+
+device		dcons			# dumb console driver
+device		dcons_crom		# FireWire attachment
+options		DCONS_BUF_SIZE=16384	# buffer size
+options		DCONS_POLL_HZ=100	# polling rate
+options		DCONS_FORCE_CONSOLE=0	# force to be the primary console
+options		DCONS_FORCE_GDB=1	# force to be the gdb device
 
 #####################################################################
 # crypto subsystem

==== //depot/projects/smpng/sys/conf/files#88 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.837 2003/10/22 20:39:33 rwatson Exp $
+# $FreeBSD: src/sys/conf/files,v 1.841 2003/10/27 11:19:08 harti Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -351,6 +351,8 @@
 dev/cs/if_cs_isa.c	optional cs isa
 dev/cs/if_cs_pccard.c	optional cs card
 dev/cs/if_cs_pccard.c	optional cs pccard
+dev/dcons/dcons.c	optional dcons
+dev/dcons/dcons_crom.c	optional dcons_crom
 dev/digi/digi.c		optional digi
 dev/digi/digi_isa.c	optional digi isa
 dev/digi/digi_pci.c	optional digi pci
@@ -1368,7 +1370,13 @@
 netatm/uni/unisig_vc_state.c	optional atm_uni atm_core
 netgraph/atm/atmpif/ng_atmpif.c	optional netgraph_atm_atmpif
 netgraph/atm/atmpif/ng_atmpif_harp.c	optional netgraph_atm_atmpif
-netgraph/atm/ng_atm.c	optional ngatm_atm
+netgraph/atm/ngatmbase.c			optional ngatm_atmbase
+contrib/ngatm/netnatm/misc/unimsg_common.c	optional ngatm_atmbase
+netgraph/atm/ng_atm.c		optional ngatm_atm
+netgraph/atm/sscfu/ng_sscfu.c		optional ngatm_sscfu
+contrib/ngatm/netnatm/saal/saal_sscfu.c	optional ngatm_sscfu
+netgraph/atm/sscop/ng_sscop.c		optional ngatm_sscop
+contrib/ngatm/netnatm/saal/saal_sscop.c	optional ngatm_sscop
 netgraph/ng_UI.c	optional netgraph_UI
 netgraph/ng_async.c	optional netgraph_async
 netgraph/ng_base.c	optional netgraph

==== //depot/projects/smpng/sys/conf/files.ia64#35 (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.ia64,v 1.59 2003/09/20 19:27:48 marcel Exp $
+# $FreeBSD: src/sys/conf/files.ia64,v 1.61 2003/10/24 06:48:41 marcel Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -80,6 +80,9 @@
 ia64/acpica/acpi_machdep.c	optional	acpi
 ia64/acpica/acpi_wakeup.c	optional	acpi
 ia64/acpica/madt.c		optional	acpi
+ia64/disasm/disasm_decode.c	standard
+ia64/disasm/disasm_extract.c	standard
+ia64/disasm/disasm_format.c	standard
 ia64/ia32/ia32_misc.c		optional	ia32
 ia64/ia32/ia32_sysent.c		optional	ia32
 ia64/ia32/ia32_sysvec.c		optional	ia32
@@ -89,7 +92,6 @@
 ia64/ia64/clock_if.m		standard
 ia64/ia64/context.S		standard
 ia64/ia64/critical.c		standard
-ia64/ia64/db_disasm.c		optional	ddb
 ia64/ia64/db_interface.c	optional	ddb
 ia64/ia64/db_trace.c		optional	ddb
 ia64/ia64/dump_machdep.c	standard

==== //depot/projects/smpng/sys/conf/kern.pre.mk#24 (text+ko) ====

@@ -3,7 +3,7 @@
 # Unified Makefile for building kernels.  This includes all the definitions
 # that need to be included before %BEFORE_DEPEND
 #
-# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.34 2003/08/22 15:41:44 imp Exp $
+# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.35 2003/10/27 11:19:08 harti Exp $
 #
 
 # Can be overridden by makeoptions or /etc/make.conf
@@ -35,6 +35,9 @@
 # ... and the same for Atheros HAL
 INCLUDES+= -I$S/contrib/dev/ath -I$S/contrib/dev/ath/freebsd
 
+# ... and the same for the NgATM stuff
+INCLUDES+= -I$S/contrib/ngatm
+
 COPTS=	${INCLUDES} -D_KERNEL -include opt_global.h
 CFLAGS=	${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -fno-common
 

==== //depot/projects/smpng/sys/conf/options#63 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/options,v 1.416 2003/10/22 22:27:49 njl Exp $
+# $FreeBSD: src/sys/conf/options,v 1.418 2003/10/27 11:19:08 harti Exp $
 #
 #        On the handling of kernel options
 #
@@ -404,6 +404,9 @@
 
 # NgATM options
 NGATM_ATM		opt_netgraph.h
+NGATM_ATMBASE		opt_netgraph.h
+NGATM_SSCOP		opt_netgraph.h
+NGATM_SSCFU		opt_netgraph.h
 
 # DRM options
 DRM_DEBUG		opt_drm.h
@@ -673,3 +676,9 @@
 AH_DEBUG		opt_ah.h
 AH_DEBUG_ALQ		opt_ah.h
 AH_ASSERT		opt_ah.h
+
+# dcons options 
+DCONS_BUF_SIZE		opt_dcons.h
+DCONS_POLL_HZ		opt_dcons.h
+DCONS_FORCE_CONSOLE	opt_dcons.h
+DCONS_FORCE_GDB		opt_dcons.h

==== //depot/projects/smpng/sys/dev/acpica/acpi.c#50 (text+ko) ====

@@ -26,7 +26,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/sys/dev/acpica/acpi.c,v 1.105 2003/10/19 05:56:59 njl Exp $
+ *	$FreeBSD: src/sys/dev/acpica/acpi.c,v 1.106 2003/10/25 05:03:24 njl Exp $
  */
 
 #include "opt_acpi.h"
@@ -51,6 +51,7 @@
 #include "acpi.h"
 #include <dev/acpica/acpivar.h>
 #include <dev/acpica/acpiio.h>
+#include <contrib/dev/acpica/acnamesp.h>
 
 MALLOC_DEFINE(M_ACPIDEV, "acpidev", "ACPI devices");
 
@@ -2054,6 +2055,27 @@
     return (error);
 }
 
+/* Inform devctl(4) when we receive a Notify. */
+void
+acpi_UserNotify(const char *subsystem, ACPI_HANDLE h, uint8_t notify)
+{
+    char		notify_buf[16];
+    ACPI_BUFFER		handle_buf;
+    ACPI_STATUS		status;
+
+    if (subsystem == NULL)
+	return;
+
+    handle_buf.Pointer = NULL;
+    handle_buf.Length = ACPI_ALLOCATE_BUFFER;
+    status = AcpiNsHandleToPathname(h, &handle_buf);
+    if (ACPI_FAILURE(status))
+	return;
+    snprintf(notify_buf, sizeof(notify_buf), "notify=0x%02x", notify);
+    devctl_notify("ACPI", subsystem, handle_buf.Pointer, notify_buf);
+    AcpiOsFree(handle_buf.Pointer);
+}
+
 #ifdef ACPI_DEBUG
 /*
  * Support for parsing debug options from the kernel environment.

==== //depot/projects/smpng/sys/dev/acpica/acpi_acad.c#13 (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/acpica/acpi_acad.c,v 1.19 2003/09/26 05:24:55 njl Exp $
+ * $FreeBSD: src/sys/dev/acpica/acpi_acad.c,v 1.20 2003/10/25 05:03:24 njl Exp $
  */
 
 #include "opt_acpi.h"
@@ -39,7 +39,7 @@
 #include <sys/conf.h>
 #include <sys/power.h>
 
-#include  "acpi.h"
+#include "acpi.h"
 #include <dev/acpica/acpivar.h>
 #include <dev/acpica/acpiio.h>
  
@@ -108,6 +108,8 @@
 				POWER_PROFILE_ECONOMY);
 	ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev),
 		    "%s Line\n", sc->status ? "On" : "Off");
+
+	acpi_UserNotify("ACAD", h, sc->status);
     }
 }
 

==== //depot/projects/smpng/sys/dev/acpica/acpi_button.c#11 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/sys/dev/acpica/acpi_button.c,v 1.16 2003/09/22 04:50:29 njl Exp $
+ *	$FreeBSD: src/sys/dev/acpica/acpi_button.c,v 1.17 2003/10/25 05:03:24 njl Exp $
  */
 
 #include "opt_acpi.h"
@@ -175,6 +175,8 @@
     if (acpi_sc == NULL)
 	return_VOID;
 
+    acpi_UserNotify("Button", sc->button_handle, sc->button_type);
+
     switch (sc->button_type) {
     case ACPI_POWER_BUTTON:
 	ACPI_VPRINT(sc->button_dev, acpi_sc, "power button pressed\n");
@@ -202,6 +204,8 @@
     if (acpi_sc == NULL)
 	return_VOID;
 
+    acpi_UserNotify("Button", sc->button_handle, sc->button_type);
+
     switch (sc->button_type) {
     case ACPI_POWER_BUTTON:
 	ACPI_VPRINT(sc->button_dev, acpi_sc, "wakeup by power button\n");

==== //depot/projects/smpng/sys/dev/acpica/acpi_cmbat.c#16 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/dev/acpica/acpi_cmbat.c,v 1.25 2003/09/26 05:24:55 njl Exp $
+ * $FreeBSD: src/sys/dev/acpica/acpi_cmbat.c,v 1.26 2003/10/25 05:03:24 njl Exp $
  */
 
 #include "opt_acpi.h"
@@ -295,6 +295,8 @@
     if ((sc = device_get_softc(dev)) == NULL)
 	return;
 
+    acpi_UserNotify("CMBAT", h, notify);
+
     switch (notify) {
     case ACPI_NOTIFY_DEVICE_CHECK:
     case ACPI_BATTERY_BST_CHANGE:

==== //depot/projects/smpng/sys/dev/acpica/acpi_lid.c#9 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.14 2003/08/28 16:06:30 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.15 2003/10/25 05:03:24 njl Exp $");
 
 #include "opt_acpi.h"
 #include <sys/param.h>
@@ -54,7 +54,8 @@
 static int	acpi_lid_suspend(device_t dev);
 static int	acpi_lid_resume(device_t dev);
 static void	acpi_lid_notify_status_changed(void *arg);
-static void 	acpi_lid_notify_handler(ACPI_HANDLE h,UINT32 notify, void *context);
+static void 	acpi_lid_notify_handler(ACPI_HANDLE h, UINT32 notify,
+					void *context);
 
 static device_method_t acpi_lid_methods[] = {
     /* Device interface */
@@ -149,6 +150,8 @@
     ACPI_VPRINT(sc->lid_dev, acpi_sc, "Lid %s\n",
 		sc->lid_status ? "opened" : "closed");
 
+    acpi_UserNotify("Lid", sc->lid_handle, sc->lid_status);
+
     if (sc->lid_status == 0)
 	EVENTHANDLER_INVOKE(acpi_sleep_event, acpi_sc->acpi_lid_switch_sx);
     else
@@ -178,4 +181,3 @@
 
     return_VOID;
 }
-

==== //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#19 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.32 2003/09/26 05:24:55 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.33 2003/10/25 05:03:24 njl Exp $");
 
 #include "opt_acpi.h"
 #include <sys/param.h>
@@ -727,6 +727,8 @@
 	break;
     }
 
+    acpi_UserNotify("Thermal", h, notify);
+
     return_VOID;
 }
 

==== //depot/projects/smpng/sys/dev/acpica/acpivar.h#30 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.45 2003/09/10 22:06:41 marcel Exp $
+ *	$FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.46 2003/10/25 05:03:24 njl Exp $
  */
 
 #include "bus_if.h"
@@ -188,6 +188,8 @@
 extern ACPI_STATUS	acpi_SetSleepState(struct acpi_softc *sc, int state);
 extern ACPI_STATUS	acpi_Enable(struct acpi_softc *sc);
 extern ACPI_STATUS	acpi_Disable(struct acpi_softc *sc);
+extern void		acpi_UserNotify(const char *subsystem, ACPI_HANDLE h,
+					uint8_t notify);
 
 struct acpi_parse_resource_set {
     void	(*set_init)(device_t dev, void **context);

==== //depot/projects/smpng/sys/dev/aic7xxx/ahc_pci.c#13 (text+ko) ====

@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_pci.c,v 1.56 2003/09/02 17:30:34 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_pci.c,v 1.57 2003/10/23 13:42:03 des Exp $");
 
 #include <dev/aic7xxx/aic7xxx_osm.h>
 
@@ -113,7 +113,7 @@
 	error = bus_dma_tag_create(/*parent*/NULL, /*alignment*/1,
 				   /*boundary*/0,
 				   (ahc->flags & AHC_39BIT_ADDRESSING)
-				   ? 0x7FFFFFFFFF
+				   ? 0x7FFFFFFFFFLL
 				   : BUS_SPACE_MAXADDR_32BIT,
 				   /*highaddr*/BUS_SPACE_MAXADDR,
 				   /*filter*/NULL, /*filterarg*/NULL,

==== //depot/projects/smpng/sys/dev/aic7xxx/ahd_pci.c#11 (text+ko) ====

@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahd_pci.c,v 1.11 2003/09/02 17:30:34 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahd_pci.c,v 1.12 2003/10/23 13:42:03 des Exp $");
 
 #include <dev/aic7xxx/aic79xx_osm.h>
 
@@ -116,7 +116,7 @@
 	error = bus_dma_tag_create(/*parent*/NULL, /*alignment*/1,
 				   /*boundary*/0,
 				   (ahd->flags & AHD_39BIT_ADDRESSING)
-				   ? 0x7FFFFFFFFF
+				   ? 0x7FFFFFFFFFLL
 				   : BUS_SPACE_MAXADDR_32BIT,
 				   /*highaddr*/BUS_SPACE_MAXADDR,
 				   /*filter*/NULL, /*filterarg*/NULL,

==== //depot/projects/smpng/sys/dev/drm/ati_pcigart.h#3 (text+ko) ====

@@ -26,7 +26,7 @@
  * Authors:
  *   Gareth Hughes <gareth@valinux.com>
  *
- * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.2 2003/08/19 02:57:31 anholt Exp $
+ * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.3 2003/10/24 01:48:16 anholt Exp $
  */
 
 #include "dev/drm/drmP.h"
@@ -60,7 +60,7 @@
 	}
 
 	address = (long)contigmalloc((1 << ATI_PCIGART_TABLE_ORDER) * PAGE_SIZE, 
-	    DRM(M_DRM), M_WAITOK, 0ul, 0xfffffffful, PAGE_SIZE, 0);
+	    DRM(M_DRM), M_NOWAIT, 0ul, 0xfffffffful, PAGE_SIZE, 0);
 	if ( !address ) {
 		DRM_ERROR( "cannot allocate PCI GART page!\n" );
 		goto done;

==== //depot/projects/smpng/sys/dev/drm/drm.h#4 (text+ko) ====

@@ -30,7 +30,7 @@
  * Acknowledgements:
  * Dec 1999, Richard Henderson <rth@twiddle.net>, move to generic cmpxchg.
  *
- * $FreeBSD: src/sys/dev/drm/drm.h,v 1.4 2003/08/19 02:57:31 anholt Exp $
+ * $FreeBSD: src/sys/dev/drm/drm.h,v 1.5 2003/10/24 01:48:16 anholt Exp $
  */
 
 #ifndef _DRM_H_
@@ -46,7 +46,7 @@
 #define DRM_IOC_READWRITE	_IOC_READ|_IOC_WRITE
 #define DRM_IOC(dir, group, nr, size) _IOC(dir, group, nr, size)
 #elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
-#if defined(__FreeBSD__) && defined(XFree86Server)
+#if defined(__FreeBSD__) && defined(IN_MODULE)
 /* Prevent name collision when including sys/ioccom.h */
 #undef ioctl
 #include <sys/ioccom.h>
@@ -79,10 +79,6 @@
 #define DRM_DEV_GID	 0
 #endif
 
-#if CONFIG_XFREE86_VERSION >= XFREE86_VERSION(4,1,0,0)
-#define DRM_MAJOR       226
-#define DRM_MAX_MINOR   15
-#endif
 #define DRM_NAME	"drm"	  /* Name in kernel, /dev, and /proc	    */
 #define DRM_MIN_ORDER	5	  /* At least 2^5 bytes = 32 bytes	    */
 #define DRM_MAX_ORDER	22	  /* Up to 2^22 bytes = 4MB		    */
@@ -409,6 +405,13 @@
 	unsigned long handle;	/* Used for mapping / unmapping */
 } drm_scatter_gather_t;
 
+typedef struct drm_set_version {
+	int drm_di_major;
+	int drm_di_minor;
+	int drm_dd_major;
+	int drm_dd_minor;
+} drm_set_version_t;
+
 #define DRM_IOCTL_BASE			'd'
 #define DRM_IO(nr)			_IO(DRM_IOCTL_BASE,nr)
 #define DRM_IOR(nr,type)		_IOR(DRM_IOCTL_BASE,nr,type)
@@ -422,6 +425,7 @@
 #define DRM_IOCTL_GET_MAP               DRM_IOWR(0x04, drm_map_t)
 #define DRM_IOCTL_GET_CLIENT            DRM_IOWR(0x05, drm_client_t)
 #define DRM_IOCTL_GET_STATS             DRM_IOR( 0x06, drm_stats_t)
+#define DRM_IOCTL_SET_VERSION		DRM_IOWR(0x07, drm_set_version_t)
 
 #define DRM_IOCTL_SET_UNIQUE		DRM_IOW( 0x10, drm_unique_t)
 #define DRM_IOCTL_AUTH_MAGIC		DRM_IOW( 0x11, drm_auth_t)

==== //depot/projects/smpng/sys/dev/drm/drmP.h#6 (text+ko) ====

@@ -28,7 +28,7 @@
  *    Rickard E. (Rik) Faith <faith@valinux.com>
  *    Gareth Hughes <gareth@valinux.com>
  *
- * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.6 2003/09/09 00:24:31 anholt Exp $
+ * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.7 2003/10/24 01:48:16 anholt Exp $
  */
 
 #ifndef _DRM_P_H_
@@ -50,8 +50,8 @@
 #ifndef __HAVE_DMA
 #define __HAVE_DMA		0
 #endif
-#ifndef __HAVE_DMA_IRQ
-#define __HAVE_DMA_IRQ		0
+#ifndef __HAVE_IRQ
+#define __HAVE_IRQ		0
 #endif
 
 #define DRM_DEBUG_CODE 0	  /* Include debugging code (if > 1, then
@@ -119,15 +119,19 @@
 #define DRM_MIN(a,b) ((a)<(b)?(a):(b))
 #define DRM_MAX(a,b) ((a)>(b)?(a):(b))
 
-#define DRM_LEFTCOUNT(x) (((x)->rp + (x)->count - (x)->wp) % ((x)->count + 1))
-#define DRM_BUFCOUNT(x) ((x)->count - DRM_LEFTCOUNT(x))
-#define DRM_WAITCOUNT(dev,idx) DRM_BUFCOUNT(&dev->queuelist[idx]->waitlist)
-
 #define DRM_GET_PRIV_SAREA(_dev, _ctx, _map) do {	\
 	(_map) = (_dev)->context_sareas[_ctx];		\
 } while(0)
 
 
+typedef struct drm_pci_id_list
+{
+	int vendor;
+	int device;
+	long driver_private;
+	char *name;
+} drm_pci_id_list_t;
+
 typedef struct drm_ioctl_desc {
 	int		     (*func)(DRM_IOCTL_ARGS);
 	int		     auth_needed;
@@ -170,17 +174,6 @@
 	void		  *dev_private;  /* Per-buffer private storage       */
 } drm_buf_t;
 
-				/* bufs is one longer than it has to be */
-typedef struct drm_waitlist {
-	int		  count;	/* Number of possible buffers	   */
-	drm_buf_t	  **bufs;	/* List of pointers to buffers	   */
-	drm_buf_t	  **rp;		/* Read pointer			   */
-	drm_buf_t	  **wp;		/* Write pointer		   */
-	drm_buf_t	  **end;	/* End pointer			   */
-	DRM_SPINTYPE	  read_lock;
-	DRM_SPINTYPE	  write_lock;
-} drm_waitlist_t;
-
 typedef struct drm_freelist {
 	int		  initialized; /* Freelist in use		   */
 	atomic_t	  count;       /* Number of free buffers	   */
@@ -188,7 +181,6 @@
 
 	int		  low_mark;    /* Low water mark		   */
 	int		  high_mark;   /* High water mark		   */
-	DRM_SPINTYPE   lock;
 } drm_freelist_t;
 
 typedef struct drm_buf_entry {
@@ -224,10 +216,17 @@
 typedef struct drm_lock_data {
 	drm_hw_lock_t	  *hw_lock;	/* Hardware lock		   */
 	DRMFILE		  filp;	        /* Unique identifier of holding process (NULL is kernel)*/
-	wait_queue_head_t lock_queue;	/* Queue of blocked processes	   */
+	int		  lock_queue;	/* Queue of blocked processes	   */
 	unsigned long	  lock_time;	/* Time of last lock in jiffies	   */
 } drm_lock_data_t;
 
+/* This structure, in the drm_device_t, is always initialized while the device
+ * is open.  dev->dma_lock protects the incrementing of dev->buf_use, which
+ * when set marks that no further bufs may be allocated until device teardown

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200310272121.h9RLLY3p022849>