Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Jun 2004 20:42:13 GMT
From:      Julian Elischer <julian@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 55398 for review
Message-ID:  <200406202042.i5KKgDhR056392@repoman.freebsd.org>

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

Change 55398 by julian@julian_ref on 2004/06/20 20:41:20

	Bring into sync with -current HEAD  (IFC)

Affected files ...

.. //depot/projects/nsched/sys/alpha/include/cpu.h#4 integrate
.. //depot/projects/nsched/sys/amd64/amd64/fpu.c#4 integrate
.. //depot/projects/nsched/sys/amd64/amd64/pmap.c#9 integrate
.. //depot/projects/nsched/sys/amd64/include/cpu.h#4 integrate
.. //depot/projects/nsched/sys/amd64/include/pmap.h#8 integrate
.. //depot/projects/nsched/sys/arm/arm/nexus_io.c#3 integrate
.. //depot/projects/nsched/sys/arm/arm/pmap.c#2 integrate
.. //depot/projects/nsched/sys/arm/include/bus.h#3 integrate
.. //depot/projects/nsched/sys/arm/sa11x0/assabet_machdep.c#2 integrate
.. //depot/projects/nsched/sys/arm/sa11x0/sa11x0.c#2 integrate
.. //depot/projects/nsched/sys/arm/sa11x0/sa11x0_io.c#3 integrate
.. //depot/projects/nsched/sys/arm/sa11x0/sa11x0_ost.c#2 integrate
.. //depot/projects/nsched/sys/boot/forth/loader.conf#3 integrate
.. //depot/projects/nsched/sys/boot/i386/boot0/boot0.S#4 integrate
.. //depot/projects/nsched/sys/boot/pc98/libpc98/biosdisk.c#3 integrate
.. //depot/projects/nsched/sys/cam/scsi/scsi_target.c#3 integrate
.. //depot/projects/nsched/sys/coda/coda.h#3 integrate
.. //depot/projects/nsched/sys/coda/coda_fbsd.c#4 integrate
.. //depot/projects/nsched/sys/coda/coda_venus.c#3 integrate
.. //depot/projects/nsched/sys/compat/freebsd32/freebsd32_misc.c#3 integrate
.. //depot/projects/nsched/sys/compat/linux/linux_ioctl.c#3 integrate
.. //depot/projects/nsched/sys/compat/linux/linux_ioctl.h#3 integrate
.. //depot/projects/nsched/sys/compat/linux/linux_stats.c#3 integrate
.. //depot/projects/nsched/sys/compat/svr4/svr4_socket.c#2 integrate
.. //depot/projects/nsched/sys/compat/svr4/svr4_socket.h#2 integrate
.. //depot/projects/nsched/sys/compat/svr4/svr4_stream.c#3 integrate
.. //depot/projects/nsched/sys/compat/svr4/svr4_types.h#2 integrate
.. //depot/projects/nsched/sys/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate
.. //depot/projects/nsched/sys/contrib/pf/net/pf.c#4 integrate
.. //depot/projects/nsched/sys/contrib/pf/net/pf_ioctl.c#5 integrate
.. //depot/projects/nsched/sys/contrib/pf/net/pf_norm.c#4 integrate
.. //depot/projects/nsched/sys/dev/acpica/Osd/OsdHardware.c#3 integrate
.. //depot/projects/nsched/sys/dev/acpica/Osd/OsdSynch.c#3 integrate
.. //depot/projects/nsched/sys/dev/acpica/acpi_cpu.c#6 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#4 integrate
.. //depot/projects/nsched/sys/dev/ata/atapi-cam.c#2 integrate
.. //depot/projects/nsched/sys/dev/cp/if_cp.c#4 integrate
.. //depot/projects/nsched/sys/dev/ctau/if_ct.c#5 integrate
.. //depot/projects/nsched/sys/dev/cx/if_cx.c#6 integrate
.. //depot/projects/nsched/sys/dev/cy/cy.c#6 integrate
.. //depot/projects/nsched/sys/dev/dcons/dcons.c#5 integrate
.. //depot/projects/nsched/sys/dev/digi/digi.c#6 integrate
.. //depot/projects/nsched/sys/dev/ed/if_ed_pci.c#2 integrate
.. //depot/projects/nsched/sys/dev/firewire/fwdev.c#4 integrate
.. //depot/projects/nsched/sys/dev/firewire/sbp.c#4 integrate
.. //depot/projects/nsched/sys/dev/led/led.c#4 integrate
.. //depot/projects/nsched/sys/dev/nmdm/nmdm.c#6 integrate
.. //depot/projects/nsched/sys/dev/null/null.c#3 integrate
.. //depot/projects/nsched/sys/dev/snp/snp.c#4 integrate
.. //depot/projects/nsched/sys/dev/sound/pcm/dsp.c#3 integrate
.. //depot/projects/nsched/sys/dev/sound/pcm/mixer.c#3 integrate
.. //depot/projects/nsched/sys/dev/syscons/syscons.c#4 integrate
.. //depot/projects/nsched/sys/dev/usb/ehcireg.h#2 integrate
.. //depot/projects/nsched/sys/dev/usb/usbdevs#5 integrate
.. //depot/projects/nsched/sys/dev/usb/usbdevs.h#5 integrate
.. //depot/projects/nsched/sys/dev/usb/usbdevs_data.h#5 integrate
.. //depot/projects/nsched/sys/dev/vinum/vinum.c#3 integrate
.. //depot/projects/nsched/sys/dev/vinum/vinumconfig.c#2 integrate
.. //depot/projects/nsched/sys/dev/vinum/vinumio.c#3 integrate
.. //depot/projects/nsched/sys/fs/devfs/devfs_devs.c#3 integrate
.. //depot/projects/nsched/sys/fs/devfs/devfs_vnops.c#3 integrate
.. //depot/projects/nsched/sys/fs/fifofs/fifo_vnops.c#6 integrate
.. //depot/projects/nsched/sys/fs/portalfs/portal_vnops.c#3 integrate
.. //depot/projects/nsched/sys/fs/specfs/spec_vnops.c#5 integrate
.. //depot/projects/nsched/sys/geom/geom_dev.c#3 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum.c#2 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum_drive.c#2 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum_plex.c#2 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum_volume.c#2 integrate
.. //depot/projects/nsched/sys/gnu/ext2fs/ext2_mount.h#4 integrate
.. //depot/projects/nsched/sys/gnu/ext2fs/inode.h#4 integrate
.. //depot/projects/nsched/sys/i386/i386/bios.c#5 integrate
.. //depot/projects/nsched/sys/i386/i386/machdep.c#10 integrate
.. //depot/projects/nsched/sys/i386/i386/pmap.c#6 integrate
.. //depot/projects/nsched/sys/i386/include/cpu.h#4 integrate
.. //depot/projects/nsched/sys/i386/include/pmap.h#5 integrate
.. //depot/projects/nsched/sys/i386/isa/npx.c#5 integrate
.. //depot/projects/nsched/sys/ia64/ia64/pmap.c#6 integrate
.. //depot/projects/nsched/sys/ia64/include/cpu.h#4 integrate
.. //depot/projects/nsched/sys/isofs/cd9660/cd9660_node.h#4 integrate
.. //depot/projects/nsched/sys/isofs/cd9660/cd9660_rrip.c#3 integrate
.. //depot/projects/nsched/sys/kern/kern_acct.c#2 integrate
.. //depot/projects/nsched/sys/kern/kern_conf.c#4 integrate
.. //depot/projects/nsched/sys/kern/kern_descrip.c#6 integrate
.. //depot/projects/nsched/sys/kern/kern_exit.c#11 integrate
.. //depot/projects/nsched/sys/kern/kern_proc.c#8 integrate
.. //depot/projects/nsched/sys/kern/kern_shutdown.c#4 integrate
.. //depot/projects/nsched/sys/kern/kern_thread.c#24 integrate
.. //depot/projects/nsched/sys/kern/kern_time.c#3 integrate
.. //depot/projects/nsched/sys/kern/subr_prf.c#3 integrate
.. //depot/projects/nsched/sys/kern/sys_socket.c#4 integrate
.. //depot/projects/nsched/sys/kern/sysv_shm.c#3 integrate
.. //depot/projects/nsched/sys/kern/tty_cons.c#4 integrate
.. //depot/projects/nsched/sys/kern/tty_pty.c#6 integrate
.. //depot/projects/nsched/sys/kern/tty_tty.c#3 integrate
.. //depot/projects/nsched/sys/kern/uipc_socket.c#5 integrate
.. //depot/projects/nsched/sys/kern/uipc_socket2.c#6 integrate
.. //depot/projects/nsched/sys/kern/uipc_syscalls.c#8 integrate
.. //depot/projects/nsched/sys/kern/uipc_usrreq.c#5 integrate
.. //depot/projects/nsched/sys/kern/vfs_aio.c#3 integrate
.. //depot/projects/nsched/sys/kern/vfs_bio.c#4 integrate
.. //depot/projects/nsched/sys/kern/vfs_mount.c#4 integrate
.. //depot/projects/nsched/sys/kern/vfs_subr.c#6 integrate
.. //depot/projects/nsched/sys/kern/vfs_syscalls.c#7 integrate
.. //depot/projects/nsched/sys/modules/zlib/Makefile#1 branch
.. //depot/projects/nsched/sys/net/bpf.c#5 integrate
.. //depot/projects/nsched/sys/net/if_tap.c#4 integrate
.. //depot/projects/nsched/sys/net/if_tun.c#3 integrate
.. //depot/projects/nsched/sys/net/pfil.h#2 integrate
.. //depot/projects/nsched/sys/net/zlib.c#2 integrate
.. //depot/projects/nsched/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#6 integrate
.. //depot/projects/nsched/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#4 integrate
.. //depot/projects/nsched/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#5 integrate
.. //depot/projects/nsched/sys/netgraph/ng_fec.c#4 integrate
.. //depot/projects/nsched/sys/netgraph/ng_ksocket.c#5 integrate
.. //depot/projects/nsched/sys/netinet/in_gif.c#3 integrate
.. //depot/projects/nsched/sys/netinet/ip_input.c#5 integrate
.. //depot/projects/nsched/sys/netinet/tcp_output.c#4 integrate
.. //depot/projects/nsched/sys/netinet/tcp_usrreq.c#4 integrate
.. //depot/projects/nsched/sys/netsmb/smb_dev.c#4 integrate
.. //depot/projects/nsched/sys/netsmb/smb_trantcp.c#3 integrate
.. //depot/projects/nsched/sys/nfs4client/nfs4_vn_subs.c#2 integrate
.. //depot/projects/nsched/sys/nfsclient/nfs_subs.c#4 integrate
.. //depot/projects/nsched/sys/nfsserver/nfs_serv.c#5 integrate
.. //depot/projects/nsched/sys/nfsserver/nfs_syscalls.c#5 integrate
.. //depot/projects/nsched/sys/sparc64/include/cpu.h#4 integrate
.. //depot/projects/nsched/sys/sys/_lock.h#3 integrate
.. //depot/projects/nsched/sys/sys/_types.h#3 integrate
.. //depot/projects/nsched/sys/sys/acct.h#3 integrate
.. //depot/projects/nsched/sys/sys/conf.h#5 integrate
.. //depot/projects/nsched/sys/sys/file.h#3 integrate
.. //depot/projects/nsched/sys/sys/kernel.h#2 integrate
.. //depot/projects/nsched/sys/sys/param.h#6 integrate
.. //depot/projects/nsched/sys/sys/proc.h#14 integrate
.. //depot/projects/nsched/sys/sys/snoop.h#2 integrate
.. //depot/projects/nsched/sys/sys/stat.h#4 integrate
.. //depot/projects/nsched/sys/sys/sysctl.h#5 integrate
.. //depot/projects/nsched/sys/sys/systm.h#5 integrate
.. //depot/projects/nsched/sys/sys/tty.h#5 integrate
.. //depot/projects/nsched/sys/sys/types.h#5 integrate
.. //depot/projects/nsched/sys/sys/user.h#4 integrate
.. //depot/projects/nsched/sys/sys/vnode.h#5 integrate
.. //depot/projects/nsched/sys/ufs/ffs/ffs_snapshot.c#4 integrate
.. //depot/projects/nsched/sys/ufs/ufs/dinode.h#3 integrate
.. //depot/projects/nsched/sys/vm/swap_pager.c#4 integrate
.. //depot/projects/nsched/sys/vm/vm_page.c#6 integrate
.. //depot/projects/nsched/sys/vm/vm_param.h#3 integrate

