PERFORCE change 36711 for review

Marcel Moolenaar marcel at FreeBSD.org
Fri Aug 22 15:29:10 PDT 2003


http://perforce.freebsd.org/chv.cgi?CH=36711

Change 36711 by marcel at marcel_nfs on 2003/08/22 15:28:18

	IFC @36700

Affected files ...

.. //depot/projects/uart/amd64/pci/pci_bus.c#3 integrate
.. //depot/projects/uart/cam/scsi/scsi_da.c#6 integrate
.. //depot/projects/uart/compat/freebsd32/Makefile#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32.h#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32_misc.c#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32_proto.h#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32_syscall.h#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32_syscalls.c#1 branch
.. //depot/projects/uart/compat/freebsd32/freebsd32_sysent.c#1 branch
.. //depot/projects/uart/conf/kern.pre.mk#6 integrate
.. //depot/projects/uart/conf/kmod.mk#5 integrate
.. //depot/projects/uart/contrib/dev/oltr/if_oltr.c#3 integrate
.. //depot/projects/uart/dev/firewire/firewire.c#6 integrate
.. //depot/projects/uart/dev/firewire/fwohci.c#9 integrate
.. //depot/projects/uart/dev/firewire/fwohci_pci.c#7 integrate
.. //depot/projects/uart/dev/hea/eni.h#3 integrate
.. //depot/projects/uart/dev/lge/if_lge.c#3 integrate
.. //depot/projects/uart/dev/lmc/if_lmc.c#2 integrate
.. //depot/projects/uart/dev/lnc/if_lnc_pci.c#3 integrate
.. //depot/projects/uart/dev/pccbb/pccbb.c#7 integrate
.. //depot/projects/uart/dev/pccbb/pccbbdevid.h#2 integrate
.. //depot/projects/uart/fs/specfs/spec_vnops.c#3 integrate
.. //depot/projects/uart/geom/geom_ccd.c#3 integrate
.. //depot/projects/uart/geom/geom_subr.c#2 integrate
.. //depot/projects/uart/i4b/capi/iavc/iavc_pci.c#2 integrate
.. //depot/projects/uart/i4b/layer1/ifpi/i4b_ifpi_pci.c#2 integrate
.. //depot/projects/uart/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#2 integrate
.. //depot/projects/uart/i4b/layer1/isic/i4b_elsa_qs1p.c#2 integrate
.. //depot/projects/uart/i4b/layer1/itjc/i4b_itjc_pci.c#3 integrate
.. //depot/projects/uart/i4b/layer1/iwic/i4b_iwic_pci.c#2 integrate
.. //depot/projects/uart/powerpc/ofw/ofw_pcib_pci.c#2 integrate
.. //depot/projects/uart/security/mac_test/mac_test.c#4 integrate
.. //depot/projects/uart/sparc64/ebus/ebus.c#3 integrate
.. //depot/projects/uart/sparc64/isa/isa.c#3 integrate
.. //depot/projects/uart/sparc64/isa/ofw_isa.c#3 integrate
.. //depot/projects/uart/sparc64/pci/apb.c#3 integrate
.. //depot/projects/uart/sparc64/pci/ofw_pci.c#3 integrate
.. //depot/projects/uart/sparc64/pci/ofw_pcib.c#2 integrate
.. //depot/projects/uart/sparc64/pci/ofw_pcib_subr.c#2 integrate
.. //depot/projects/uart/sparc64/pci/ofw_pcibus.c#2 integrate
.. //depot/projects/uart/sparc64/pci/psycho.c#3 integrate
.. //depot/projects/uart/sparc64/sbus/sbus.c#3 integrate
.. //depot/projects/uart/sparc64/sparc64/cache.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/cheetah.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/db_hwwatch.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/db_trace.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/dump_machdep.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/identcpu.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/intr_machdep.c#3 integrate
.. //depot/projects/uart/sparc64/sparc64/mem.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/mp_machdep.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/nexus.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/ofw_bus.c#3 integrate
.. //depot/projects/uart/sparc64/sparc64/spitfire.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/sys_machdep.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/tick.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/tlb.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/trap.c#2 integrate
.. //depot/projects/uart/sparc64/sparc64/tsb.c#2 integrate
.. //depot/projects/uart/sys/mac.h#3 integrate

Differences ...

==== //depot/projects/uart/amd64/pci/pci_bus.c#3 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.100 2003/07/25 21:19:18 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.101 2003/08/22 07:36:49 imp Exp $");
 
 #include "opt_cpu.h"
 
