Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Oct 2004 19:10:18 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 63082 for review
Message-ID:  <200410121910.i9CJAIO0032627@repoman.freebsd.org>

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

Change 63082 by jhb@jhb_slimer on 2004/10/12 19:09:56

	IFC @63081.

Affected files ...

.. //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#8 integrate
.. //depot/projects/smpng/sys/amd64/amd64/pmap.c#37 integrate
.. //depot/projects/smpng/sys/amd64/include/acpica_machdep.h#5 integrate
.. //depot/projects/smpng/sys/amd64/include/pmap.h#16 integrate
.. //depot/projects/smpng/sys/amd64/pci/pci_bus.c#10 integrate
.. //depot/projects/smpng/sys/arm/conf/SIMICS#3 integrate
.. //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#5 integrate
.. //depot/projects/smpng/sys/cam/scsi/scsi_da.h#2 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#12 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#11 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#11 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#11 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#11 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#11 integrate
.. //depot/projects/smpng/sys/compat/linux/linux_util.h#10 integrate
.. //depot/projects/smpng/sys/conf/files#124 integrate
.. //depot/projects/smpng/sys/conf/files.i386#68 integrate
.. //depot/projects/smpng/sys/conf/files.sparc64#43 integrate
.. //depot/projects/smpng/sys/conf/kern.pre.mk#40 integrate
.. //depot/projects/smpng/sys/conf/kmod.mk#35 integrate
.. //depot/projects/smpng/sys/dev/acpica/Osd/OsdTable.c#8 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_cmbat.c#23 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_cpu.c#28 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_acpi.c#14 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_quirks#3 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_timer.c#19 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpivar.h#49 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-all.c#62 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-all.h#32 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-card.c#20 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-cbus.c#12 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#45 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-disk.c#45 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-isa.c#18 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.c#50 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.h#25 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-queue.c#20 integrate
.. //depot/projects/smpng/sys/dev/auxio/auxio.c#1 branch
.. //depot/projects/smpng/sys/dev/auxio/auxioreg.h#1 branch
.. //depot/projects/smpng/sys/dev/bfe/if_bfe.c#11 integrate
.. //depot/projects/smpng/sys/dev/digi/digi.c#26 integrate
.. //depot/projects/smpng/sys/dev/digi/digi.h#9 integrate
.. //depot/projects/smpng/sys/dev/em/if_em.c#37 integrate
.. //depot/projects/smpng/sys/dev/fdc/fdc.c#11 integrate
.. //depot/projects/smpng/sys/dev/fe/if_fe.c#15 integrate
.. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#19 integrate
.. //depot/projects/smpng/sys/dev/md/md.c#57 integrate
.. //depot/projects/smpng/sys/dev/pbio/pbio.c#1 branch
.. //depot/projects/smpng/sys/dev/pbio/pbioio.h#1 branch
.. //depot/projects/smpng/sys/dev/random/randomdev_soft.c#4 integrate
.. //depot/projects/smpng/sys/dev/rc/rc.c#14 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/ad1816.c#16 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/es1888.c#5 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/ess.c#13 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/gusc.c#5 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/mss.c#18 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/sbc.c#13 integrate
.. //depot/projects/smpng/sys/dev/sx/sx.c#5 integrate
.. //depot/projects/smpng/sys/dev/sx/sx.h#4 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_bus.h#5 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_tty.c#10 integrate
.. //depot/projects/smpng/sys/dev/usb/ubser.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb/ucycom.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/ugen.c#29 integrate
.. //depot/projects/smpng/sys/dev/usb/uhid.c#23 integrate
.. //depot/projects/smpng/sys/dev/usb/umass.c#42 integrate
.. //depot/projects/smpng/sys/geom/geom_io.c#34 integrate
.. //depot/projects/smpng/sys/geom/geom_pc98.c#25 integrate
.. //depot/projects/smpng/sys/geom/geom_subr.c#44 integrate
.. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#9 integrate
.. //depot/projects/smpng/sys/i386/acpica/acpi_machdep.c#19 integrate
.. //depot/projects/smpng/sys/i386/conf/NOTES#90 integrate
.. //depot/projects/smpng/sys/i386/i386/elan-mmcr.c#21 integrate
.. //depot/projects/smpng/sys/i386/i386/pmap.c#75 integrate
.. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#16 integrate
.. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_socksys.c#11 integrate
.. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysi86.c#9 integrate
.. //depot/projects/smpng/sys/i386/include/acpica_machdep.h#7 integrate
.. //depot/projects/smpng/sys/i386/include/pmap.h#25 integrate
.. //depot/projects/smpng/sys/i386/isa/pbio.c#1 branch
.. //depot/projects/smpng/sys/i386/pci/pci_bus.c#23 integrate
.. //depot/projects/smpng/sys/i4b/driver/i4b_ipr.c#19 integrate
.. //depot/projects/smpng/sys/i4b/driver/i4b_isppp.c#11 integrate
.. //depot/projects/smpng/sys/ia64/acpica/acpi_machdep.c#5 integrate
.. //depot/projects/smpng/sys/ia64/ia64/machdep.c#87 integrate
.. //depot/projects/smpng/sys/ia64/include/acpica_machdep.h#4 integrate
.. //depot/projects/smpng/sys/kern/init_sysent.c#46 integrate
.. //depot/projects/smpng/sys/kern/kern_condvar.c#39 integrate
.. //depot/projects/smpng/sys/kern/kern_exec.c#78 integrate
.. //depot/projects/smpng/sys/kern/kern_fork.c#86 integrate
.. //depot/projects/smpng/sys/kern/kern_kse.c#12 integrate
.. //depot/projects/smpng/sys/kern/kern_mutex.c#87 integrate
.. //depot/projects/smpng/sys/kern/kern_proc.c#68 integrate
.. //depot/projects/smpng/sys/kern/kern_subr.c#35 integrate
.. //depot/projects/smpng/sys/kern/kern_switch.c#47 integrate
.. //depot/projects/smpng/sys/kern/kern_synch.c#83 integrate
.. //depot/projects/smpng/sys/kern/kern_sysctl.c#42 integrate
.. //depot/projects/smpng/sys/kern/kern_tc.c#30 integrate
.. //depot/projects/smpng/sys/kern/kern_thr.c#21 integrate
.. //depot/projects/smpng/sys/kern/kern_thread.c#70 integrate
.. //depot/projects/smpng/sys/kern/kern_xxx.c#15 integrate
.. //depot/projects/smpng/sys/kern/sched_4bsd.c#40 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#44 integrate
.. //depot/projects/smpng/sys/kern/subr_sleepqueue.c#11 integrate
.. //depot/projects/smpng/sys/kern/subr_turnstile.c#17 integrate
.. //depot/projects/smpng/sys/kern/subr_witness.c#122 integrate
.. //depot/projects/smpng/sys/kern/syscalls.c#46 integrate
.. //depot/projects/smpng/sys/kern/syscalls.master#47 integrate
.. //depot/projects/smpng/sys/kern/uipc_mbuf2.c#17 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket.c#58 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#85 integrate
.. //depot/projects/smpng/sys/modules/Makefile#84 integrate
.. //depot/projects/smpng/sys/modules/auxio/Makefile#1 branch
.. //depot/projects/smpng/sys/net/bpf.c#41 integrate
.. //depot/projects/smpng/sys/net/bridge.c#31 integrate
.. //depot/projects/smpng/sys/net/bridge.h#7 integrate
.. //depot/projects/smpng/sys/net/ethernet.h#9 integrate
.. //depot/projects/smpng/sys/net/if_ethersubr.c#53 integrate
.. //depot/projects/smpng/sys/net/if_tun.c#36 integrate
.. //depot/projects/smpng/sys/net/net_osdep.c#6 delete
.. //depot/projects/smpng/sys/net/net_osdep.h#10 integrate
.. //depot/projects/smpng/sys/net/netisr.c#9 integrate
.. //depot/projects/smpng/sys/net/pfil.c#7 integrate
.. //depot/projects/smpng/sys/net/route.h#20 integrate
.. //depot/projects/smpng/sys/net/rtsock.c#40 integrate
.. //depot/projects/smpng/sys/netgraph/ng_ether.c#18 integrate
.. //depot/projects/smpng/sys/netinet/if_ether.c#29 integrate
.. //depot/projects/smpng/sys/netinet/ip_mroute.c#38 integrate
.. //depot/projects/smpng/sys/netinet/raw_ip.c#45 integrate
.. //depot/projects/smpng/sys/netinet/tcp_output.c#31 integrate
.. //depot/projects/smpng/sys/netinet6/in6_rmx.c#7 integrate
.. //depot/projects/smpng/sys/netncp/ncp_ncp.c#11 integrate
.. //depot/projects/smpng/sys/pci/if_sis.c#44 integrate
.. //depot/projects/smpng/sys/sparc64/conf/GENERIC#47 integrate
.. //depot/projects/smpng/sys/sparc64/conf/NOTES#9 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#67 integrate
.. //depot/projects/smpng/sys/sys/conf.h#34 integrate
.. //depot/projects/smpng/sys/sys/kse.h#18 integrate
.. //depot/projects/smpng/sys/sys/mbuf.h#45 integrate
.. //depot/projects/smpng/sys/sys/param.h#73 integrate
.. //depot/projects/smpng/sys/sys/pbioio.h#1 branch
.. //depot/projects/smpng/sys/sys/proc.h#131 integrate
.. //depot/projects/smpng/sys/sys/random.h#4 integrate
.. //depot/projects/smpng/sys/sys/runq.h#5 integrate
.. //depot/projects/smpng/sys/sys/sleepqueue.h#5 integrate
.. //depot/projects/smpng/sys/sys/socketvar.h#40 integrate
.. //depot/projects/smpng/sys/sys/syscall.h#46 integrate
.. //depot/projects/smpng/sys/sys/syscall.mk#46 integrate
.. //depot/projects/smpng/sys/sys/syscallsubr.h#12 integrate
.. //depot/projects/smpng/sys/sys/sysctl.h#31 integrate
.. //depot/projects/smpng/sys/sys/sysproto.h#48 integrate
.. //depot/projects/smpng/sys/sys/thr.h#4 integrate
.. //depot/projects/smpng/sys/sys/ttydefaults.h#4 integrate
.. //depot/projects/smpng/sys/sys/turnstile.h#4 integrate
.. //depot/projects/smpng/sys/ufs/ffs/fs.h#16 integrate
.. //depot/projects/smpng/sys/vm/uma_core.c#48 integrate
.. //depot/projects/smpng/sys/vm/uma_dbg.c#10 integrate
.. //depot/projects/smpng/sys/vm/vm_meter.c#20 integrate