Differences ...

==== //depot/projects/nsched/sys/alpha/include/cpu.h#4 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.38 2004/06/16 09:46:26 phk Exp $ */
+/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.39 2004/06/20 03:52:48 bde Exp $ */
 /* From: NetBSD: cpu.h,v 1.18 1997/09/23 23:17:49 mjacob Exp */
 
 /*
@@ -66,7 +66,7 @@
 /*
  * CTL_MACHDEP definitions.
  */
-#define	CPU_CONSDEV		1	/* struct cdev *: console terminal device */
+#define	CPU_CONSDEV		1	/* dev_t: console terminal device */
 #define	CPU_ROOT_DEVICE		2	/* string: root device name */
 #define	CPU_UNALIGNED_PRINT	3	/* int: print unaligned accesses */
 #define	CPU_UNALIGNED_FIX	4	/* int: fix unaligned accesses */

==== //depot/projects/nsched/sys/amd64/amd64/fpu.c#4 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.153 2004/06/08 01:35:48 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.154 2004/06/18 04:01:54 peter Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -125,6 +125,8 @@
 	ldmxcsr(mxcsr);
 	fxsave(&fpu_cleanstate);
 	start_emulating();
+	bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp));
+	bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm));
 	fpu_cleanstate_ready = 1;
 	intr_restore(savecrit);
 }