@@ -36,9 +36,9 @@
 #include <sys/module.h>
 #include <sys/malloc.h>
 
-#include <pci/pcivar.h>
-#include <pci/pcireg.h>
-#include <pci/pcib_private.h>
+#include <dev/pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcib_private.h>
 #include <isa/isavar.h>
 #include <machine/legacyvar.h>
 #include <machine/pci_cfgreg.h>

==== //depot/projects/uart/cam/scsi/scsi_da.c#6 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.153 2003/08/22 05:58:23 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.154 2003/08/22 16:35:53 njl Exp $");
 
 #ifdef _KERNEL
 #include "opt_da.h"
@@ -94,7 +94,8 @@
 typedef enum {
 	DA_Q_NONE		= 0x00,
 	DA_Q_NO_SYNC_CACHE	= 0x01,
-	DA_Q_NO_6_BYTE		= 0x02
+	DA_Q_NO_6_BYTE		= 0x02,
+	DA_Q_NO_PREVENT		= 0x04
 } da_quirks;
 
 typedef enum {
@@ -222,9 +223,7 @@
 		/*quirks*/ DA_Q_NO_6_BYTE
 	},
 	{
-		/*
-		 * See above.
-		 */
+		/* See above. */
 		{T_DIRECT, SIP_MEDIA_FIXED, quantum, "VIKING 2*", "*"},
 		/*quirks*/ DA_Q_NO_6_BYTE
 	},
@@ -381,6 +380,14 @@
 		{T_DIRECT, SIP_MEDIA_REMOVABLE, "JUNGSOFT", "NEXDISK*", "*"},
 		/*quirks*/ DA_Q_NO_SYNC_CACHE
 	},