Differences ...

==== //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#8 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.15 2004/08/16 23:10:18 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.16 2004/10/11 05:39:14 njl Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -61,3 +61,9 @@
 {
 	return (0);
 }
+
+void
+acpi_cpu_c1()
+{
+	__asm __volatile("sti; hlt");
+}

==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#37 (text+ko) ====

@@ -75,7 +75,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.507 2004/10/03 20:14:06 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.508 2004/10/08 08:23:42 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -1839,7 +1839,7 @@
 	vm_paddr_t opa;
 	pd_entry_t ptepde;
 	pt_entry_t origpte, newpte;
-	vm_page_t mpte;
+	vm_page_t mpte, om;
 
 	va = trunc_page(va);
 #ifdef PMAP_DIAGNOSTIC
@@ -1881,6 +1881,7 @@
 		panic("pmap_enter: invalid page directory va=%#lx\n", va);
 
 	pa = VM_PAGE_TO_PHYS(m);
+	om = NULL;
 	origpte = *pte;
 	opa = origpte & PG_FRAME;
 
@@ -1921,8 +1922,7 @@
 		 * so we go ahead and sense modify status.
 		 */
 		if (origpte & PG_MANAGED) {
-			if ((origpte & PG_M) && pmap_track_modified(va))
-				vm_page_dirty(m);
+			om = m;
 			pa |= PG_MANAGED;
 		}
 		goto validate;