@@ -384,7 +386,6 @@
 {
 	struct pcb *pcb;
 	register_t s;
-	u_short control;
 
 	if (PCPU_GET(fpcurthread) == curthread) {
 		printf("fpudna: fpcurthread == curthread %d times\n",
@@ -409,13 +410,10 @@
 
 	if ((pcb->pcb_flags & PCB_FPUINITDONE) == 0) {
 		/*
-		 * This is the first time this thread has used the FPU or
-		 * the PCB doesn't contain a clean FPU state.  Explicitly
-		 * initialize the FPU and load the default control word.
+		 * This is the first time this thread has used the FPU,
+		 * explicitly load sanitized registers.
 		 */
-		fninit();
-		control = __INITIAL_FPUCW__;
-		fldcw(&control);
+		fxrstor(&fpu_cleanstate);
 		pcb->pcb_flags |= PCB_FPUINITDONE;
 	} else
 		fxrstor(&pcb->pcb_save);

==== //depot/projects/nsched/sys/amd64/amd64/pmap.c#9 (text+ko) ====

@@ -75,7 +75,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.474 2004/06/16 07:51:19 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.477 2004/06/20 06:10:59 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -196,13 +196,11 @@
  */
 pt_entry_t *CMAP1 = 0;
 caddr_t CADDR1 = 0;
-static pt_entry_t *msgbufmap;
 struct msgbuf *msgbufp = 0;
 
 /*
  * Crashdump maps.
  */
-static pt_entry_t *pt_crashdumpmap;
 static caddr_t crashdumpmap;
 
 static PMAP_INLINE void	free_pv_entry(pv_entry_t pv);
@@ -441,7 +439,7 @@
 	vm_paddr_t *firstaddr;
 {
 	vm_offset_t va;
-	pt_entry_t *pte;
+	pt_entry_t *pte, *unused;
 
 	avail_start = *firstaddr;
 
@@ -493,14 +491,12 @@
 	/*
 	 * Crashdump maps.
 	 */
-	SYSMAP(caddr_t, pt_crashdumpmap, crashdumpmap, MAXDUMPPGS);
+	SYSMAP(caddr_t, unused, crashdumpmap, MAXDUMPPGS)
 
 	/*
 	 * msgbufp is used to map the system message buffer.
-	 * XXX msgbufmap is not used.
 	 */
-	SYSMAP(struct msgbuf *, msgbufmap, msgbufp,
-	       atop(round_page(MSGBUF_SIZE)))
+	SYSMAP(struct msgbuf *, unused, msgbufp, atop(round_page(MSGBUF_SIZE)))
 
 	virtual_avail = va;
 
@@ -1227,10 +1223,6 @@
 		*pd = VM_PAGE_TO_PHYS(m) | PG_U | PG_RW | PG_V | PG_A | PG_M;
 	}
 
-	vm_page_lock_queues();
-	vm_page_wakeup(m);
-	vm_page_unlock_queues();
-
 	return m;
 }
 
@@ -2574,14 +2566,17 @@
 {
 	pd_entry_t *pde;
 	pt_entry_t *pte;
+	boolean_t rv;
 
+	rv = FALSE;
+	PMAP_LOCK(pmap);
 	pde = pmap_pde(pmap, addr);
-	if (pde == NULL || (*pde & PG_V) == 0) 
-		return (FALSE);
-	pte = vtopte(addr);
-	if (*pte & PG_V)
-		return (FALSE);
-	return (TRUE);
+	if (pde != NULL && (*pde & PG_V)) {
+		pte = vtopte(addr);
+		rv = (*pte & PG_V) == 0;
+	}
+	PMAP_UNLOCK(pmap);
+	return (rv);
 }
 
 /*

==== //depot/projects/nsched/sys/amd64/include/cpu.h#4 (text+ko) ====

@@ -30,7 +30,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)cpu.h	5.4 (Berkeley) 5/9/91
- * $FreeBSD: src/sys/amd64/include/cpu.h,v 1.72 2004/06/16 09:46:28 phk Exp $
+ * $FreeBSD: src/sys/amd64/include/cpu.h,v 1.73 2004/06/20 03:52:48 bde Exp $
  */
 
 #ifndef _MACHINE_CPU_H_
@@ -65,7 +65,7 @@
 /*
  * CTL_MACHDEP definitions.
  */
-#define CPU_CONSDEV		1	/* struct cdev *: console terminal device */
+#define CPU_CONSDEV		1	/* dev_t: console terminal device */
 #define	CPU_ADJKERNTZ		2	/* int:	timezone offset	(seconds) */
 #define	CPU_DISRTCSET		3	/* int: disable resettodr() call */
 #define	CPU_WALLCLOCK		5	/* int:	indicates wall CMOS clock */

==== //depot/projects/nsched/sys/amd64/include/pmap.h#8 (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.119 2004/06/14 01:17:50 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.120 2004/06/19 14:58:34 bde Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -129,9 +129,9 @@
 
 #ifndef LOCORE
 
+#include <sys/queue.h>
 #include <sys/_lock.h>
 #include <sys/_mutex.h>
-#include <sys/queue.h>
 
 typedef u_int64_t pd_entry_t;
 typedef u_int64_t pt_entry_t;

==== //depot/projects/nsched/sys/arm/arm/nexus_io.c#3 (text+ko) ====

@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/nexus_io.c,v 1.2 2004/06/16 09:46:28 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/nexus_io.c,v 1.3 2004/06/17 17:51:47 cognet Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -75,8 +75,6 @@
 	/* get kernel virtual address */
 	0, /* there is no linear mapping */
 
-	NULL,
-
 	/* barrier */
 	nexus_bs_barrier,
 

==== //depot/projects/nsched/sys/arm/arm/pmap.c#2 (text+ko) ====

@@ -144,7 +144,7 @@
  */
 /* Include header files */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.1 2004/05/14 11:46:42 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.3 2004/06/19 20:50:50 cognet Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/kernel.h>
@@ -155,7 +155,6 @@
 #include <sys/mman.h>
 #include <sys/smp.h>
 #include <sys/sx.h>
-#include <sys/pool.h>
 #include <sys/sched.h>
 
 #include <vm/vm.h>
@@ -4190,7 +4189,7 @@
 	 * the duration of the copy so that no other mappings can
 	 * be created while we have a potentially aliased mapping.
 	 */
-	(void) pmap_clean_page(src_pg->md.pvh_list, TRUE);
+	(void) pmap_clean_page(TAILQ_FIRST(&src_pg->md.pv_list), TRUE);
 
 	/*
 	 * Map the pages into the page hook points, copy them, and purge

==== //depot/projects/nsched/sys/arm/include/bus.h#3 (text+ko) ====

@@ -67,7 +67,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/arm/include/bus.h,v 1.2 2004/06/16 09:46:28 phk Exp $
+ * $FreeBSD: src/sys/arm/include/bus.h,v 1.3 2004/06/17 17:51:47 cognet Exp $
  */
 
 #ifndef _MACHINE_BUS_H_
@@ -117,9 +117,6 @@
 	/* get kernel virtual address */
 	void *		(*bs_vaddr) (void *, bus_space_handle_t);
 
-	/* mmap bus space for user */
-	int		(*bs_mmap) (struct cdev *, vm_offset_t, vm_paddr_t *, int);
-
 	/* barrier */
 	void		(*bs_barrier) (void *, bus_space_handle_t,
 			    bus_size_t, bus_size_t, int);
@@ -258,12 +255,6 @@
 	(*(t)->bs_vaddr)((t)->bs_cookie, (h))
 
 /*
- * MMap bus space for a user application.
- */
-#define bus_space_mmap(t, a, o, p, f)					\
-	(*(t)->bs_mmap)((t)->bs_cookie, (a), (o), (p), (f))
-
-/*
  * Bus barrier operations.
  */
 #define	bus_space_barrier(t, h, o, l, f)				\

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

@@ -47,7 +47,7 @@
 
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.1 2004/05/14 11:46:45 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.2 2004/06/17 17:52:12 cognet Exp $");
 
 #define _ARM32_BUS_DMA_PRIVATE
 #include <sys/param.h>
@@ -257,16 +257,6 @@
 	valloc_pages(kernelstack, KSTACK_PAGES);
 
 
-#ifdef VERBOSE_INIT_ARM
-	printf("IRQ stack: p0x%08lx v0x%08lx\n", irqstack.pv_pa,
-	    irqstack.pv_va); 
-	printf("ABT stack: p0x%08lx v0x%08lx\n", abtstack.pv_pa,
-	    abtstack.pv_va); 
-	printf("UND stack: p0x%08lx v0x%08lx\n", undstack.pv_pa,
-	    undstack.pv_va); 
-	printf("SVC stack: p0x%08lx v0x%08lx\n", kernelstack.pv_pa,
-	    kernelstack.pv_va); 
-#endif
 	/*
 	 * Allocate memory for the l1 and l2 page tables. The scheme to avoid
 	 * wasting memory by allocating the l1pt on the first 16k memory was
@@ -285,10 +275,6 @@
 	l1pagetable = kernel_l1pt.pv_pa;
 
 
-	/* XXX bla **/
-#if 0
-	bcopy((void*)0xd0300000, &mfs_root, MD_ROOT_SIZE*1024);
-#endif
 	/* Map the L2 pages tables in the L1 page table */
 	pmap_link_l2pt(l1pagetable, 0x00000000,
 	    &kernel_pt_table[KERNEL_PT_SYS]);
@@ -349,7 +335,7 @@
 	cpu_tlb_flushID();
 	cpu_domains(DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2));
 
-		/*
+	/*
 	 * Pages were allocated during the secondary bootstrap for the
 	 * stacks for different CPU modes.
 	 * We must now set the r13 registers in the different CPU modes to
@@ -358,7 +344,6 @@
 	 * 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,
@@ -383,56 +368,8 @@
 
 	bootverbose = 1;
 
-#if 0
-	set_cpufuncs();
-#endif	
 	/* Set stack for exception handlers */
 	
-#if 0
-	printf("arm_init: physical_pages = %08x\n", physical_pages);
-	printf("arm_init: kernel_l1pt: pa = %08x, va = %08x\n",
-	    kernel_l1pt.pv_pa, kernel_l1pt.pv_va);
-	printf("arm_init: proc0_uarea: pa = %08x, va = %08x\n",
-	    proc0_uarea.pv_pa, proc0_uarea.pv_va);
-	printf("arm_init: proc0_kstack: pa = %08x, va = %08x\n",
-	    proc0_kstack.pv_pa, proc0_kstack.pv_va);
-#endif
-
-/*	printf("arm_init: physfree = %08x\n", physical_freestart);
-	printf("arm_init: first = %08x\n", first);
-	printf("arm_init: end = %08x\n", (uint32_t) &end);
-	
-	printf("arm_init: params = %08x\n", params);
-	printf("arm_init: params: page_size = %08x\n", params->u1.s.page_size);
-	printf("arm_init: params: nrpages = %08x\n", params->u1.s.nr_pages);
-	printf("arm_init: params: ramdisk_size = %08x\n", params->u1.s.ramdisk_size);
-	printf("arm_init: params: flags = %08x\n", params->u1.s.flags);
-	printf("arm_init: params: rootdev = %08x\n", params->u1.s.rootdev);
-	printf("arm_init: params: video_num_cols = %08x\n", params->u1.s.video_num_cols);
-	printf("arm_init: params: video_num_rows = %08x\n", params->u1.s.video_num_rows);
-	printf("arm_init: params: video_x = %08x\n", params->u1.s.video_x);
-	printf("arm_init: params: video_y = %08x\n", params->u1.s.video_y);
-	printf("arm_init: params: memc_control_reg = %08x\n", params->u1.s.memc_control_reg);
-	printf("arm_init: params: sounddefault = %02x\n", params->u1.s.sounddefault);
-	printf("arm_init: params: adfsdrives = %02x\n", params->u1.s.adfsdrives);
-	printf("arm_init: params: bytes_per_char_h = %02x\n", params->u1.s.bytes_per_char_h);
-	printf("arm_init: params: bytes_per_char_v = %02x\n", params->u1.s.bytes_per_char_v);
-	for(i = 0; i < 4; i++) {
-		printf("arm_init: params: pages_in_bank[%d] = %08x\n", i, params->u1.s.pages_in_bank[i]);
-	}
-	printf("arm_init: params: pages_in_vram = %08x\n", params->u1.s.pages_in_vram);
-	printf("arm_init: params: initrd_start = %08x\n", params->u1.s.initrd_start);
-	printf("arm_init: params: initrd_size = %08x\n", params->u1.s.initrd_size);
-	printf("arm_init: params: rd_start = %08x\n", params->u1.s.rd_start);
-	printf("arm_init: params: system_options = %08x\n", params->u1.s.system_options);
-	printf("arm_init: params: system_serial_num = %08x\n", params->u1.s.system_serial_num);
-	for(i = 0; i < 8; i++) {
-		printf("arm_init: params: paths[%d] = %s\n", i, (params->u2.paths[i][0]) ? params->u2.paths[i] : "(null)");
-	}
-	printf("arm_init: params: magic = %08x\n", params->u2.s.magic);
-	printf("arm_init: params: commandline = %s\n", (params->commandline[0]) ? params->commandline : "(null)");
-	printf("arm_init: params: bootsetting = %s\n", (params->bootsetting[0]) ? params->bootsetting : "(null)");*/
-	
 	proc_linkup(&proc0, &ksegrp0, &kse0, &thread0);
 	proc0.p_uarea = (struct user *) proc0_uarea.pv_va;
 	thread0.td_kstack = kernelstack.pv_va;
@@ -443,13 +380,6 @@
 	
 	
 	/* Enable MMU, I-cache, D-cache, write buffer. */
-#if 0
-	printf("it was %p\n", (void *)cpufunc_control(0,0));
-	printf("ca c fait\n");
-	printf("before\n");
-	printf("mmu enabled\n");
-	printf("now we have %p\n", (void*)cpufunc_control(0,0));
-#endif
 
 	cpufunc_control(0x337f, 0x107d);
 	got_mmu = 1;
@@ -463,35 +393,14 @@
 	mutex_init();
 	
 	
-#if 0
-	phys_avail[0] = 0x00000000;
-	phys_avail[1] = physmem;
-	phys_avail[2] = 0;
-#endif
-#if 0
-	phys_avail[1] = physical_start;
-	phys_avail[2] = physical_freestart;
-	phys_avail[3] = physmem;
-#endif
-#if 0
-	phys_avail[3] = 0;
-#endif
-#if 0
-	phys_avail[1] = 0x01000000 - 1;
-#endif
 	phys_avail[0] = round_page(freemempos);
 	phys_avail[1] = 0xc0000000 + 0x02000000 - 1;
 	phys_avail[2] = 0;
 	phys_avail[3] = 0;
-#if 0
-	phys_avail[4] = 0x00000000;
-	phys_avail[5] = 0x00000000;
-#endif
 	
 	/* Do basic tuning, hz etc */
 	init_param1();
 	init_param2(physmem);
-	printf("arm_init: done!\n");
 	avail_end = 0xc0000000 + 0x02000000 - 1;
 	return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP));
 }