+ 	{
+ 		/*
+ 		 * Creative Nomad MUVO mp3 player (USB)
+ 		 * PR: kern/53094
+ 		 */
+ 		{T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE", "NOMAD_MUVO", "*"},
+ 		/*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT
+ 	},
 };
 
 static	disk_strategy_t	dastrategy;
@@ -500,7 +507,8 @@
 	}
 	
 	if (error == 0) {
-		if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0)
+		if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0 &&
+		    (softc->quirks & DA_Q_NO_PREVENT) == 0)
 			daprevent(periph, PR_PREVENT);
 	} else {
 		softc->flags &= ~DA_FLAG_OPEN;
@@ -578,7 +586,8 @@
 	}
 
 	if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0) {
-		daprevent(periph, PR_ALLOW);
+		if ((softc->quirks & DA_Q_NO_PREVENT) == 0)
+			daprevent(periph, PR_ALLOW);
 		/*
 		 * If we've got removeable media, mark the blocksize as
 		 * unavailable, since it could change when new media is

==== //depot/projects/uart/conf/kern.pre.mk#6 (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.33 2003/07/30 22:11:36 scottl Exp $
+# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.34 2003/08/22 15:41:44 imp Exp $
 #
 
 # Can be overridden by makeoptions or /etc/make.conf
@@ -23,7 +23,7 @@
 .if !defined(NO_CPU_COPTFLAGS)
 COPTFLAGS+= ${_CPUCFLAGS}
 .endif
-INCLUDES= -nostdinc -I- ${INCLMAGIC} -I. -I$S -I$S/dev
+INCLUDES= -nostdinc -I- ${INCLMAGIC} -I. -I$S
 
 # This hack lets us use the Intel ACPICA code without spamming a new 
 # include path into 100+ source files.

==== //depot/projects/uart/conf/kmod.mk#5 (text+ko) ====

@@ -1,5 +1,5 @@
 #	From: @(#)bsd.prog.mk	5.26 (Berkeley) 6/25/91
-# $FreeBSD: src/sys/conf/kmod.mk,v 1.139 2003/07/26 02:27:50 peter Exp $
+# $FreeBSD: src/sys/conf/kmod.mk,v 1.140 2003/08/22 15:41:44 imp Exp $
 #
 # The include file <bsd.kmod.mk> handles installing Kernel Loadable Device
 # drivers (KLD's).
@@ -83,7 +83,7 @@
 # Add -I paths for system headers.  Individual KLD makefiles don't
 # need any -I paths for this.  Similar defaults for .PATH can't be
 # set because there are no standard paths for non-headers.
-CFLAGS+=	-I. -I@ -I@/dev
+CFLAGS+=	-I. -I@
 
 # Add a -I path to standard headers like <stddef.h>.  Use a relative
 # path to src/include if possible.  If the @ symlink hasn't been built

==== //depot/projects/uart/contrib/dev/oltr/if_oltr.c#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/contrib/dev/oltr/if_oltr.c,v 1.29 2003/08/06 10:52:16 bde Exp $
+ * $FreeBSD: src/sys/contrib/dev/oltr/if_oltr.c,v 1.30 2003/08/22 15:28:22 imp Exp $
  */
 
 #include <sys/param.h>
@@ -74,8 +74,13 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
+#if (__FreeBSD_version < 500000)
 #include <pci/pcireg.h>
 #include <pci/pcivar.h>
+#else
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
+#endif
 
 #include "contrib/dev/oltr/trlld.h"
 

==== //depot/projects/uart/dev/firewire/firewire.c#6 (text+ko) ====

@@ -31,7 +31,7 @@
  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  * 
- * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.59 2003/08/05 03:11:39 simokawa Exp $
+ * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.60 2003/08/22 07:30:41 simokawa Exp $
  *
  */
 
@@ -1772,8 +1772,10 @@
 			fw_xfer_done(xfer);
 			break;
 		case FWXF_START:
+#if 0
 			if (firewire_debug)
 				printf("not sent yet tl=%x\n", xfer->tl);
+#endif
 			break;
 		default:
 			printf("unexpected state %d\n", xfer->state);

==== //depot/projects/uart/dev/firewire/fwohci.c#9 (text+ko) ====

@@ -31,7 +31,7 @@
  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  * 
- * $FreeBSD: src/sys/dev/firewire/fwohci.c,v 1.64 2003/08/20 03:11:37 simokawa Exp $
+ * $FreeBSD: src/sys/dev/firewire/fwohci.c,v 1.65 2003/08/22 07:30:41 simokawa Exp $
  *
  */
 
@@ -1110,8 +1110,10 @@
 		if (tr->xfer != NULL) {
 			xfer = tr->xfer;
 			if (xfer->state == FWXF_RCVD) {
+#if 0
 				if (firewire_debug)
 					printf("already rcvd\n");
+#endif
 				fw_xfer_done(xfer);
 			} else {
 				xfer->state = FWXF_SENT;

==== //depot/projects/uart/dev/firewire/fwohci_pci.c#7 (text+ko) ====

@@ -31,7 +31,7 @@
  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  * 
- * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.32 2003/08/22 05:54:52 imp Exp $
+ * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.33 2003/08/22 07:33:20 simokawa Exp $
  */
 
 #define BOUNCE_BUFFER_TEST	0
@@ -55,8 +55,13 @@
 #include <machine/clock.h>		/* for DELAY() */
 #endif
 
+#if __FreeBSD_version < 500000
+#include <pci/pcivar.h>
+#include <pci/pcireg.h>
+#else
 #include <dev/pci/pcivar.h>
 #include <dev/pci/pcireg.h>
+#endif
 
 #include <dev/firewire/firewire.h>
 #include <dev/firewire/firewirereg.h>

==== //depot/projects/uart/dev/hea/eni.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.h,v 1.9 2003/08/22 06:00:26 imp Exp $
+ *	@(#) $FreeBSD: src/sys/dev/hea/eni.h,v 1.10 2003/08/22 15:35:37 imp Exp $
  *
  */
 
@@ -234,7 +234,7 @@
  */
 
 /*
- * Part of PCI configuration registers but not defined in <pci/pcireg.h>
+ * Part of PCI configuration registers but not defined in <dev/pci/pcireg.h>
  */
 #define	PCI_CONTROL_REG		0x60
 #define	ENDIAN_SWAP_DMA		0x80		/* Enable endian swaps on DMA */

==== //depot/projects/uart/dev/lge/if_lge.c#3 (text+ko) ====

@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/lge/if_lge.c,v 1.21 2003/07/03 14:00:56 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/lge/if_lge.c,v 1.22 2003/08/22 07:35:31 imp Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -98,8 +98,8 @@
 #include <dev/mii/mii.h>
 #include <dev/mii/miivar.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #define LGE_USEIOSPACE
 

==== //depot/projects/uart/dev/lmc/if_lmc.c#2 (text+ko) ====

@@ -23,7 +23,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/dev/lmc/if_lmc.c,v 1.19 2003/02/19 05:47:07 imp Exp $
+ * $FreeBSD: src/sys/dev/lmc/if_lmc.c,v 1.20 2003/08/22 07:35:31 imp Exp $
  *      From NetBSD: if_de.c,v 1.56.2.1 1997/10/27 02:13:25 thorpej Exp
  *	$Id: if_lmc.c,v 1.9 1999/02/19 15:08:42 explorer Exp $
  */
@@ -53,7 +53,7 @@
 #include <netgraph/netgraph.h>
 
 #include <vm/pmap.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcivar.h>
 #include <pci/dc21040reg.h>
 #define INCLUDE_PATH_PREFIX "dev/lmc/"
 

==== //depot/projects/uart/dev/lnc/if_lnc_pci.c#3 (text+ko) ====

@@ -27,7 +27,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/dev/lnc/if_lnc_pci.c,v 1.28 2003/07/01 15:51:59 scottl Exp $
+ * $FreeBSD: src/sys/dev/lnc/if_lnc_pci.c,v 1.29 2003/08/22 07:35:31 imp Exp $
  */
 
 #include <sys/param.h>
@@ -45,8 +45,8 @@
 #include <net/if.h>
 #include <net/if_arp.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <dev/lnc/if_lncreg.h>
 #include <dev/lnc/if_lncvar.h>

==== //depot/projects/uart/dev/pccbb/pccbb.c#7 (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/pccbb/pccbb.c,v 1.94 2003/08/22 06:42:58 imp Exp $
+ * $FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.95 2003/08/22 08:49:56 imp Exp $
  */
 
 /*
@@ -154,6 +154,14 @@
 	{PCIC_ID_TI4451, "TI4451 PCI-CardBus Bridge", CB_TI12XX},
 	{PCIC_ID_TI4510, "TI4510 PCI-CardBus Bridge", CB_TI12XX},
 
+	/* ENE */
+	{PCIC_ID_ENE_CB710, "ENE CB720 PCI-CardBus Bridge", CB_TI12XX},
+	{PCIC_ID_ENE_CB720, "ENE CB720 PCI-CardBus Bridge", CB_TI12XX},
+	{PCIC_ID_ENE_CB1211, "ENE CB1211 PCI-CardBus Bridge", CB_TI12XX},
+	{PCIC_ID_ENE_CB1225, "ENE CB1225 PCI-CardBus Bridge", CB_TI12XX},
+	{PCIC_ID_ENE_CB1410, "ENE CB1410 PCI-CardBus Bridge", CB_TI12XX},
+	{PCIC_ID_ENE_CB1420, "ENE CB1420 PCI-CardBus Bridge", CB_TI12XX},
+
 	/* Ricoh chips */
 	{PCIC_ID_RICOH_RL5C465, "RF5C465 PCI-CardBus Bridge", CB_RF5C46X},
 	{PCIC_ID_RICOH_RL5C466, "RF5C466 PCI-CardBus Bridge", CB_RF5C46X},
@@ -180,6 +188,7 @@
 	{PCIC_ID_OZ6912, "O2Micro OZ6912/6972 PCI-CardBus Bridge", CB_O2MICRO},
 	{PCIC_ID_OZ6922, "O2Micro OZ6922 PCI-CardBus Bridge", CB_O2MICRO},
 	{PCIC_ID_OZ6933, "O2Micro OZ6933 PCI-CardBus Bridge", CB_O2MICRO},
+	/* 711E1 */
 
 	/* sentinel */
 	{0 /* null id */, "unknown", CB_UNKNOWN},

==== //depot/projects/uart/dev/pccbb/pccbbdevid.h#2 (text+ko) ====

@@ -23,7 +23,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/dev/pccbb/pccbbdevid.h,v 1.12 2003/05/04 12:49:37 imp Exp $
+ * $FreeBSD: src/sys/dev/pccbb/pccbbdevid.h,v 1.13 2003/08/22 08:49:56 imp Exp $
  */
 
 /* Vendor/Device IDs */
@@ -31,6 +31,12 @@
 #define	PCIC_ID_CLPD6832	0x11101013ul
 #define	PCIC_ID_CLPD6833	0x11131013ul
 #define	PCIC_ID_CLPD6834	0x11121013ul
+#define PCIC_ID_ENE_CB710	0x14111524ul
+#define PCIC_ID_ENE_CB720	0x14211524ul	/* ??? */
+#define PCIC_ID_ENE_CB1211	0x12111524ul	/* ??? */
+#define PCIC_ID_ENE_CB1225	0x12251524ul	/* ??? */
+#define PCIC_ID_ENE_CB1410	0x14101524ul
+#define PCIC_ID_ENE_CB1420	0x14201524ul
 #define	PCIC_ID_INTEL_82092AA_0	0x12218086ul	/* 16bit I/O */
 #define	PCIC_ID_INTEL_82092AA_1	0x12228086ul	/* 16bit I/O */
 #define	PCIC_ID_OMEGA_82C094	0x1221119bul	/* 16bit I/O */
@@ -42,6 +48,7 @@
 #define	PCIC_ID_OZ6912		0x69721217ul	/* Also 6972 */
 #define	PCIC_ID_OZ6922		0x69251217ul
 #define	PCIC_ID_OZ6933		0x69331217ul
+/* O2Micro 711E1 */
 #define	PCIC_ID_RICOH_RL5C465	0x04651180ul
 #define	PCIC_ID_RICOH_RL5C466	0x04661180ul
 #define	PCIC_ID_RICOH_RL5C475	0x04751180ul

==== //depot/projects/uart/fs/specfs/spec_vnops.c#3 (text+ko) ====

@@ -31,7 +31,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)spec_vnops.c	8.14 (Berkeley) 5/21/95
- * $FreeBSD: src/sys/fs/specfs/spec_vnops.c,v 1.207 2003/08/06 06:49:18 phk Exp $
+ * $FreeBSD: src/sys/fs/specfs/spec_vnops.c,v 1.208 2003/08/22 17:50:32 alc Exp $
  */
 
 #include <sys/param.h>
@@ -765,7 +765,10 @@
 	pmap_qremove(kva, pcount);
 
 	gotreqpage = 0;
-	VM_OBJECT_LOCK(vp->v_object);
+	/*
+	 * While the page is busy, its object field is immutable.
+	 */
+	VM_OBJECT_LOCK(ap->a_m[ap->a_reqpage]->object);
 	vm_page_lock_queues();
 	for (i = 0, toff = 0; i < pcount; i++, toff = nextoff) {
 		nextoff = toff + PAGE_SIZE;
@@ -818,7 +821,7 @@
 		}
 	}
 	vm_page_unlock_queues();
-	VM_OBJECT_UNLOCK(vp->v_object);
+	VM_OBJECT_UNLOCK(ap->a_m[ap->a_reqpage]->object);
 	if (!gotreqpage) {
 		m = ap->a_m[ap->a_reqpage];
 		printf(

==== //depot/projects/uart/geom/geom_ccd.c#3 (text+ko) ====

@@ -50,7 +50,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/geom/geom_ccd.c,v 1.142 2003/07/29 20:04:06 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/geom/geom_ccd.c,v 1.146 2003/08/22 11:21:06 ps Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -114,7 +114,7 @@
  * Describes a single component of a concatenated disk.
  */
 struct ccdcinfo {
-	size_t		ci_size; 		/* size */
+	daddr_t		ci_size; 		/* size */
 	struct g_provider *ci_provider;		/* provider */
 	struct g_consumer *ci_consumer;		/* consumer */
 };
@@ -128,7 +128,7 @@
 
 	int		 sc_unit;		/* logical unit number */
 	int		 sc_flags;		/* flags */
-	size_t		 sc_size;		/* size of ccd */
+	daddr_t		 sc_size;		/* size of ccd */
 	int		 sc_ileave;		/* interleave */
 	u_int		 sc_ndisks;		/* number of components */
 	struct ccdcinfo	 *sc_cinfo;		/* component info */
@@ -204,9 +204,9 @@
 ccdinit(struct gctl_req *req, struct ccd_s *cs)
 {
 	struct ccdcinfo *ci;
-	size_t size;
+	daddr_t size;
 	int ix;
-	size_t minsize;
+	daddr_t minsize;
 	int maxsecsize;
 	off_t mediasize;
 	u_int sectorsize;
@@ -309,7 +309,7 @@
 	struct ccdiinfo *ii;
 	daddr_t bn, lbn;
 	int ix;
-	u_long size;
+	daddr_t size;
 
 
 	/*
@@ -425,6 +425,16 @@
 	cs = bp->bio_to->geom->softc;
 
 	/*
+	 * Block all GETATTR requests, we wouldn't know which of our
+	 * subdevices we should ship it off to.
+	 * XXX: this may not be the right policy.
+	 */
+	if(bp->bio_cmd == BIO_GETATTR) {
+		g_io_deliver(bp, EINVAL);
+		return;
+	}
+
+	/*
 	 * Translate the partition-relative block number to an absolute.
 	 */
 	bn = bp->bio_offset / cs->sc_secsize;
@@ -688,7 +698,7 @@
 	/* Check for duplicate unit */
 	LIST_FOREACH(gp, &mp->geom, geom) {
 		sc = gp->softc;
-		if (sc->sc_unit == *unit) {
+		if (sc != NULL && sc->sc_unit == *unit) {
 			gctl_error(req, "Unit %d already configured", *unit);
 			return;
 		}
@@ -780,27 +790,26 @@
 	sbuf_delete(sb);
 }
 
-static void
-g_ccd_destroy(struct gctl_req *req, struct g_class *mp)
+static int
+g_ccd_destroy_geom(struct gctl_req *req, struct g_class *mp, struct g_geom *gp)
 {
-	struct g_geom *gp;
 	struct g_provider *pp;
 	struct ccd_s *sc;
 
 	g_topology_assert();
-	gp = gctl_get_geom(req, mp, "geom");
-	if (gp == NULL)
-		return;
 	sc = gp->softc;
 	pp = LIST_FIRST(&gp->provider);
+	if (sc == NULL || pp == NULL)
+		return (EBUSY);
 	if (pp->acr != 0 || pp->acw != 0 || pp->ace != 0) {
 		gctl_error(req, "%s is open(r%dw%de%d)", gp->name,
 		    pp->acr, pp->acw, pp->ace);
-		return;
+		return (EBUSY);
 	}
 	g_ccd_freesc(sc);
 	gp->softc = NULL;
 	g_wither_geom(gp, ENXIO);
+	return (0);
 }
 
 static void
@@ -817,7 +826,7 @@
 	sbuf_clear(sb);
 	LIST_FOREACH(gp, &mp->geom, geom) {
 		cs = gp->softc;
-		if (unit >= 0 && unit != cs->sc_unit)
+		if (cs == NULL || (unit >= 0 && unit != cs->sc_unit))
 			continue;
 		sbuf_printf(sb, "ccd%d\t\t%d\t%d\t",
 		    cs->sc_unit, cs->sc_ileave, cs->sc_flags & CCDF_USERMASK);
@@ -836,12 +845,15 @@
 static void
 g_ccd_config(struct gctl_req *req, struct g_class *mp, char const *verb)
 {
+	struct g_geom *gp;
 
 	g_topology_assert();
 	if (!strcmp(verb, "create geom")) {
 		g_ccd_create(req, mp);
 	} else if (!strcmp(verb, "destroy geom")) {
-		g_ccd_destroy(req, mp);
+		gp = gctl_get_geom(req, mp, "geom");
+		if (gp != NULL)
+		g_ccd_destroy_geom(req, mp, gp);
 	} else if (!strcmp(verb, "list")) {
 		g_ccd_list(req, mp);
 	} else {
@@ -852,6 +864,7 @@
 static struct g_class g_ccd_class = {
 	.name = "CCD",
 	.ctlreq = g_ccd_config,
+	.destroy_geom = g_ccd_destroy_geom,
 };
 
 DECLARE_GEOM_CLASS(g_ccd_class, g_ccd);

==== //depot/projects/uart/geom/geom_subr.c#2 (text+ko) ====

@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/geom/geom_subr.c,v 1.59 2003/06/11 06:49:15 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/geom/geom_subr.c,v 1.60 2003/08/22 11:00:54 phk Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -186,9 +186,11 @@
 		error = g_waitfor_event(g_unload_class, hh, M_WAITOK, NULL);
 		if (error == 0)
 			error = hh->error;
-		g_waitidle();
-		KASSERT(LIST_EMPTY(&hh->mp->geom),
-		    ("Unloaded class (%s) still has geom", hh->mp->name));
+		if (error == 0) {
+			g_waitidle();
+			KASSERT(LIST_EMPTY(&hh->mp->geom),
+			    ("Unloaded class (%s) still has geom", hh->mp->name));
+		}
 		g_free(hh);
 		break;
 	}

==== //depot/projects/uart/i4b/capi/iavc/iavc_pci.c#2 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/capi/iavc/iavc_pci.c,v 1.7 2003/06/10 23:10:44 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/capi/iavc/iavc_pci.c,v 1.8 2003/08/22 15:06:23 imp Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -45,8 +45,8 @@
 #include <vm/vm.h>
 #include <vm/pmap.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <machine/i4b_debug.h>
 #include <machine/i4b_ioctl.h>

==== //depot/projects/uart/i4b/layer1/ifpi/i4b_ifpi_pci.c#2 (text+ko) ====

@@ -38,7 +38,7 @@
  *---------------------------------------------------------------------------*/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c,v 1.13 2003/06/10 23:21:00 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c,v 1.14 2003/08/22 15:06:23 imp Exp $");
 
 #include "opt_i4b.h"
 
@@ -51,8 +51,8 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <sys/socket.h>
 #include <net/if.h>

==== //depot/projects/uart/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#2 (text+ko) ====

@@ -37,7 +37,7 @@
  *---------------------------------------------------------------------------*/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c,v 1.12 2003/06/10 23:23:33 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c,v 1.13 2003/08/22 15:06:23 imp Exp $");
 
 #include "opt_i4b.h"
 
@@ -50,8 +50,8 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <sys/socket.h>
 #include <net/if.h>

==== //depot/projects/uart/i4b/layer1/isic/i4b_elsa_qs1p.c#2 (text+ko) ====

@@ -33,7 +33,7 @@
  *---------------------------------------------------------------------------*/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/layer1/isic/i4b_elsa_qs1p.c,v 1.9 2003/06/10 23:45:23 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/layer1/isic/i4b_elsa_qs1p.c,v 1.10 2003/08/22 15:06:24 imp Exp $");
 
 #include "opt_i4b.h"
 
@@ -50,8 +50,8 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <machine/i4b_ioctl.h>
 

==== //depot/projects/uart/i4b/layer1/itjc/i4b_itjc_pci.c#3 (text+ko) ====

@@ -37,7 +37,7 @@
  *---------------------------------------------------------------------------*/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/layer1/itjc/i4b_itjc_pci.c,v 1.10 2003/07/01 15:52:04 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/layer1/itjc/i4b_itjc_pci.c,v 1.11 2003/08/22 15:06:24 imp Exp $");
 
 #include "opt_i4b.h"
 
@@ -53,8 +53,8 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <sys/socket.h>
 #include <net/if.h>

==== //depot/projects/uart/i4b/layer1/iwic/i4b_iwic_pci.c#2 (text+ko) ====

@@ -31,7 +31,7 @@
  *---------------------------------------------------------------------------*/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i4b/layer1/iwic/i4b_iwic_pci.c,v 1.9 2003/06/10 23:48:55 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/i4b/layer1/iwic/i4b_iwic_pci.c,v 1.10 2003/08/22 15:06:24 imp Exp $");
 
 #include "opt_i4b.h"
 
@@ -46,8 +46,8 @@
 #include <sys/bus.h>
 #include <sys/rman.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <machine/i4b_ioctl.h>
 #include <machine/i4b_trace.h>

==== //depot/projects/uart/powerpc/ofw/ofw_pcib_pci.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/powerpc/ofw/ofw_pcib_pci.c,v 1.1 2003/01/09 12:04:18 benno Exp $
+ * $FreeBSD: src/sys/powerpc/ofw/ofw_pcib_pci.c,v 1.2 2003/08/22 07:39:05 imp Exp $
  */
 
 #include <sys/param.h>
@@ -37,9 +37,9 @@
 
 #include <powerpc/ofw/ofw_pci.h>
 
-#include <pci/pcivar.h>
-#include <pci/pcireg.h>
-#include <pci/pcib_private.h>
+#include <dev/pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcib_private.h>
 
 #include "pcib_if.h"
 

==== //depot/projects/uart/security/mac_test/mac_test.c#4 (text+ko) ====

@@ -31,7 +31,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/security/mac_test/mac_test.c,v 1.30 2003/08/21 17:28:45 rwatson Exp $
+ * $FreeBSD: src/sys/security/mac_test/mac_test.c,v 1.31 2003/08/22 12:32:07 rwatson Exp $
  */
 
 /*
@@ -1823,7 +1823,7 @@
 	.mpo_create_mbuf_netlayer = mac_test_create_mbuf_netlayer,
 	.mpo_fragment_match = mac_test_fragment_match,
 	.mpo_reflect_mbuf_icmp = mac_test_reflect_mbuf_icmp,
-	.mpo_reflect_mbuf_icmp = mac_test_reflect_mbuf_tcp,
+	.mpo_reflect_mbuf_tcp = mac_test_reflect_mbuf_tcp,
 	.mpo_relabel_ifnet = mac_test_relabel_ifnet,
 	.mpo_update_ipq = mac_test_update_ipq,
 	.mpo_create_cred = mac_test_create_cred,

==== //depot/projects/uart/sparc64/ebus/ebus.c#3 (text+ko) ====

@@ -28,7 +28,7 @@
  *
  *	from: NetBSD: ebus.c,v 1.26 2001/09/10 16:27:53 eeh Exp
  *
- * $FreeBSD: src/sys/sparc64/ebus/ebus.c,v 1.9 2003/07/01 14:52:46 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/ebus/ebus.c,v 1.10 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ebus.h"
@@ -63,8 +63,8 @@
 #include <machine/ofw_bus.h>
 #include <machine/resource.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <sparc64/pci/ofw_pci.h>
 

==== //depot/projects/uart/sparc64/isa/isa.c#3 (text+ko) ====

@@ -26,7 +26,7 @@
  *
  *	from: FreeBSD: src/sys/alpha/isa/isa.c,v 1.26 2001/07/11
  *
- * $FreeBSD: src/sys/sparc64/isa/isa.c,v 1.8 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/isa/isa.c,v 1.9 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ofw_pci.h"
@@ -46,8 +46,8 @@
 #include <isa/isavar.h>
 #include <isa/isa_common.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
 
 #include <ofw/ofw_pci.h>
 #include <ofw/openfirm.h>

==== //depot/projects/uart/sparc64/isa/ofw_isa.c#3 (text+ko) ====

@@ -28,7 +28,7 @@
  *
  *	from: NetBSD: ebus.c,v 1.26 2001/09/10 16:27:53 eeh Exp
  *
- * $FreeBSD: src/sys/sparc64/isa/ofw_isa.c,v 1.4 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/isa/ofw_isa.c,v 1.5 2003/08/22 07:38:07 imp Exp $
  */
 
 /*

==== //depot/projects/uart/sparc64/pci/apb.c#3 (text+ko) ====

@@ -30,7 +30,7 @@
  *
  *	from: FreeBSD: src/sys/dev/pci/pci_pci.c,v 1.3 2000/12/13
  *
- * $FreeBSD: src/sys/sparc64/pci/apb.c,v 1.6 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/pci/apb.c,v 1.7 2003/08/22 07:38:07 imp Exp $
  */
 
 /*
@@ -55,9 +55,9 @@
 #include <machine/ofw_bus.h>
 #include <machine/resource.h>
 
-#include <pci/pcireg.h>
-#include <pci/pcivar.h>
-#include <pci/pcib_private.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
+#include <dev/pci/pcib_private.h>
 
 #include "pcib_if.h"
 

==== //depot/projects/uart/sparc64/pci/ofw_pci.c#3 (text+ko) ====

@@ -28,7 +28,7 @@
  *
  *	from: NetBSD: psycho.c,v 1.35 2001/09/10 16:17:06 eeh Exp
  *
- * $FreeBSD: src/sys/sparc64/pci/ofw_pci.c,v 1.12 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/pci/ofw_pci.c,v 1.13 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ofw_pci.h"

==== //depot/projects/uart/sparc64/pci/ofw_pcib.c#2 (text+ko) ====

@@ -30,7 +30,7 @@
  *
  *	from: FreeBSD: src/sys/dev/pci/pci_pci.c,v 1.3 2000/12/13
  *
- * $FreeBSD: src/sys/sparc64/pci/ofw_pcib.c,v 1.1 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/pci/ofw_pcib.c,v 1.2 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ofw_pci.h"

==== //depot/projects/uart/sparc64/pci/ofw_pcib_subr.c#2 (text+ko) ====

@@ -22,7 +22,7 @@
  * 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/sparc64/pci/ofw_pcib_subr.c,v 1.1 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/pci/ofw_pcib_subr.c,v 1.2 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ofw_pci.h"

==== //depot/projects/uart/sparc64/pci/ofw_pcibus.c#2 (text+ko) ====

@@ -26,7 +26,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/sparc64/pci/ofw_pcibus.c,v 1.1 2003/07/01 14:52:47 tmm Exp $
+ * $FreeBSD: src/sys/sparc64/pci/ofw_pcibus.c,v 1.2 2003/08/22 07:38:07 imp Exp $
  */
 
 #include "opt_ofw_pci.h"

==== //depot/projects/uart/sparc64/pci/psycho.c#3 (text+ko) ====

@@ -28,7 +28,7 @@
  *
  *	from: NetBSD: psycho.c,v 1.39 2001/10/07 20:30:41 eeh Exp
  *
- * $FreeBSD: src/sys/sparc64/pci/psycho.c,v 1.41 2003/07/01 15:52:06 scottl Exp $
+ * $FreeBSD: src/sys/sparc64/pci/psycho.c,v 1.42 2003/08/22 07:38:07 imp Exp $
  */
 
 /*
@@ -65,8 +65,8 @@
 
 #include <machine/iommuvar.h>
 
-#include <pci/pcivar.h>
-#include <pci/pcireg.h>
+#include <dev/pci/pcivar.h>
+#include <dev/pci/pcireg.h>
 
 #include <sparc64/pci/ofw_pci.h>
 #include <sparc64/pci/psychoreg.h>

==== //depot/projects/uart/sparc64/sbus/sbus.c#3 (text+ko) ====

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


More information about the p4-projects mailing list