@@ -1933,10 +1933,17 @@
 	 */
 	if (opa) {
 		int err;
-		err = pmap_remove_pte(pmap, pte, va, ptepde);
+		if (origpte & PG_W)
+			pmap->pm_stats.wired_count--;
+		if (origpte & PG_MANAGED) {
+			om = PHYS_TO_VM_PAGE(opa);
+			err = pmap_remove_entry(pmap, om, va, ptepde);
+		} else
+			err = pmap_unuse_pt(pmap, va, ptepde);
 		if (err)
 			panic("pmap_enter: pte vanished, va: 0x%lx", va);
-	}
+	} else
+		pmap->pm_stats.resident_count++;
 
 	/*
 	 * Enter on the PV list if part of our managed memory. Note that we
@@ -1952,7 +1959,6 @@
 	/*
 	 * Increment counters
 	 */
-	pmap->pm_stats.resident_count++;
 	if (wired)
 		pmap->pm_stats.wired_count++;
 
@@ -1977,7 +1983,14 @@
 	 * to update the pte.
 	 */
 	if ((origpte & ~(PG_M|PG_A)) != newpte) {
-		pte_store(pte, newpte | PG_A);
+		if (origpte & PG_MANAGED) {
+			origpte = pte_load_store(pte, newpte | PG_A);
+			if ((origpte & PG_M) && pmap_track_modified(va))
+				vm_page_dirty(om);
+			if (origpte & PG_A)
+				vm_page_flag_set(om, PG_REFERENCED);
+		} else
+			pte_store(pte, newpte | PG_A);
 		if (origpte) {
 			pmap_invalidate_page(pmap, va);
 		}

==== //depot/projects/smpng/sys/amd64/include/acpica_machdep.h#5 (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/amd64/include/acpica_machdep.h,v 1.5 2004/05/05 20:04:14 njl Exp $
+ * $FreeBSD: src/sys/amd64/include/acpica_machdep.h,v 1.6 2004/10/11 05:39:15 njl Exp $
  */
 
 /******************************************************************************
@@ -73,6 +73,7 @@
 #define COMPILER_DEPENDENT_INT64       long
 #define COMPILER_DEPENDENT_UINT64      unsigned long
 
-void    acpi_SetDefaultIntrModel(int model);
+void	acpi_SetDefaultIntrModel(int model);
+void	acpi_cpu_c1(void);
 
 #endif /* __ACPICA_MACHDEP_H__ */

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

@@ -39,7 +39,7 @@
  *
  *	from: hp300: @(#)pmap.h	7.2 (Berkeley) 12/16/90
  *	from: @(#)pmap.h	7.4 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.124 2004/09/29 19:20:39 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.125 2004/10/08 08:23:43 alc Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -194,15 +194,25 @@
 {
 	pt_entry_t r;
 
-	r = *ptep;
-	*ptep = pte;
+	__asm __volatile(
+	    "xchgq %0,%1"
+	    : "=m" (*ptep),
+	      "=r" (r)
+	    : "1" (pte),
+	      "m" (*ptep));
 	return (r);
 }
 
 #define	pte_load_clear(pte)	atomic_readandclear_long(pte)
 
-#define	pte_clear(ptep)		pte_load_store((ptep), (pt_entry_t)0ULL)
-#define	pte_store(ptep, pte)	pte_load_store((ptep), (pt_entry_t)pte)
+static __inline void
+pte_store(pt_entry_t *ptep, pt_entry_t pte)
+{
+
+	*ptep = pte;
+}
+
+#define	pte_clear(ptep)		pte_store((ptep), (pt_entry_t)0ULL)
 
 #define	pde_store(pdep, pde)	pte_store((pdep), (pde))
 

==== //depot/projects/smpng/sys/amd64/pci/pci_bus.c#10 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.109 2004/06/03 05:58:30 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.110 2004/10/11 21:51:27 peter Exp $");
 
 #include "opt_cpu.h"
 
@@ -35,6 +35,7 @@
 #include <sys/kernel.h>
 #include <sys/malloc.h>
 #include <sys/module.h>
+#include <sys/sysctl.h>
 
 #include <dev/pci/pcivar.h>
 #include <dev/pci/pcireg.h>
@@ -42,6 +43,7 @@
 #include <isa/isavar.h>
 #include <machine/legacyvar.h>
 #include <machine/pci_cfgreg.h>
+#include <machine/resource.h>
 
 #include "pcib_if.h"
 
@@ -81,8 +83,8 @@
 
 static const char *
 legacy_pcib_is_host_bridge(int bus, int slot, int func,
-			  u_int32_t id, u_int8_t class, u_int8_t subclass,
-			  u_int8_t *busnum)
+			  uint32_t id, uint8_t class, uint8_t subclass,
+			  uint8_t *busnum)
 {
 	const char *s = NULL;
 
@@ -262,7 +264,38 @@
 	return ENOENT;
 }
 
+SYSCTL_DECL(_hw_pci);
 
+static int legacy_host_mem_start = 0x80000000;
+/* No TUNABLE_ULONG :-( */
+TUNABLE_INT("hw.pci.host_mem_start", &legacy_host_mem_start);
+SYSCTL_INT(_hw_pci, OID_AUTO, host_mem_start, CTLFLAG_RDTUN,
+    &legacy_host_mem_start, 0x80000000,
+    "Limit the host bridge memory to being above this address.  Must be\n\
+set at boot via a tunable.");
+
+static struct resource *
+legacy_pcib_alloc_resource(device_t dev, device_t child, int type, int *rid,
+    u_long start, u_long end, u_long count, u_int flags)
+{
+    /*
+     * If no memory preference is given, use upper 32MB slot most
+     * bioses use for their memory window.  Typically other bridges
+     * before us get in the way to assert their preferences on memory.
+     * Hardcoding like this sucks, so a more MD/MI way needs to be
+     * found to do it.  This is typically only used on older laptops
+     * that don't have pci busses behind pci bridge, so assuming > 32MB
+     * is liekly OK.
+     *
+     * However, this can cause problems for other chipsets, so we make
+     * this tunable by hw.pci.host_mem_start.
+     */
+    if (type == SYS_RES_MEMORY && start == 0UL && end == ~0UL)
+	start = legacy_host_mem_start;
+    return (bus_generic_alloc_resource(dev, child, type, rid, start, end,
+	count, flags));
+}
+
 static device_method_t legacy_pcib_methods[] = {
 	/* Device interface */
 	DEVMETHOD(device_identify,	legacy_pcib_identify),
@@ -276,7 +309,7 @@
 	DEVMETHOD(bus_print_child,	bus_generic_print_child),
 	DEVMETHOD(bus_read_ivar,	legacy_pcib_read_ivar),
 	DEVMETHOD(bus_write_ivar,	legacy_pcib_write_ivar),
-	DEVMETHOD(bus_alloc_resource,	bus_generic_alloc_resource),
+	DEVMETHOD(bus_alloc_resource,	legacy_pcib_alloc_resource),
 	DEVMETHOD(bus_release_resource,	bus_generic_release_resource),
 	DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
 	DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),

==== //depot/projects/smpng/sys/arm/conf/SIMICS#3 (text+ko) ====

@@ -15,7 +15,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first 
 # in NOTES.
 #
-# $FreeBSD: src/sys/arm/conf/SIMICS,v 1.3 2004/09/23 22:53:50 cognet Exp $
+# $FreeBSD: src/sys/arm/conf/SIMICS,v 1.4 2004/10/11 14:42:06 cognet Exp $
 
 machine		arm
 ident		SIMICS
@@ -40,6 +40,7 @@
 options 	UFS_ACL			#Support for access control lists
 options 	UFS_DIRHASH		#Improve performance on big directories
 options 	MD_ROOT			#MD is a potential root device
+options		MD_ROOT_SIZE=65535
 options		ROOTDEVNAME=\"ufs:md0\"
 options 	NFSCLIENT		#Network Filesystem Client
 options 	NFSSERVER		#Network Filesystem Server

==== //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#5 (text+ko) ====

@@ -47,7 +47,9 @@
 
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.4 2004/09/23 22:32:33 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.5 2004/10/11 14:41:38 cognet Exp $");
+
+#include "opt_md.h"
 
 #define _ARM32_BUS_DMA_PRIVATE
 #include <sys/param.h>
@@ -131,7 +133,9 @@
 struct pcpu __pcpu;
 struct pcpu *pcpup = &__pcpu;
 
-#define MDSIZE 8192
+#ifndef MD_ROOT_SIZE
+#error SIMICS needs MD_ROOT and MD_ROOT_SIZE
+#endif
 /* Physical and virtual addresses for some global pages */
 
 vm_paddr_t phys_avail[10];
@@ -218,7 +222,7 @@
 	fake_preload[i++] = MDROOT_ADDR;
 	fake_preload[i++] = MODINFO_SIZE;
 	fake_preload[i++] = sizeof(uint32_t);
-	fake_preload[i++] = MDSIZE * 1024;
+	fake_preload[i++] = MD_ROOT_SIZE * 1024;
 	fake_preload[i++] = 0;
 	fake_preload[i] = 0;
 	preload_metadata = (void *)fake_preload;
@@ -236,7 +240,6 @@
 	kerneldatasize = (u_int32_t)&end - (u_int32_t)KERNEL_TEXT_BASE;
 	symbolsize = 0;
 	freemempos = (vm_offset_t)round_page(physical_freestart);
-	printf("freemempos %p\n", (void*)freemempos);
 	memset((void *)freemempos, 0, 256*1024);
 		/* Define a macro to simplify memory allocation */
 #define	valloc_pages(var, np)			\
@@ -311,12 +314,10 @@
 	pmap_map_chunk(l1pagetable, KERNBASE, KERNBASE,
 	   (uint32_t)&end - KERNBASE, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
 	/* Map the stack pages */
-	printf("avant irq %p %p\n", (void*)irqstack.pv_va, (void*)irqstack.pv_pa);
 	pmap_map_chunk(l1pagetable, irqstack.pv_va, irqstack.pv_pa,
 	    IRQ_STACK_SIZE * PAGE_SIZE, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
-	printf("apres irq\n");
 	pmap_map_chunk(l1pagetable, md_addr.pv_va, md_addr.pv_pa,
-	    MDSIZE * 1024, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
+	    MD_ROOT_SIZE * 1024, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
 	pmap_map_chunk(l1pagetable, abtstack.pv_va, abtstack.pv_pa,
 	    ABT_STACK_SIZE * PAGE_SIZE, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
 	pmap_map_chunk(l1pagetable, undstack.pv_va, undstack.pv_pa,
@@ -365,7 +366,6 @@
 	 * Since the ARM stacks use STMFD etc. we must set r13 to the top end
 	 * of the stack memory.
 	 */
-	printf("init subsystems: stacks\n");
 	set_stackptr(PSR_IRQ32_MODE,
 	    irqstack.pv_va + IRQ_STACK_SIZE * PAGE_SIZE);
 	set_stackptr(PSR_ABT32_MODE,

==== //depot/projects/smpng/sys/cam/scsi/scsi_da.h#2 (text+ko) ====

@@ -46,7 +46,7 @@
  *
  * Ported to run under 386BSD by Julian Elischer (julian@tfs.com) Sept 1992
  *
- * $FreeBSD: src/sys/cam/scsi/scsi_da.h,v 1.5 2000/05/21 23:57:52 ken Exp $
+ * $FreeBSD: src/sys/cam/scsi/scsi_da.h,v 1.6 2004/10/12 08:55:02 bms Exp $
  */
 
 #ifndef	_SCSI_SCSI_DA_H
@@ -151,6 +151,9 @@
 #define	REASSIGN_BLOCKS		0x07
 #define MODE_SELECT		0x15
 #define MODE_SENSE		0x1a
+#define	READ_FORMAT_CAPACITIES	0x23
+#define	WRITE_AND_VERIFY	0x2e
+#define	VERIFY			0x2f
 #define READ_DEFECT_DATA_10	0x37
 #define READ_DEFECT_DATA_12	0xb7
 
@@ -182,6 +185,82 @@
 	u_int8_t pat_length[2];
 };
 
+struct scsi_read_format_capacities
+{
+	uint8_t	opcode;		/* READ_FORMAT_CAPACITIES */
+	uint8_t	byte2;		/* top 3 bits contain LUN */
+#define	SRFC_LUN_MASK	0xE0
+	uint8_t	reserved0[5];
+	uint8_t	alloc_length[2];
+	uint8_t	reserved1[3];
+};
+
+struct scsi_verify
+{
+	uint8_t	opcode;		/* VERIFY */
+	uint8_t	lun;		/* All other bits should be zero */
+#define	SVFY_RELADR	0x01
+#define	SVFY_BYTECHK	0x02
+#define	SVFY_DPO	0x10
+#define	SVFY_LUN_MASK	0xE0	/* Top 3 MSBs are LUN */
+	uint8_t	addr[4];	/* LBA to begin verification at */
+	uint8_t	reserved0[1];
+	uint8_t	len[2];		/* number of blocks to verify */
+	uint8_t	reserved1[3];
+};
+
+struct scsi_write_and_verify
+{
+	uint8_t	opcode;		/* WRITE_AND_VERIFY */
+	uint8_t	byte2;		/* top 3 bits are the LUN */
+#define	SWVY_LUN_MASK	0xE0
+#define	SWVY_RELADR	0x01
+#define	SWVY_BYTECHK	0x02
+#define	SWVY_DPO	0x10
+	uint8_t	addr[4];	/* LBA to begin verification at */
+	uint8_t	reserved0[1];
+	uint8_t	len[2];		/* number of blocks to write and verify */
+	uint8_t	reserved1[3];
+};
+
+/*
+ * Replies to READ_FORMAT_CAPACITIES look like this:
+ *
+ * struct format_capacity_list_header
+ * struct format_capacity_descriptor[1..n]
+ *
+ * These are similar, but not totally identical to, the
+ * defect list used to format a rigid disk.
+ *
+ * The appropriate csio_decode() format string looks like this:
+ * "{} *i3 {Len} i1 {Blocks} i4 {} *b6 {Code} b2 {Blocklen} i3"
+ *
+ * If the capacity_list_length is greater than
+ * sizeof(struct format_capacity_descriptor), then there are
+ * additional format capacity descriptors available which
+ * denote which format(s) the drive can handle.
+ *
+ * (Source: USB Mass Storage UFI Specification)
+ */
+
+struct format_capacity_list_header {
+	uint8_t	unused[3];
+	uint8_t	capacity_list_length;
+};
+
+struct format_capacity_descriptor {
+	uint8_t	nblocks[4];	/* total number of LBAs */
+	uint8_t	byte4;		/* only present in max/cur descriptor */
+#define FCD_CODE_MASK	0x03	/* mask for code field above */
+#define FCD_UNFORMATTED	0x01	/* unformatted media present,
+				 * maximum capacity returned */
+#define FCD_FORMATTED	0x02	/* formatted media present,
+				 * current capacity returned */
+#define FCD_NOMEDIA	0x03	/* no media present,
+				 * maximum device capacity returned */
+	uint8_t	block_length[3];	/* length of an LBA in bytes */
+};
+
 struct scsi_reassign_blocks_data
 {
 	u_int8_t reserved[2];

==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#12 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.24 2004/10/05 18:51:10 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.25 2004/10/11 22:04:15 peter Exp $");
 
 #include "opt_compat.h"
 
@@ -1203,25 +1203,21 @@
 
 	if (uap->namelen > CTL_MAXNAME || uap->namelen < 2)
 		return (EINVAL);
-
- 	error = copyin(uap->name, &name, uap->namelen * sizeof(int));
+ 	error = copyin(uap->name, name, uap->namelen * sizeof(int));
  	if (error)
 		return (error);
-
 	mtx_lock(&Giant);
-
 	if (uap->oldlenp)
 		oldlen = fuword32(uap->oldlenp);
 	else
 		oldlen = 0;
 	error = userland_sysctl(td, name, uap->namelen,
 		uap->old, &oldlen, 1,
-		uap->new, uap->newlen, &j);
+		uap->new, uap->newlen, &j, SCTL_MASK32);
 	if (error && error != ENOMEM)
 		goto done2;
-	if (uap->oldlenp) {
+	if (uap->oldlenp)
 		suword32(uap->oldlenp, j);
-	}
 done2:
 	mtx_unlock(&Giant);
 	return (error);

==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#11 (text+ko) ====

@@ -2,8 +2,8 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.28 2004/07/14 00:03:51 peter Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.40 2004/07/14 00:03:30 peter Exp 
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.29 2004/10/06 14:23:00 mtm Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.41 2004/10/06 14:20:57 mtm Exp 
  */
 
 #ifndef _FREEBSD32_SYSPROTO_H_

==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#11 (text+ko) ====

@@ -2,8 +2,8 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.28 2004/07/14 00:03:51 peter Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.40 2004/07/14 00:03:30 peter Exp 
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.29 2004/10/06 14:23:00 mtm Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.41 2004/10/06 14:20:57 mtm Exp 
  */
 
 #define	FREEBSD32_SYS_syscall	0

==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#11 (text+ko) ====

@@ -2,8 +2,8 @@
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.19 2004/07/14 00:03:51 peter Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.40 2004/07/14 00:03:30 peter Exp 
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.20 2004/10/06 14:23:00 mtm Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.41 2004/10/06 14:20:57 mtm Exp 
  */
 
 const char *freebsd32_syscallnames[] = {

==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#11 (text+ko) ====

@@ -2,8 +2,8 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.29 2004/07/14 00:03:51 peter Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.40 2004/07/14 00:03:30 peter Exp 
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.30 2004/10/06 14:23:00 mtm Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.41 2004/10/06 14:20:57 mtm Exp 
  */
 
 #include "opt_compat.h"
@@ -456,7 +456,7 @@
 	{ 0, (sy_call_t *)nosys },			/* 428 = __acl_aclcheck_link */
 	{ 0, (sy_call_t *)nosys },			/* 429 = sigwait */
 	{ SYF_MPSAFE | AS(thr_create_args), (sy_call_t *)thr_create },	/* 430 = thr_create */
-	{ SYF_MPSAFE | 0, (sy_call_t *)thr_exit },	/* 431 = thr_exit */
+	{ SYF_MPSAFE | AS(thr_exit_args), (sy_call_t *)thr_exit },	/* 431 = thr_exit */
 	{ SYF_MPSAFE | AS(thr_self_args), (sy_call_t *)thr_self },	/* 432 = thr_self */
 	{ SYF_MPSAFE | AS(thr_kill_args), (sy_call_t *)thr_kill },	/* 433 = thr_kill */
 	{ SYF_MPSAFE | AS(_umtx_lock_args), (sy_call_t *)_umtx_lock },	/* 434 = _umtx_lock */

==== //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#11 (text+ko) ====

@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.40 2004/07/14 00:03:30 peter Exp $
+ $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.41 2004/10/06 14:20:57 mtm Exp $
 ;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
 ;	from: src/sys/kern/syscalls.master 1.107
 ;
@@ -596,7 +596,7 @@
 ; XXX implement
 429	UNIMPL	sigwait
 430	MNOPROTO { int thr_create(ucontext_t *ctx, long *id, int flag s); }
-431	MNOPROTO { void thr_exit(void); }
+431	MNOPROTO { void thr_exit(long *state); }
 432	MNOPROTO { int thr_self(long *id); }
 433	MNOPROTO { int thr_kill(long id, int sig); }
 434	MNOPROTO { int _umtx_lock(struct umtx *umtx); }

==== //depot/projects/smpng/sys/compat/linux/linux_util.h#10 (text+ko) ====

@@ -28,7 +28,7 @@
  *
  * from: svr4_util.h,v 1.5 1994/11/18 02:54:31 christos Exp
  * from: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp
- * $FreeBSD: src/sys/compat/linux/linux_util.h,v 1.22 2004/08/15 11:52:45 tjr Exp $
+ * $FreeBSD: src/sys/compat/linux/linux_util.h,v 1.23 2004/10/10 18:34:30 dwmalone Exp $
  */
 
 /*
@@ -80,17 +80,17 @@
 int linux_emul_convpath(struct thread *, char *, enum uio_seg, char **, int);
 int linux_emul_find(struct thread *, caddr_t *, char *, char **, int);
 
-#define CHECKALT(p, sgp, path, i) 					\
+#define CHECKALT(td, sgp, path, i) 					\
 	do {								\
 		int _error;						\
 									\
-		_error = linux_emul_find(p, sgp, path, &path, i);	\
+		_error = linux_emul_find(td, sgp, path, &path, i);	\
 		if (_error == EFAULT)					\
 			return (_error);				\
 	} while (0)
 
-#define CHECKALTEXIST(p, sgp, path) CHECKALT(p, sgp, path, 0)
-#define CHECKALTCREAT(p, sgp, path) CHECKALT(p, sgp, path, 1)
+#define CHECKALTEXIST(td, sgp, path) CHECKALT(td, sgp, path, 0)
+#define CHECKALTCREAT(td, sgp, path) CHECKALT(td, sgp, path, 1)
 
 #define LCONVPATH(td, upath, pathp, i) 					\
 	do {								\
@@ -108,9 +108,9 @@
 
 #define DUMMY(s)							\
 int									\
-linux_ ## s(struct thread *p, struct linux_ ## s ## _args *args)	\
+linux_ ## s(struct thread *td, struct linux_ ## s ## _args *args)	\
 {									\
-	return (unimplemented_syscall(p, #s));				\
+	return (unimplemented_syscall(td, #s));				\
 }									\
 struct __hack
 

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

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.955 2004/09/30 07:04:03 phk Exp $
+# $FreeBSD: src/sys/conf/files,v 1.956 2004/10/08 00:24:30 brooks Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -1252,7 +1252,6 @@
 net/if_tun.c		optional tun
 net/if_tap.c		optional tap
 net/if_vlan.c		optional vlan
-net/net_osdep.c		standard
 net/netisr.c		standard
 net/ppp_deflate.c	optional ppp_deflate
 net/ppp_tty.c		optional ppp

==== //depot/projects/smpng/sys/conf/files.i386#68 (text+ko) ====

@@ -1,7 +1,7 @@
 # This file tells config what files go into building a kernel,
 # files marked standard are always included.
 #
-# $FreeBSD: src/sys/conf/files.i386,v 1.504 2004/08/16 12:25:47 obrien Exp $
+# $FreeBSD: src/sys/conf/files.i386,v 1.505 2004/10/07 16:21:03 imp Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -282,6 +282,7 @@
 i386/isa/mse.c			optional	mse
 i386/isa/nmi.c			standard
 i386/isa/npx.c			optional	npx
+i386/isa/pbio.c			optional	pbio
 i386/isa/pcf.c			optional	pcf
 i386/isa/pcvt/pcvt_drv.c	optional	vt
 i386/isa/pcvt/pcvt_ext.c	optional	vt

==== //depot/projects/smpng/sys/conf/files.sparc64#43 (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.59 2004/08/15 22:59:34 marius Exp $
+# $FreeBSD: src/sys/conf/files.sparc64,v 1.60 2004/10/09 07:31:02 yongari 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,8 @@
 crypto/des/des_enc.c		optional	ipsec ipsec_esp
 crypto/blowfish/bf_enc.c	optional	crypto
 crypto/des/des_enc.c		optional	crypto
+dev/auxio/auxio.c		optional	auxio sbus
+dev/auxio/auxio.c		optional	auxio ebus
 dev/esp/esp_sbus.c		optional	esp sbus
 dev/esp/lsi64854.c		optional	esp sbus
 dev/fb/creator.c		optional	creator sc

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

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.57 2004/09/23 22:53:22 cognet Exp $
+# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.59 2004/10/07 20:36:56 kensmith Exp $
 
 # Part of a unified Makefile for building kernels.  This part contains all
 # of the definitions that need to be before %BEFORE_DEPEND.

==== //depot/projects/smpng/sys/conf/kmod.mk#35 (text+ko) ====

@@ -1,43 +1,43 @@
 #	From: @(#)bsd.prog.mk	5.26 (Berkeley) 6/25/91
-# $FreeBSD: src/sys/conf/kmod.mk,v 1.167 2004/08/29 02:00:50 iedowse Exp $
+# $FreeBSD: src/sys/conf/kmod.mk,v 1.171 2004/10/12 15:08:24 ru Exp $
 #
-# The include file <bsd.kmod.mk> handles installing Kernel Loadable Device
-# drivers (KLD's).
+# The include file <bsd.kmod.mk> handles building and installing loadable
+# kernel modules.
 #
 #
 # +++ variables +++
 #
 # CLEANFILES	Additional files to remove for the clean and cleandir targets.
 #
-# KMOD          The name of the kernel module to build.
+# EXPORT_SYMS	A list of symbols that should be exported from the module,
+#		or the name of a file containing a list of symbols, or YES
+#		to export all symbols.  If not defined, no symbols are
+#		exported.
+#
+# KMOD		The name of the kernel module to build.
 #
 # KMODDIR	Base path for kernel modules (see kld(4)). [/boot/kernel]
 #
-# KMODOWN	KLD owner. [${BINOWN}]
+# KMODOWN	Module file owner. [${BINOWN}]
 #
-# KMODGRP	KLD group. [${BINGRP}]
+# KMODGRP	Module file group. [${BINGRP}]
 #
-# KMODMODE	KLD mode. [${BINMODE}]
+# KMODMODE	Module file mode. [${BINMODE}]
 #
 # KMODLOAD	Command to load a kernel module [/sbin/kldload]
 #
 # KMODUNLOAD	Command to unload a kernel module [/sbin/kldunload]
 #
-# PROG          The name of the kernel module to build.
-#		If not supplied, ${KMOD}.o is used.
+# MFILES	Optionally a list of interfaces used by the module.
+#		This file contains a default list of interfaces.
 #
-# SRCS          List of source files
+# PROG		The name of the kernel module to build.
+#		If not supplied, ${KMOD}.ko is used.
 #
-# DESTDIR	Change the tree where the module gets installed. [not set]
+# SRCS		List of source files.
 #
-# MFILES	Optionally a list of interfaces used by the module.
-#		This file contains a default list of interfaces.
+# DESTDIR	The tree where the module gets installed. [not set]
 #
-# EXPORT_SYMS	A list of symbols that should be exported from the module,
-#		or the name of a file containing a list of symbols, or YES
-#		to export all symbols.  If not defined, no symbols are
-#		exported.
-#
 # +++ targets +++
 #
 # 	install:
@@ -48,14 +48,11 @@
 #		is executed.
 #
 # 	load:
-#		Load KLD.
+#		Load a module.
 #
 # 	unload:
-#		Unload KLD.
+#		Unload a module.
 #
-# bsd.obj.mk: clean, cleandir and obj
-# bsd.dep.mk: cleandepend, depend and tags
-#
 
 AWK?=		awk
 KMODLOAD?=	/sbin/kldload
@@ -63,7 +60,7 @@
 OBJCOPY?=	objcopy
 
 .if defined(KMODDEPS)
-.error "Do not use KMODDEPS on 5.0+, use MODULE_VERSION/MODULE_DEPEND"
+.error "Do not use KMODDEPS on 5.0+; use MODULE_VERSION/MODULE_DEPEND"
 .endif
 
 .include <bsd.init.mk>
@@ -88,10 +85,10 @@
 .endif
 CFLAGS+=	${NOSTDINC} -I- ${INCLMAGIC} ${_ICFLAGS}
 .if defined(KERNBUILDDIR)
-CFLAGS+=       -include ${KERNBUILDDIR}/opt_global.h
+CFLAGS+=	-include ${KERNBUILDDIR}/opt_global.h
 .endif
 
-# Add -I paths for system headers.  Individual KLD makefiles don't
+# Add -I paths for system headers.  Individual module 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@
@@ -130,7 +127,7 @@
 CFLAGS+=	-fno-omit-frame-pointer
 .endif
 
-OBJS+=  ${SRCS:N*.h:R:S/$/.o/g}
+OBJS+=	${SRCS:N*.h:R:S/$/.o/g}
 
 .if !defined(PROG)
 PROG=	${KMOD}.ko
@@ -154,7 +151,7 @@
 
 EXPORT_SYMS?=	NO
 .if ${EXPORT_SYMS} != YES
-CLEANFILES+=	${.OBJDIR}/export_syms
+CLEANFILES+=	export_syms
 .endif
 
 .if ${MACHINE_ARCH} != amd64
@@ -166,15 +163,14 @@
 .if defined(EXPORT_SYMS)
 .if ${EXPORT_SYMS} != YES
 .if ${EXPORT_SYMS} == NO
-	touch ${.OBJDIR}/export_syms
+	touch export_syms
 .elif !exists(${.CURDIR}/${EXPORT_SYMS})
-	echo ${EXPORT_SYMS} > ${.OBJDIR}/export_syms
+	echo ${EXPORT_SYMS} > export_syms
 .else
-	grep -v '^#' < ${EXPORT_SYMS} >  ${.OBJDIR}/export_syms
+	grep -v '^#' < ${EXPORT_SYMS} > export_syms
 .endif
 	awk -f ${SYSDIR}/conf/kmod_syms.awk ${.TARGET} \
-		${.OBJDIR}/export_syms | \
-	xargs -J% ${OBJCOPY} % ${.TARGET}
+	    export_syms | xargs -J% ${OBJCOPY} % ${.TARGET}
 .endif
 .endif
 .if !defined(DEBUG_FLAGS) && ${MACHINE_ARCH} == amd64
@@ -186,7 +182,6 @@
 all: objwarn ${PROG}
 
 beforedepend: ${_ILINKS}
-	@rm -f .depend
 
 # Ensure that the links exist without depending on it when it exists which
 # causes all the modules to be rebuilt when the directory pointed to changes.
@@ -217,7 +212,7 @@
 	${ECHO} ${.TARGET} "->" $$path ; \
 	ln -s $$path ${.TARGET}

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



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