==== //depot/projects/nsched/sys/arm/sa11x0/sa11x0.c#2 (text+ko) ====

@@ -57,7 +57,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0.c,v 1.1 2004/05/14 11:46:45 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0.c,v 1.2 2004/06/19 17:38:32 cognet Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -68,6 +68,7 @@
 #include <sys/malloc.h>
 #include <sys/bus.h>
 #include <sys/interrupt.h>
+#include <sys/module.h>
 
 #include <vm/vm.h>
 #include <vm/vm_extern.h>

==== //depot/projects/nsched/sys/arm/sa11x0/sa11x0_io.c#3 (text+ko) ====

@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0_io.c,v 1.2 2004/06/16 09:46:29 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0_io.c,v 1.3 2004/06/17 17:51:48 cognet Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/queue.h>
@@ -79,9 +79,6 @@
 	/* get kernel virtual address */
 	sa11x0_bs_vaddr,
 
-	/* mmap bus space for userland */
-	sa11x0_bs_mmap,
-
 	/* barrier */
 	sa11x0_bs_barrier,
 
@@ -224,13 +221,6 @@
 	return (0);
 }
 
-int
-sa11x0_bs_mmap(struct cdev *t, vm_offset_t offset, vm_paddr_t *paddr, int nprot)
-{
-	*paddr = offset;
-	return (0);
-}
-
 void *
 sa11x0_bs_vaddr(t, bsh)
 	void *t;

==== //depot/projects/nsched/sys/arm/sa11x0/sa11x0_ost.c#2 (text+ko) ====

@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0_ost.c,v 1.1 2004/05/14 11:46:45 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0_ost.c,v 1.2 2004/06/19 17:38:32 cognet Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -47,6 +47,7 @@
 #include <sys/time.h>
 #include <sys/bus.h>
 #include <sys/clock.h>
+#include <sys/module.h>
 
 #include <machine/bus.h>
 #include <sys/rman.h>

==== //depot/projects/nsched/sys/boot/forth/loader.conf#3 (text+ko) ====

@@ -6,7 +6,7 @@
 #
 # All arguments must be in double quotes.
 #
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.77 2004/04/15 12:12:15 cperciva Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.78 2004/06/20 15:58:24 josef Exp $
 
 ##############################################################
 ###  Basic configuration options  ############################
@@ -280,6 +280,7 @@
 snd_via8233_load="NO"		# via8233
 snd_via82c686_load="NO"		# via82c686
 snd_driver_load="NO"		# All sound drivers
+#pcm0.line="0"			# Default value for a mixer channel
 
 ##############################################################
 ###  USB modules  ############################################

==== //depot/projects/nsched/sys/boot/i386/boot0/boot0.S#4 (text+ko) ====

@@ -13,7 +13,7 @@
  * warranties of merchantability and fitness for a particular
  * purpose.
  *
- * $FreeBSD: src/sys/boot/i386/boot0/boot0.S,v 1.9 2004/06/11 09:45:18 phk Exp $
+ * $FreeBSD: src/sys/boot/i386/boot0/boot0.S,v 1.10 2004/06/17 12:02:25 phk Exp $
  */
 
 /* A 512-byte boot manager. */
@@ -96,9 +96,8 @@
 /*
  * Initialize the serial port.  bioscom preserves the driver number in DX.
  */
-		movb COMSPEED,%al		# defined by Makefile
-		movb $0x00,%ah			# BIOS: Set COM Port
-		call bioscom
+		movw COMSPEED,%ax		# defined by Makefile
+		callw bioscom
 #endif /* SIO */
 /*
  * Check what flags were loaded with us, specifically, Use a predefined Drive.
@@ -372,7 +371,6 @@
 #else /* SIO */
 putchr:
 		movb $0x01,%ah			# BIOS: Send
-		xorw %cx,%cx 			# No timeout
 bioscom:
 		pushw %dx			# Save
 		xorw %dx,%dx 			# Use COM1

==== //depot/projects/nsched/sys/boot/pc98/libpc98/biosdisk.c#3 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.29 2004/06/16 18:21:22 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.30 2004/06/17 11:44:05 phk Exp $");
 
 /*
  * BIOS disk device handling.
@@ -989,7 +989,7 @@
     return (0);
 		default:
 		 /* DO NOTHING */
-			beak;
+			break;
 	}
 
 	return EROFS;

==== //depot/projects/nsched/sys/cam/scsi/scsi_target.c#3 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_target.c,v 1.61 2004/06/16 09:46:31 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_target.c,v 1.62 2004/06/17 17:16:40 phk Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1035,7 +1035,7 @@
 {
 	int u;
 
-	if (*dev != NODEV)
+	if (*dev != NULL)
 		return;
 	if (dev_stdclone(name, NULL, "targ", &u) != 1)
 		return;

==== //depot/projects/nsched/sys/coda/coda.h#3 (text+ko) ====

@@ -27,7 +27,7 @@
  * Mellon the rights to redistribute these changes without encumbrance.
  * 
  * 	@(#) src/sys/coda/coda.h,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $ 
- * $FreeBSD: src/sys/coda/coda.h,v 1.11 2004/06/16 09:46:32 phk Exp $
+ * $FreeBSD: src/sys/coda/coda.h,v 1.12 2004/06/17 17:16:40 phk Exp $
  * 
  */
 
@@ -87,7 +87,7 @@
 typedef unsigned long long u_quad_t;
 #endif
 #else
-#define cdev_t udev_t
+#define cdev_t dev_t
 #endif
 
 #ifdef __CYGWIN32__

==== //depot/projects/nsched/sys/coda/coda_fbsd.c#4 (text+ko) ====

@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/coda/coda_fbsd.c,v 1.34 2004/06/16 09:46:32 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/coda/coda_fbsd.c,v 1.35 2004/06/17 17:16:40 phk Exp $");
 
 #include "vcoda.h"
 
@@ -186,7 +186,7 @@
 {
     int u;
 
-    if (*dev != NODEV)
+    if (*dev != NULL)
 	return;
     if (dev_stdclone(name,NULL,"cfs",&u) != 1)
 	return;

==== //depot/projects/nsched/sys/coda/coda_venus.c#3 (text+ko) ====

@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/coda/coda_venus.c,v 1.20 2004/06/16 09:46:32 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/coda/coda_venus.c,v 1.21 2004/06/17 17:16:40 phk Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -212,7 +212,7 @@
 
     error = coda_call(mdp, Isize, &Osize, (char *)inp);
     if (!error) {
-	*dev =  udev2dev(outp->dev);
+	*dev =  findcdev(outp->dev);
 	*inode = outp->inode;
     }
 

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

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.22 2004/04/24 04:31:59 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.23 2004/06/17 17:16:41 phk Exp $");
 
 #include "opt_compat.h"
 
@@ -1083,13 +1083,13 @@
 }
 
 struct stat32 {
-	udev_t	st_dev;
+	dev_t	st_dev;
 	ino_t	st_ino;
 	mode_t	st_mode;
 	nlink_t	st_nlink;
 	uid_t	st_uid;
 	gid_t	st_gid;
-	udev_t	st_rdev;
+	dev_t	st_rdev;
 	struct timespec32 st_atimespec;
 	struct timespec32 st_mtimespec;
 	struct timespec32 st_ctimespec;

==== //depot/projects/nsched/sys/compat/linux/linux_ioctl.c#3 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.114 2004/06/14 07:26:23 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.119 2004/06/18 14:36:24 bms Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1443,20 +1443,22 @@
 	}
 
 	case LINUX_CDROMREADTOCENTRY: {
-		struct linux_cdrom_tocentry lte, *ltep =
-		    (struct linux_cdrom_tocentry *)args->arg;
+		struct linux_cdrom_tocentry lte;
 		struct ioc_read_toc_single_entry irtse;
-		irtse.address_format = ltep->cdte_format;
-		irtse.track = ltep->cdte_track;
+
+		error = copyin((void *)args->arg, &lte, sizeof(lte));
+		if (error)
+			break;
+		irtse.address_format = lte.cdte_format;
+		irtse.track = lte.cdte_track;
 		error = fo_ioctl(fp, CDIOREADTOCENTRY, (caddr_t)&irtse,
 		    td->td_ucred, td);
 		if (!error) {
-			lte = *ltep;
 			lte.cdte_ctrl = irtse.entry.control;
 			lte.cdte_adr = irtse.entry.addr_type;
 			bsd_to_linux_msf_lba(irtse.address_format,
 			    &irtse.entry.addr, &lte.cdte_addr);
-			copyout(&lte, (void *)args->arg, sizeof(lte));
+			error = copyout(&lte, (void *)args->arg, sizeof(lte));
 		}
 		break;
 	}
@@ -1696,6 +1698,10 @@
 		args->cmd = SETDIR(SOUND_MIXER_WRITE_LINE3);
 		return (ioctl(td, (struct ioctl_args *)args));
 
+	case LINUX_SOUND_MIXER_INFO:
+		args->cmd = SETDIR(SOUND_MIXER_INFO);
+		return (ioctl(td, (struct ioctl_args *)args));
+
 	case LINUX_OSS_GETVERSION: {
 		int version = linux_get_oss_version(td);
 		return (copyout(&version, (void *)args->arg, sizeof(int)));
@@ -1705,6 +1711,10 @@
 		args->cmd = SOUND_MIXER_READ_STEREODEVS;
 		return (ioctl(td, (struct ioctl_args *)args));
 
+	case LINUX_SOUND_MIXER_READ_RECMASK:
+		args->cmd = SOUND_MIXER_READ_RECMASK;
+		return (ioctl(td, (struct ioctl_args *)args));
+
 	case LINUX_SOUND_MIXER_READ_DEVMASK:
 		args->cmd = SOUND_MIXER_READ_DEVMASK;
 		return (ioctl(td, (struct ioctl_args *)args));
@@ -1941,11 +1951,14 @@
 		break;
 
 	case LINUX_VT_SETMODE: {
-		struct vt_mode *mode;
+		struct vt_mode mode;
+		if ((error = copyin((void *)args->arg, &mode, sizeof(mode))))
+			break;
+		if (!ISSIGVALID(mode.frsig) && ISSIGVALID(mode.acqsig))
+			mode.frsig = mode.acqsig;
+		if ((error = copyout(&mode, (void *)args->arg, sizeof(mode))))
+			break;
 		args->cmd = VT_SETMODE;
-		mode = (struct vt_mode *)args->arg;
-		if (!ISSIGVALID(mode->frsig) && ISSIGVALID(mode->acqsig))
-			mode->frsig = mode->acqsig;
 		error = (ioctl(td, (struct ioctl_args *)args));
 		break;
 	}
@@ -2076,6 +2089,20 @@
 	if (error != 0)
 		return (error);
 
+	/* handle the 'request buffer size' case */
+	if (ifc.ifc_buf == NULL) {
+		ifc.ifc_len = 0;
+		TAILQ_FOREACH(ifp, &ifnet, if_link) {
+			TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
+				struct sockaddr *sa = ifa->ifa_addr;
+				if (sa->sa_family == AF_INET)
+					ifc.ifc_len += sizeof(ifr);
+			}
+		}
+		error = copyout(&ifc, uifc, sizeof(ifc));
+		return (error);
+	}
+
 	/* much easier to use uiomove than keep track ourselves */
 	iov.iov_base = ifc.ifc_buf;
 	iov.iov_len = ifc.ifc_len;

==== //depot/projects/nsched/sys/compat/linux/linux_ioctl.h#3 (text+ko) ====

@@ -25,7 +25,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/compat/linux/linux_ioctl.h,v 1.18 2004/06/14 07:26:23 phk Exp $
+ * $FreeBSD: src/sys/compat/linux/linux_ioctl.h,v 1.20 2004/06/18 14:36:24 bms Exp $
  */
 
 #ifndef _LINUX_IOCTL_H_
@@ -227,8 +227,10 @@
 #define	LINUX_SOUND_MIXER_WRITE_LINE1	0x4d0E
 #define	LINUX_SOUND_MIXER_WRITE_LINE2	0x4d0F
 #define	LINUX_SOUND_MIXER_WRITE_LINE3	0x4d10
+#define	LINUX_SOUND_MIXER_INFO		0x4d65
 #define	LINUX_OSS_GETVERSION		0x4d76
 #define	LINUX_SOUND_MIXER_READ_STEREODEVS	0x4dfb
+#define	LINUX_SOUND_MIXER_READ_RECMASK	0x4dfd
 #define	LINUX_SOUND_MIXER_READ_DEVMASK	0x4dfe
 #define	LINUX_SOUND_MIXER_WRITE_RECSRC	0x4dff
 #define	LINUX_SNDCTL_DSP_RESET		0x5000

==== //depot/projects/nsched/sys/compat/linux/linux_stats.c#3 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.59 2004/06/16 09:46:33 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.60 2004/06/17 17:16:41 phk Exp $");
 
 #include "opt_mac.h"
 
@@ -76,7 +76,7 @@
 	 * in FreeBSD but block devices under Linux.

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



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