CVS commit: src/sys/dev/wscons

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 08:25:03 UTC 2012

Modified Files:
src/sys/dev/wscons: wsdisplay_vcons.c wsdisplay_vconsvar.h

Log Message:
bump character buffers and cache to 32bit per character so flags we store
in the upper bits don't get lost
now autogenerated line drawing characters work with VCONS_DRAW_INTR and don't
get lost when switching screens


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/wscons/wsdisplay_vcons.c
cvs rdiff -u -r1.20 -r1.21 src/sys/dev/wscons/wsdisplay_vconsvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/wscons/wsdisplay_vcons.c
diff -u src/sys/dev/wscons/wsdisplay_vcons.c:1.26 src/sys/dev/wscons/wsdisplay_vcons.c:1.27
--- src/sys/dev/wscons/wsdisplay_vcons.c:1.26	Wed May 25 06:13:29 2011
+++ src/sys/dev/wscons/wsdisplay_vcons.c	Wed Jan  4 08:25:03 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: wsdisplay_vcons.c,v 1.26 2011/05/25 06:13:29 macallan Exp $ */
+/*	$NetBSD: wsdisplay_vcons.c,v 1.27 2012/01/04 08:25:03 macallan Exp $ */
 
 /*-
  * Copyright (c) 2005, 2006 Michael Lorenz
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: wsdisplay_vcons.c,v 1.26 2011/05/25 06:13:29 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: wsdisplay_vcons.c,v 1.27 2012/01/04 08:25:03 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -282,11 +282,11 @@ vcons_init_screen(struct vcons_data *vd,
 	cnt = ri-ri_rows * ri-ri_cols;
 #endif
 	scr-scr_attrs = (long *)malloc(cnt * (sizeof(long) + 
-	sizeof(uint16_t)), M_DEVBUF, M_WAITOK);
+	sizeof(uint32_t)), M_DEVBUF, M_WAITOK);
 	if (scr-scr_attrs == NULL)
 		return ENOMEM;
 
-	scr-scr_chars = (uint16_t *)scr-scr_attrs[cnt];
+	scr-scr_chars = (uint32_t *)scr-scr_attrs[cnt];
 
 	ri-ri_ops.allocattr(ri, WS_DEFAULT_FG, WS_DEFAULT_BG, 0, defattr);
 	scr-scr_defattr = *defattr;
@@ -310,7 +310,7 @@ vcons_init_screen(struct vcons_data *vd,
 		if (vd-chars != NULL) free(vd-chars, M_DEVBUF);
 		if (vd-attrs != NULL) free(vd-attrs, M_DEVBUF);
 		vd-cells = size;
-		vd-chars = malloc(size * sizeof(uint16_t), M_DEVBUF, M_WAITOK);
+		vd-chars = malloc(size * sizeof(uint32_t), M_DEVBUF, M_WAITOK);
 		vd-attrs = malloc(size * sizeof(long), M_DEVBUF, M_WAITOK);
 		vcons_invalidate_cache(vd);
 	}
@@ -402,7 +402,7 @@ vcons_do_switch(void *arg)
 void
 vcons_redraw_screen(struct vcons_screen *scr)
 {
-	uint16_t *charptr = scr-scr_chars;
+	uint32_t *charptr = scr-scr_chars;
 	long *attrptr = scr-scr_attrs;
 	struct rasops_info *ri = scr-scr_ri;
 	struct vcons_data *vd = scr-scr_vd;
@@ -457,7 +457,7 @@ vcons_redraw_screen(struct vcons_screen 
 void
 vcons_update_screen(struct vcons_screen *scr)
 {
-	uint16_t *charptr = scr-scr_chars;
+	uint32_t *charptr = scr-scr_chars;
 	long *attrptr = scr-scr_attrs;
 	struct rasops_info *ri = scr-scr_ri;
 	struct vcons_data *vd = scr-scr_vd;
@@ -513,7 +513,8 @@ vcons_ioctl(void *v, void *vs, u_long cm
 	struct lwp *l)
 {
 	struct vcons_data *vd = v;
-	int error;
+	int error = 0;
+
 
 	switch (cmd) {
 	case WSDISPLAYIO_GETWSCHAR:
@@ -526,6 +527,20 @@ vcons_ioctl(void *v, void *vs, u_long cm
 			(struct wsdisplay_char *)data);
 		break;
 
+	case WSDISPLAYIO_SET_POLLING: {
+		int poll = *(int *)data;
+
+		/* first call the driver's ioctl handler */
+		if (vd-ioctl != NULL)
+			error = (*vd-ioctl)(v, vs, cmd, data, flag, l);
+		if (poll) {
+			vcons_enable_polling(vd);
+			vcons_hard_switch(LIST_FIRST(vd-screens));
+		} else
+			vcons_disable_polling(vd);
+		}
+		break;
+
 	default:
 		if (vd-ioctl != NULL)
 			error = (*vd-ioctl)(v, vs, cmd, data, flag, l);
@@ -641,12 +656,12 @@ vcons_copycols_buffer(void *cookie, int 
 	memmove(scr-scr_attrs[offset + to], scr-scr_attrs[offset + from],
 	ncols * sizeof(long));
 	memmove(scr-scr_chars[offset + to], scr-scr_chars[offset + from],
-	ncols * sizeof(uint16_t));
+	ncols * sizeof(uint32_t));
 #else
 	memmove(scr-scr_attrs[to], scr-scr_attrs[from],
 	ncols * sizeof(long));
 	memmove(scr-scr_chars[to], scr-scr_chars[from],
-	ncols * sizeof(uint16_t));
+	ncols * sizeof(uint32_t));
 #endif
 
 #ifdef VCONS_DRAW_INTR
@@ -799,7 +814,7 @@ vcons_copyrows_buffer(void *cookie, int 
 		memmove(scr-scr_attrs[to], scr-scr_attrs[from],
 		scr-scr_offset_to_zero * sizeof(long));
 		memmove(scr-scr_chars[to], scr-scr_chars[from],
-		scr-scr_offset_to_zero * sizeof(uint16_t));
+		scr-scr_offset_to_zero * sizeof(uint32_t));
 	}
 	from = ri-ri_cols * srcrow + offset;
 	to = ri-ri_cols * dstrow + offset;
@@ -813,7 +828,7 @@ vcons_copyrows_buffer(void *cookie, int 
 	memmove(scr-scr_attrs[to], scr-scr_attrs[from],
 	len * sizeof(long));
 	memmove(scr-scr_chars[to], scr-scr_chars[from],
-	len * sizeof(uint16_t));
+	len * sizeof(uint32_t));
 
 #ifdef VCONS_DRAW_INTR
 	atomic_inc_uint(scr-scr_dirty);

Index: src/sys/dev/wscons/wsdisplay_vconsvar.h
diff -u 

CVS commit: src/sys/dev/pci

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 08:38:21 UTC 2012

Modified Files:
src/sys/dev/pci: r128fb.c

Log Message:
generate a better r3g3b2 colour map which actually produces white for 0xff


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/dev/pci/r128fb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/r128fb.c
diff -u src/sys/dev/pci/r128fb.c:1.24 src/sys/dev/pci/r128fb.c:1.25
--- src/sys/dev/pci/r128fb.c:1.24	Wed Jan  4 07:56:35 2012
+++ src/sys/dev/pci/r128fb.c	Wed Jan  4 08:38:20 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: r128fb.c,v 1.24 2012/01/04 07:56:35 macallan Exp $	*/
+/*	$NetBSD: r128fb.c,v 1.25 2012/01/04 08:38:20 macallan Exp $	*/
 
 /*
  * Copyright (c) 2007 Michael Lorenz
@@ -31,7 +31,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: r128fb.c,v 1.24 2012/01/04 07:56:35 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: r128fb.c,v 1.25 2012/01/04 08:38:20 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -205,6 +205,7 @@ r128fb_attach(device_t parent, device_t 
 	bool			is_console;
 	int			i, j;
 	uint32_t		reg, flags;
+	uint8_t			tmp;
 
 	sc-sc_pc = pa-pa_pc;
 	sc-sc_pcitag = pa-pa_tag;
@@ -278,9 +279,23 @@ r128fb_attach(device_t parent, device_t 
 	if (sc-sc_depth == 8) {
 		/* generate an r3g3b2 colour map */
 		for (i = 0; i  256; i++) {
-			sc-sc_cmap_red[i] = i  0xe0;
-			sc-sc_cmap_green[i] = (i  0x1c)  3;
-			sc-sc_cmap_blue[i] = (i  0x03)  6;
+			tmp = i  0xe0;
+			/*
+			 * replicate bits so 0xe0 maps to a red value of 0xff
+			 * in order to make white look actually white
+			 */
+			tmp |= (tmp  3) | (tmp  6);
+			sc-sc_cmap_red[i] = tmp;
+
+			tmp = (i  0x1c)  3;
+			tmp |= (tmp  3) | (tmp  6);
+			sc-sc_cmap_green[i] = tmp;
+
+			tmp = (i  0x03)  6;
+			tmp |= tmp  2;
+			tmp |= tmp  4;
+			sc-sc_cmap_blue[i] = tmp;
+
 			r128fb_putpalreg(sc, i, sc-sc_cmap_red[i],
    sc-sc_cmap_green[i],
    sc-sc_cmap_blue[i]);



CVS commit: src/sys/arch/xen/x86

2012-01-04 Thread Cherry G. Mathew
Module Name:src
Committed By:   cherry
Date:   Wed Jan  4 10:30:24 UTC 2012

Modified Files:
src/sys/arch/xen/x86: cpu.c

Log Message:
Use macro PDP_SIZE instead of numeric constant, for unshared PAE L3 entries.
Thanks jym@


To generate a diff of this commit:
cvs rdiff -u -r1.74 -r1.75 src/sys/arch/xen/x86/cpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/xen/x86/cpu.c
diff -u src/sys/arch/xen/x86/cpu.c:1.74 src/sys/arch/xen/x86/cpu.c:1.75
--- src/sys/arch/xen/x86/cpu.c:1.74	Fri Dec 30 19:18:35 2011
+++ src/sys/arch/xen/x86/cpu.c	Wed Jan  4 10:30:23 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.c,v 1.74 2011/12/30 19:18:35 cherry Exp $	*/
+/*	$NetBSD: cpu.c,v 1.75 2012/01/04 10:30:23 cherry Exp $	*/
 /* NetBSD: cpu.c,v 1.18 2004/02/20 17:35:01 yamt Exp  */
 
 /*-
@@ -66,7 +66,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.74 2011/12/30 19:18:35 cherry Exp $);
+__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.75 2012/01/04 10:30:23 cherry Exp $);
 
 #include opt_ddb.h
 #include opt_multiprocessor.h
@@ -1276,7 +1276,7 @@ pmap_cpu_init_late(struct cpu_info *ci)
 
 	/* Initialise L2 entries 0 - 2: Point them to pmap_kernel() */
 	int i;
-	for (i = 0; i  3; i++ ) {
+	for (i = 0 ; i  PDP_SIZE - 1; i++) {
 		ci-ci_pae_l3_pdir[i] =
 		xpmap_ptom_masked(pmap_kernel()-pm_pdirpa[i]) | PG_V;
 	}



CVS commit: src/sys/arch/xen/xen

2012-01-04 Thread Cherry G. Mathew
Module Name:src
Committed By:   cherry
Date:   Wed Jan  4 10:48:24 UTC 2012

Modified Files:
src/sys/arch/xen/xen: if_xennet_xenbus.c

Log Message:
Tighten up locking in the network driver.
This probably needs more attention since xennet_rx_mbuf_free() hooks
into the network layer.
The locking can also be made finer grained. Performance testing could
add some insights.


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 src/sys/arch/xen/xen/if_xennet_xenbus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/xen/xen/if_xennet_xenbus.c
diff -u src/sys/arch/xen/xen/if_xennet_xenbus.c:1.56 src/sys/arch/xen/xen/if_xennet_xenbus.c:1.57
--- src/sys/arch/xen/xen/if_xennet_xenbus.c:1.56	Wed Dec  7 15:47:43 2011
+++ src/sys/arch/xen/xen/if_xennet_xenbus.c	Wed Jan  4 10:48:24 2012
@@ -1,4 +1,4 @@
-/*  $NetBSD: if_xennet_xenbus.c,v 1.56 2011/12/07 15:47:43 cegger Exp $  */
+/*  $NetBSD: if_xennet_xenbus.c,v 1.57 2012/01/04 10:48:24 cherry Exp $  */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -85,7 +85,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: if_xennet_xenbus.c,v 1.56 2011/12/07 15:47:43 cegger Exp $);
+__KERNEL_RCSID(0, $NetBSD: if_xennet_xenbus.c,v 1.57 2012/01/04 10:48:24 cherry Exp $);
 
 #include opt_xen.h
 #include opt_nfs_boot.h
@@ -790,6 +790,7 @@ xennet_free_rx_buffer(struct xennet_xenb
 	multicall_entry_t mcl[2];
 
 	int s = splbio();
+	mutex_enter(sc-sc_rx_lock);
 	
 	DPRINTF((%s: xennet_free_rx_buffer\n, device_xname(sc-sc_dev)));
 	/* get back memory from RX ring */
@@ -802,18 +803,18 @@ xennet_free_rx_buffer(struct xennet_xenb
 		 */
 		while ((volatile grant_ref_t)rxreq-rxreq_gntref ==
 		GRANT_STACK_REF)
+			mutex_exit(sc-sc_rx_lock);
 			tsleep(xennet_xenbus_detach, PRIBIO, xnet_free, hz/2);
+			mutex_enter(sc-sc_rx_lock);
 
 		if (rxreq-rxreq_gntref != GRANT_INVALID_REF) {
 			/*
 			 * this req is still granted. Get back the page or
 			 * allocate a new one, and remap it.
 			 */
-			mutex_enter(sc-sc_rx_lock);
 			SLIST_INSERT_HEAD(sc-sc_rxreq_head, rxreq,
 			rxreq_next);
 			sc-sc_free_rxreql++;
-			mutex_exit(sc-sc_rx_lock);
 
 			switch (sc-sc_rx_feature) {
 			case FEATURE_RX_COPY:
@@ -868,6 +869,7 @@ xennet_free_rx_buffer(struct xennet_xenb
 		}
 
 	}
+	mutex_exit(sc-sc_rx_lock);
 	splx(s);
 	DPRINTF((%s: xennet_free_rx_buffer done\n, device_xname(sc-sc_dev)));
 }
@@ -880,27 +882,31 @@ xennet_rx_mbuf_free(struct mbuf *m, void
 {
 	struct xennet_rxreq *req = arg;
 	struct xennet_xenbus_softc *sc = req-rxreq_sc;
-
+	
 	mutex_enter(sc-sc_rx_lock);
 
 	/* puts back the RX request in the list of free RX requests */
 	SLIST_INSERT_HEAD(sc-sc_rxreq_head, req, rxreq_next);
 	sc-sc_free_rxreql++;
 
-	mutex_exit(sc-sc_rx_lock);
-
 	/*
 	 * ring needs more requests to be pushed in, allocate some
 	 * RX buffers to catch-up with backend's consumption
 	 */
 	req-rxreq_gntref = GRANT_INVALID_REF;
+	
 	if (sc-sc_free_rxreql = SC_NLIVEREQ(sc) 
 	__predict_true(sc-sc_backend_status == BEST_CONNECTED)) {
+		mutex_exit(sc-sc_rx_lock);
 		xennet_alloc_rx_buffer(sc);
 	}
-
+	else {
+		mutex_exit(sc-sc_rx_lock);
+	}
+	
 	if (m)
 		pool_cache_put(mb_cache, m);
+
 }
 
 /*
@@ -921,6 +927,7 @@ xennet_tx_complete(struct xennet_xenbus_
 again:
 	resp_prod = sc-sc_tx_ring.sring-rsp_prod;
 	xen_rmb();
+	mutex_enter(sc-sc_tx_lock);
 	for (i = sc-sc_tx_ring.rsp_cons; i != resp_prod; i++) {
 		req = sc-sc_txreqs[RING_GET_RESPONSE(sc-sc_tx_ring, i)-id];
 		KASSERT(req-txreq_id ==
@@ -938,12 +945,11 @@ again:
 		else
 			ifp-if_opackets++;
 		xengnt_revoke_access(req-txreq_gntref);
-
 		m_freem(req-txreq_m);
-		mutex_enter(sc-sc_tx_lock);
 		SLIST_INSERT_HEAD(sc-sc_txreq_head, req, txreq_next);
-		mutex_exit(sc-sc_tx_lock);
 	}
+	mutex_exit(sc-sc_tx_lock);
+
 	sc-sc_tx_ring.rsp_cons = resp_prod;
 	/* set new event and check for race with rsp_cons update */
 	sc-sc_tx_ring.sring-rsp_event = 
@@ -995,6 +1001,14 @@ again:
 
 	resp_prod = sc-sc_rx_ring.sring-rsp_prod;
 	xen_rmb(); /* ensure we see replies up to resp_prod */
+
+	/*
+	 * The locking in this loop needs to be done carefully, as
+	 * m_free() will take the sc_rx_lock() via
+	 * xennet_rx_mbuf_free()
+	 */
+	mutex_enter(sc-sc_rx_lock);
+	
 	for (i = sc-sc_rx_ring.rsp_cons; i != resp_prod; i++) {
 		netif_rx_response_t *rx = RING_GET_RESPONSE(sc-sc_rx_ring, i);
 		req = sc-sc_rxreqs[rx-id];
@@ -1035,7 +1049,7 @@ again:
 
 		pa = req-rxreq_pa;
 		va = req-rxreq_va;
-
+		
 		if (sc-sc_rx_feature == FEATURE_RX_FLIP) {
 			/* remap the page */
 			mmu[0].ptr = (ma  PAGE_SHIFT) | MMU_MACHPHYS_UPDATE;
@@ -1064,8 +1078,10 @@ again:
 DPRINTFN(XEDB_EVENT,
 (xennet_handler bad dest\n));
 /* packet not for us */
+mutex_exit(sc-sc_rx_lock);
 xennet_rx_mbuf_free(NULL, (void *)va, PAGE_SIZE,
 req);
+mutex_enter(sc-sc_rx_lock);
 continue;
 			}
 		}
@@ -1073,7 

CVS commit: src/lib/libc/sys

2012-01-04 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Wed Jan  4 10:53:39 UTC 2012

Modified Files:
src/lib/libc/sys: stat.2

Log Message:
Fix a sentence, following a hint by Abhinav Upadhyay.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/lib/libc/sys/stat.2

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/sys/stat.2
diff -u src/lib/libc/sys/stat.2:1.49 src/lib/libc/sys/stat.2:1.50
--- src/lib/libc/sys/stat.2:1.49	Wed Sep 14 11:49:21 2011
+++ src/lib/libc/sys/stat.2	Wed Jan  4 10:53:39 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: stat.2,v 1.49 2011/09/14 11:49:21 apb Exp $
+.\	$NetBSD: stat.2,v 1.50 2012/01/04 10:53:39 wiz Exp $
 .\
 .\ Copyright (c) 1980, 1991, 1993, 1994
 .\	The Regents of the University of California.  All rights reserved.
@@ -108,7 +108,7 @@ The
 .Va st_ino
 and
 .Va st_dev
-fields taken together to uniquely identify the file within the system.
+fields taken together uniquely identify the file within the system.
 Most of the types are defined in
 .Xr types 3 .
 .Pp



CVS commit: src/sbin/fdisk

2012-01-04 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Wed Jan  4 10:57:40 UTC 2012

Modified Files:
src/sbin/fdisk: fdisk.8

Log Message:
Remove trailing whitespace.


To generate a diff of this commit:
cvs rdiff -u -r1.74 -r1.75 src/sbin/fdisk/fdisk.8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sbin/fdisk/fdisk.8
diff -u src/sbin/fdisk/fdisk.8:1.74 src/sbin/fdisk/fdisk.8:1.75
--- src/sbin/fdisk/fdisk.8:1.74	Sat Dec 31 22:18:56 2011
+++ src/sbin/fdisk/fdisk.8	Wed Jan  4 10:57:40 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: fdisk.8,v 1.74 2011/12/31 22:18:56 riz Exp $
+.\	$NetBSD: fdisk.8,v 1.75 2012/01/04 10:57:40 wiz Exp $
 .\
 .Dd December 1, 2011
 .Dt FDISK 8
@@ -60,7 +60,7 @@ and (optionally, depending on the boot c
 for selecting a partition to be booted.
 There can be at most 4 partitions defined in sector 0,
 one of which can be an extended
-partition which can be split into any number of sub-partitions (then called 
+partition which can be split into any number of sub-partitions (then called
 logical partitions).
 .Pp
 The boot code in the MBR is usually invoked by the BIOS or firmware,
@@ -602,7 +602,7 @@ Default location of i386 bootcode
 .It Pa /usr/mdec/mbr_bootsel
 Default location of i386 bootselect code
 .It Pa /usr/mdec/mbr_ext
-Default location of i386 bootselect for extended partitions (i.e., NetBSD on 
+Default location of i386 bootselect for extended partitions (i.e., NetBSD on
 logical partitions)
 .El
 .Sh EXAMPLES



CVS commit: src/sys/arch/usermode/usermode

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 11:53:09 UTC 2012

Modified Files:
src/sys/arch/usermode/usermode: pmap.c

Log Message:
mmap ppl is always  16 so make it an uint8_t


To generate a diff of this commit:
cvs rdiff -u -r1.92 -r1.93 src/sys/arch/usermode/usermode/pmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/usermode/pmap.c
diff -u src/sys/arch/usermode/usermode/pmap.c:1.92 src/sys/arch/usermode/usermode/pmap.c:1.93
--- src/sys/arch/usermode/usermode/pmap.c:1.92	Tue Jan  3 21:28:50 2012
+++ src/sys/arch/usermode/usermode/pmap.c	Wed Jan  4 11:53:09 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.92 2012/01/03 21:28:50 reinoud Exp $ */
+/* $NetBSD: pmap.c,v 1.93 2012/01/04 11:53:09 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2011 Reinoud Zandijk rein...@netbsd.org
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.92 2012/01/03 21:28:50 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.93 2012/01/04 11:53:09 reinoud Exp $);
 
 #include opt_memsize.h
 #include opt_kmempages.h
@@ -50,7 +50,7 @@ struct pv_entry {
 	uintptr_t	pv_ppn;		/* physical page number */
 	uintptr_t	pv_lpn;		/* logical page number  */
 	vm_prot_t	pv_prot;	/* logical protection */
-	int		pv_mmap_ppl;	/* programmed protection */
+	uint8_t		pv_mmap_ppl;	/* programmed protection */
 	uint8_t		pv_vflags;	/* per mapping flags */
 #define PV_WIRED	0x01		/* wired mapping */
 #define PV_UNMANAGED	0x02		/* entered by pmap_kenter_ */



CVS commit: src/sys/arch/usermode/usermode

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 11:56:58 UTC 2012

Modified Files:
src/sys/arch/usermode/usermode: pmap.c

Log Message:
This uint shouldn't be there


To generate a diff of this commit:
cvs rdiff -u -r1.93 -r1.94 src/sys/arch/usermode/usermode/pmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/usermode/pmap.c
diff -u src/sys/arch/usermode/usermode/pmap.c:1.93 src/sys/arch/usermode/usermode/pmap.c:1.94
--- src/sys/arch/usermode/usermode/pmap.c:1.93	Wed Jan  4 11:53:09 2012
+++ src/sys/arch/usermode/usermode/pmap.c	Wed Jan  4 11:56:58 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.93 2012/01/04 11:53:09 reinoud Exp $ */
+/* $NetBSD: pmap.c,v 1.94 2012/01/04 11:56:58 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2011 Reinoud Zandijk rein...@netbsd.org
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.93 2012/01/04 11:53:09 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.94 2012/01/04 11:56:58 reinoud Exp $);
 
 #include opt_memsize.h
 #include opt_kmempages.h
@@ -119,7 +119,7 @@ vaddr_t kmem_user_start, kmem_user_end;
 vaddr_t kmem_kvm_cur_start, kmem_kvm_cur_end;
 
 /* amount of physical memory */
-uint	physmem; 
+int	physmem; 
 int	num_pv_entries = 0;
 int	num_pmaps = 0;
 



CVS commit: src/sys/compat

2012-01-04 Thread Alan Barrett
Module Name:src
Committed By:   apb
Date:   Wed Jan  4 13:45:55 UTC 2012

Modified Files:
src/sys/compat/common: kern_time_50.c
src/sys/compat/sys: clockctl.h

Log Message:
Provide a COMPAT_50 version of the CLOCKCTL_NTP_ADJTIME ioctl.
When time_t was changed from 32 to 64 bits, this ioctl's number
was changed from _IOWR('C', 0x4, struct clockctl_ntp_adjtime)
to _IOWR('C', 0x8, struct clockctl_ntp_adjtime), but the data
structure did not change, so all the compat code has to do is
change the number and try again.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/compat/common/kern_time_50.c
cvs rdiff -u -r1.2 -r1.3 src/sys/compat/sys/clockctl.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/compat/common/kern_time_50.c
diff -u src/sys/compat/common/kern_time_50.c:1.20 src/sys/compat/common/kern_time_50.c:1.21
--- src/sys/compat/common/kern_time_50.c:1.20	Fri Nov 18 03:34:13 2011
+++ src/sys/compat/common/kern_time_50.c	Wed Jan  4 13:45:55 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_time_50.c,v 1.20 2011/11/18 03:34:13 christos Exp $	*/
+/*	$NetBSD: kern_time_50.c,v 1.21 2012/01/04 13:45:55 apb Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: kern_time_50.c,v 1.20 2011/11/18 03:34:13 christos Exp $);
+__KERNEL_RCSID(0, $NetBSD: kern_time_50.c,v 1.21 2012/01/04 13:45:55 apb Exp $);
 
 #ifdef _KERNEL_OPT
 #include opt_aio.h
@@ -53,6 +53,7 @@ __KERNEL_RCSID(0, $NetBSD: kern_time_50
 #include sys/kauth.h
 #include sys/time.h
 #include sys/timex.h
+#include sys/clockctl.h
 #include sys/aio.h
 #include sys/poll.h
 #include sys/syscallargs.h
@@ -669,6 +670,11 @@ compat50_clockctlioctl(dev_t dev, u_long
 		error = clock_settime1(l-l_proc, args-clock_id, tp, true);
 		break;
 	}
+	case CLOCKCTL_ONTP_ADJTIME:
+		/* The ioctl number changed but the data did not change. */
+		error = clockctlioctl(dev, CLOCKCTL_NTP_ADJTIME,
+		data, flags, l);
+		break;
 	default:
 		error = EINVAL;
 	}

Index: src/sys/compat/sys/clockctl.h
diff -u src/sys/compat/sys/clockctl.h:1.2 src/sys/compat/sys/clockctl.h:1.3
--- src/sys/compat/sys/clockctl.h:1.2	Sun Jan 11 02:45:50 2009
+++ src/sys/compat/sys/clockctl.h	Wed Jan  4 13:45:55 2012
@@ -1,4 +1,4 @@
-/*  $NetBSD: clockctl.h,v 1.2 2009/01/11 02:45:50 christos Exp $ */
+/*  $NetBSD: clockctl.h,v 1.3 2012/01/04 13:45:55 apb Exp $ */
 
 /*-
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -59,6 +59,13 @@ struct clockctl50_clock_settime {
 
 #define CLOCKCTL_OCLOCK_SETTIME _IOW('C', 0x3, struct clockctl50_clock_settime)
 
+struct clockctl50_ntp_adjtime {
+	struct timex *tp;
+	register_t retval;
+};
+
+#define CLOCKCTL_ONTP_ADJTIME _IOWR('C', 0x4, struct clockctl50_ntp_adjtime)
+
 #ifdef _KERNEL
 struct lwp;
 int compat50_clockctlioctl(dev_t, u_long, void *, int, struct lwp *);



CVS commit: src/sys/arch/usermode/conf

2012-01-04 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Wed Jan  4 14:04:12 UTC 2012

Modified Files:
src/sys/arch/usermode/conf: GENERIC.common

Log Message:
add options NTP  pseudo-device clockctl


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/usermode/conf/GENERIC.common

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/conf/GENERIC.common
diff -u src/sys/arch/usermode/conf/GENERIC.common:1.10 src/sys/arch/usermode/conf/GENERIC.common:1.11
--- src/sys/arch/usermode/conf/GENERIC.common:1.10	Mon Jan  2 21:48:14 2012
+++ src/sys/arch/usermode/conf/GENERIC.common	Wed Jan  4 14:04:12 2012
@@ -1,9 +1,9 @@
-# $NetBSD: GENERIC.common,v 1.10 2012/01/02 21:48:14 reinoud Exp $
+# $NetBSD: GENERIC.common,v 1.11 2012/01/04 14:04:12 jmcneill Exp $
 
 include arch/usermode/conf/std.usermode
 
 options 	INCLUDE_CONFIG_FILE
-#ident 		GENERIC-$Revision: 1.10 $
+#ident 		GENERIC-$Revision: 1.11 $
 maxusers 	32
 
 makeoptions	DEBUG=-O1 -g3
@@ -11,6 +11,7 @@ makeoptions	DEBUG=-O1 -g3
 options 	SYMTAB_SPACE=35
 
 options 	RTC_OFFSET=0
+options 	NTP
 options 	KTRACE
 #options 	USERCONF
 
@@ -72,6 +73,7 @@ options 	WSDISPLAY_COMPAT_USL
 pseudo-device	loop
 pseudo-device	pty
 pseudo-device	bpfilter
+pseudo-device	clockctl
 pseudo-device	drvctl
 pseudo-device	ksyms
 pseudo-device	wsmux



CVS commit: src/sys/arch/usermode/conf

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 14:09:49 UTC 2012

Modified Files:
src/sys/arch/usermode/conf: std.usermode

Log Message:
Revert HZ to 100 what it was


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/usermode/conf/std.usermode

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/conf/std.usermode
diff -u src/sys/arch/usermode/conf/std.usermode:1.10 src/sys/arch/usermode/conf/std.usermode:1.11
--- src/sys/arch/usermode/conf/std.usermode:1.10	Tue Jan  3 21:28:50 2012
+++ src/sys/arch/usermode/conf/std.usermode	Wed Jan  4 14:09:48 2012
@@ -1,8 +1,8 @@
-# $NetBSD: std.usermode,v 1.10 2012/01/03 21:28:50 reinoud Exp $
+# $NetBSD: std.usermode,v 1.11 2012/01/04 14:09:48 reinoud Exp $
 
 include conf/std
 
-options 	HZ=20
+options 	HZ=100
 options		EXEC_ELF32
 options 	EXEC_ELF64
 options 	EXEC_SCRIPT



CVS commit: src/sys/compat/common

2012-01-04 Thread Alan Barrett
Module Name:src
Committed By:   apb
Date:   Wed Jan  4 14:31:17 UTC 2012

Modified Files:
src/sys/compat/common: kern_time_50.c

Log Message:
Instead of calling clockctl_ioctl directly, lookup the cdevsw and
call its d_ioctl function.  This should fix an undefined reference to
`clockctlioctl' when you build a kernel that has COMPAT_50 but does not
have pseudo-device clockctl.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/compat/common/kern_time_50.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/compat/common/kern_time_50.c
diff -u src/sys/compat/common/kern_time_50.c:1.21 src/sys/compat/common/kern_time_50.c:1.22
--- src/sys/compat/common/kern_time_50.c:1.21	Wed Jan  4 13:45:55 2012
+++ src/sys/compat/common/kern_time_50.c	Wed Jan  4 14:31:17 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_time_50.c,v 1.21 2012/01/04 13:45:55 apb Exp $	*/
+/*	$NetBSD: kern_time_50.c,v 1.22 2012/01/04 14:31:17 apb Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: kern_time_50.c,v 1.21 2012/01/04 13:45:55 apb Exp $);
+__KERNEL_RCSID(0, $NetBSD: kern_time_50.c,v 1.22 2012/01/04 14:31:17 apb Exp $);
 
 #ifdef _KERNEL_OPT
 #include opt_aio.h
@@ -38,6 +38,7 @@ __KERNEL_RCSID(0, $NetBSD: kern_time_50
 #endif
 
 #include sys/param.h
+#include sys/conf.h
 #include sys/systm.h
 #include sys/namei.h
 #include sys/filedesc.h
@@ -625,6 +626,10 @@ compat50_clockctlioctl(dev_t dev, u_long
 struct lwp *l)
 {
 	int error = 0;
+	const struct cdevsw *cd = cdevsw_lookup(dev);
+
+	if (cd == NULL || cd-d_ioctl == NULL)
+		return ENXIO;
 
 	switch (cmd) {
 	case CLOCKCTL_OSETTIMEOFDAY: {
@@ -672,7 +677,7 @@ compat50_clockctlioctl(dev_t dev, u_long
 	}
 	case CLOCKCTL_ONTP_ADJTIME:
 		/* The ioctl number changed but the data did not change. */
-		error = clockctlioctl(dev, CLOCKCTL_NTP_ADJTIME,
+		error = (cd-d_ioctl)(dev, CLOCKCTL_NTP_ADJTIME,
 		data, flags, l);
 		break;
 	default:



CVS commit: src/sys/arch/usermode/dev

2012-01-04 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Wed Jan  4 14:53:58 UTC 2012

Modified Files:
src/sys/arch/usermode/dev: vncfb.c

Log Message:
implement cngetc and cnpollc


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/usermode/dev/vncfb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/dev/vncfb.c
diff -u src/sys/arch/usermode/dev/vncfb.c:1.11 src/sys/arch/usermode/dev/vncfb.c:1.12
--- src/sys/arch/usermode/dev/vncfb.c:1.11	Mon Jan  2 00:20:30 2012
+++ src/sys/arch/usermode/dev/vncfb.c	Wed Jan  4 14:53:57 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: vncfb.c,v 1.11 2012/01/02 00:20:30 jmcneill Exp $ */
+/* $NetBSD: vncfb.c,v 1.12 2012/01/04 14:53:57 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2011 Jared D. McNeill jmcne...@invisible.ca
@@ -35,7 +35,7 @@
 #include opt_wsemul.h
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: vncfb.c,v 1.11 2012/01/02 00:20:30 jmcneill Exp $);
+__KERNEL_RCSID(0, $NetBSD: vncfb.c,v 1.12 2012/01/04 14:53:57 jmcneill Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -651,11 +651,29 @@ vncfb_kbd_ioctl(void *priv, u_long cmd, 
 static void
 vncfb_kbd_cngetc(void *priv, u_int *type, int *data)
 {
+	struct vncfb_softc *sc = priv;
+	thunk_rfb_event_t event;
+
+	for (;;) {
+		if (thunk_rfb_poll(sc-sc_rfb, event)  0) {
+			if (event.message_type == THUNK_RFB_KEY_EVENT) {
+*type = event.data.key_event.down_flag ?
+WSCONS_EVENT_KEY_DOWN : WSCONS_EVENT_KEY_UP;
+*data = event.data.key_event.keysym  0xfff;
+return;
+			}
+		}
+	}
 }
 
 static void
 vncfb_kbd_cnpollc(void *priv, int on)
 {
+	struct vncfb_softc *sc = priv;
+
+	if (!on) {
+		vncfb_intr(sc);
+	}
 }
 
 static void



CVS commit: src/sys/arch/usermode/usermode

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 15:10:45 UTC 2012

Modified Files:
src/sys/arch/usermode/usermode: pmap.c

Log Message:
don't try to unmap pv entries with munmap() that are / were already unmapped


To generate a diff of this commit:
cvs rdiff -u -r1.94 -r1.95 src/sys/arch/usermode/usermode/pmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/usermode/pmap.c
diff -u src/sys/arch/usermode/usermode/pmap.c:1.94 src/sys/arch/usermode/usermode/pmap.c:1.95
--- src/sys/arch/usermode/usermode/pmap.c:1.94	Wed Jan  4 11:56:58 2012
+++ src/sys/arch/usermode/usermode/pmap.c	Wed Jan  4 15:10:45 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.94 2012/01/04 11:56:58 reinoud Exp $ */
+/* $NetBSD: pmap.c,v 1.95 2012/01/04 15:10:45 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2011 Reinoud Zandijk rein...@netbsd.org
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.94 2012/01/04 11:56:58 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.95 2012/01/04 15:10:45 reinoud Exp $);
 
 #include opt_memsize.h
 #include opt_kmempages.h
@@ -758,6 +758,12 @@ pmap_page_deactivate(struct pv_entry *pv
 	uint32_t map_flags;
 	void *addr;
 
+	/* don't try to unmap pv entries that are already unmapped */
+	if (!tlb[pv-pv_lpn])
+		return;
+	if (tlb[pv-pv_lpn]-pv_mmap_ppl == THUNK_PROT_NONE)
+		return;
+
 	map_flags = THUNK_MAP_FILE | THUNK_MAP_FIXED | THUNK_MAP_SHARED;
 	addr = thunk_mmap((void *) va, PAGE_SIZE, THUNK_PROT_NONE,
 		map_flags, mem_fh, pa);



CVS commit: src/sys/arch/usermode/dev

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 15:14:57 UTC 2012

Modified Files:
src/sys/arch/usermode/dev: cpu.c

Log Message:
Zero the memory we claim for the stacks


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/sys/arch/usermode/dev/cpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/dev/cpu.c
diff -u src/sys/arch/usermode/dev/cpu.c:1.59 src/sys/arch/usermode/dev/cpu.c:1.60
--- src/sys/arch/usermode/dev/cpu.c:1.59	Tue Jan  3 12:10:04 2012
+++ src/sys/arch/usermode/dev/cpu.c	Wed Jan  4 15:14:57 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.c,v 1.59 2012/01/03 12:10:04 reinoud Exp $ */
+/* $NetBSD: cpu.c,v 1.60 2012/01/04 15:14:57 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2007 Jared D. McNeill jmcne...@invisible.ca
@@ -30,7 +30,7 @@
 #include opt_hz.h
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.59 2012/01/03 12:10:04 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.60 2012/01/04 15:14:57 reinoud Exp $);
 
 #include sys/param.h
 #include sys/conf.h
@@ -333,9 +333,9 @@ cpu_lwp_fork(struct lwp *l1, struct lwp 
 	memcpy(pcb2, pcb1, sizeof(struct pcb));
 
 	stacksize = 2*PAGE_SIZE;
-	stack_ucp   = malloc(stacksize, M_TEMP, M_WAITOK);
-	stack_syscall_ucp   = malloc(stacksize, M_TEMP, M_WAITOK);
-	stack_pagefault_ucp = malloc(stacksize, M_TEMP, M_WAITOK);
+	stack_ucp   = malloc(stacksize, M_TEMP, M_WAITOK | M_ZERO);
+	stack_syscall_ucp   = malloc(stacksize, M_TEMP, M_WAITOK | M_ZERO);
+	stack_pagefault_ucp = malloc(stacksize, M_TEMP, M_WAITOK | M_ZERO);
 	pcb2-pcb_needfree = true;
 
 	KASSERT(stack_ucp);
@@ -415,7 +415,7 @@ cpu_startup(void)
 
 	/* set up the ucontext for the pagefault */
 	stacksize = 8*PAGE_SIZE;
-	stack_pagefault_ucp = malloc(stacksize, M_TEMP, M_WAITOK);
+	stack_pagefault_ucp = malloc(stacksize, M_TEMP, M_WAITOK | M_ZERO);
 
 	lwp0pcb.pcb_pagefault_ucp.uc_stack.ss_sp = stack_pagefault_ucp;
 	lwp0pcb.pcb_pagefault_ucp.uc_stack.ss_size = stacksize;



CVS commit: src/sys/arch/usermode/dev

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 15:18:58 UTC 2012

Modified Files:
src/sys/arch/usermode/dev: cpu.c

Log Message:
No reason why to have a larger pagefault stackframe for lwp0


To generate a diff of this commit:
cvs rdiff -u -r1.60 -r1.61 src/sys/arch/usermode/dev/cpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/dev/cpu.c
diff -u src/sys/arch/usermode/dev/cpu.c:1.60 src/sys/arch/usermode/dev/cpu.c:1.61
--- src/sys/arch/usermode/dev/cpu.c:1.60	Wed Jan  4 15:14:57 2012
+++ src/sys/arch/usermode/dev/cpu.c	Wed Jan  4 15:18:57 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.c,v 1.60 2012/01/04 15:14:57 reinoud Exp $ */
+/* $NetBSD: cpu.c,v 1.61 2012/01/04 15:18:57 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2007 Jared D. McNeill jmcne...@invisible.ca
@@ -30,7 +30,7 @@
 #include opt_hz.h
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.60 2012/01/04 15:14:57 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.61 2012/01/04 15:18:57 reinoud Exp $);
 
 #include sys/param.h
 #include sys/conf.h
@@ -414,7 +414,7 @@ cpu_startup(void)
 	memcpy(lwp0pcb.pcb_trapret_ucp,   lwp0pcb.pcb_ucp, sizeof(ucontext_t));
 
 	/* set up the ucontext for the pagefault */
-	stacksize = 8*PAGE_SIZE;
+	stacksize = 2*PAGE_SIZE;
 	stack_pagefault_ucp = malloc(stacksize, M_TEMP, M_WAITOK | M_ZERO);
 
 	lwp0pcb.pcb_pagefault_ucp.uc_stack.ss_sp = stack_pagefault_ucp;



CVS commit: src/share/man/man4

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 15:48:54 UTC 2012

Modified Files:
src/share/man/man4: tprof.4

Log Message:
add a missing comma.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/share/man/man4/tprof.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/man/man4/tprof.4
diff -u src/share/man/man4/tprof.4:1.1 src/share/man/man4/tprof.4:1.2
--- src/share/man/man4/tprof.4:1.1	Fri Dec  2 12:17:51 2011
+++ src/share/man/man4/tprof.4	Wed Jan  4 15:48:54 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: tprof.4,v 1.1 2011/12/02 12:17:51 yamt Exp $
+.\	$NetBSD: tprof.4,v 1.2 2012/01/04 15:48:54 yamt Exp $
 .\
 .\ Copyright (c)2011 YAMAMOTO Takashi,
 .\ All rights reserved.
@@ -52,7 +52,7 @@ without keeping compatibility.
 .\ 
 .Sh SEE ALSO
 .Xr tprof_amdpmi 4 ,
-.Xr tprof_pmi 4
+.Xr tprof_pmi 4 ,
 .Xr tprof 8
 .\ 
 .\.Sh HISTORY



CVS commit: src/sys/dev/wsfont

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 15:53:49 UTC 2012

Modified Files:
src/sys/dev/wsfont: wsfont.h

Log Message:
add WSFONT_GLYPH() to get a pointer to a given glyph in a given font


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/dev/wsfont/wsfont.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/wsfont/wsfont.h
diff -u src/sys/dev/wsfont/wsfont.h:1.22 src/sys/dev/wsfont/wsfont.h:1.23
--- src/sys/dev/wsfont/wsfont.h:1.22	Thu Dec 22 05:01:15 2011
+++ src/sys/dev/wsfont/wsfont.h	Wed Jan  4 15:53:49 2012
@@ -1,4 +1,4 @@
-/* 	$NetBSD: wsfont.h,v 1.22 2011/12/22 05:01:15 macallan Exp $	*/
+/* 	$NetBSD: wsfont.h,v 1.23 2012/01/04 15:53:49 macallan Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002 The NetBSD Foundation, Inc.
@@ -34,7 +34,8 @@
 
 #define WSFONT_FLAGS_MASK	0x7f00
 #define WSFONT_FLAG_OPT		0x0100	/* use alternate font */
-
+#define WSFONT_GLYPH(c, font)	((uint8_t *)font-data + \
+		((c) - font-firstchar) * font-stride * font-fontheight)
 /*
  * Example:
  *



CVS commit: src

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 15:54:39 UTC 2012

Modified Files:
src/distrib/sets/lists/base: mi
src/distrib/sets/lists/comp: mi
src/distrib/sets/lists/man: mi
src/usr.bin: Makefile

Log Message:
install fincore.


To generate a diff of this commit:
cvs rdiff -u -r1.974 -r1.975 src/distrib/sets/lists/base/mi
cvs rdiff -u -r1.1719 -r1.1720 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.1361 -r1.1362 src/distrib/sets/lists/man/mi
cvs rdiff -u -r1.204 -r1.205 src/usr.bin/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/base/mi
diff -u src/distrib/sets/lists/base/mi:1.974 src/distrib/sets/lists/base/mi:1.975
--- src/distrib/sets/lists/base/mi:1.974	Sat Dec 17 13:27:49 2011
+++ src/distrib/sets/lists/base/mi	Wed Jan  4 15:54:37 2012
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.974 2011/12/17 13:27:49 tsutsui Exp $
+# $NetBSD: mi,v 1.975 2012/01/04 15:54:37 yamt Exp $
 #
 # Note:	Don't delete entries from here - mark them as obsolete instead,
 #	unless otherwise stated below.
@@ -447,6 +447,7 @@
 ./usr/bin/false	base-util-bin
 ./usr/bin/fgrep	base-util-bin
 ./usr/bin/file	base-util-bin
+./usr/bin/fincorebase-util-bin
 ./usr/bin/find	base-util-bin
 ./usr/bin/fingerbase-util-bin
 ./usr/bin/fmt	base-util-bin

Index: src/distrib/sets/lists/comp/mi
diff -u src/distrib/sets/lists/comp/mi:1.1719 src/distrib/sets/lists/comp/mi:1.1720
--- src/distrib/sets/lists/comp/mi:1.1719	Sun Dec 25 23:28:33 2011
+++ src/distrib/sets/lists/comp/mi	Wed Jan  4 15:54:37 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.1719 2011/12/25 23:28:33 christos Exp $
+#	$NetBSD: mi,v 1.1720 2012/01/04 15:54:37 yamt Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -3578,6 +3578,7 @@
 ./usr/libdata/debug/usr/bin/f77.debug		comp-fortran-debug	gcc=3,gcccmds,debug
 ./usr/libdata/debug/usr/bin/fgen.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/file.debug		comp-util-debug		debug
+./usr/libdata/debug/usr/bin/fincore.debug	comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/find.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/finger.debug	comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/fmt.debug		comp-util-debug		debug

Index: src/distrib/sets/lists/man/mi
diff -u src/distrib/sets/lists/man/mi:1.1361 src/distrib/sets/lists/man/mi:1.1362
--- src/distrib/sets/lists/man/mi:1.1361	Sat Dec 17 13:27:51 2011
+++ src/distrib/sets/lists/man/mi	Wed Jan  4 15:54:39 2012
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1361 2011/12/17 13:27:51 tsutsui Exp $
+# $NetBSD: mi,v 1.1362 2012/01/04 15:54:39 yamt Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -156,6 +156,7 @@
 ./usr/share/man/cat1/fg.0			man-util-catman		.cat
 ./usr/share/man/cat1/fgrep.0			man-util-catman		.cat
 ./usr/share/man/cat1/file.0			man-util-catman		.cat
+./usr/share/man/cat1/fincore.0			man-util-catman		.cat
 ./usr/share/man/cat1/find.0			man-util-catman		.cat
 ./usr/share/man/cat1/finger.0			man-util-catman		.cat
 ./usr/share/man/cat1/fmt.0			man-util-catman		.cat
@@ -3083,6 +3084,7 @@
 ./usr/share/man/html1/fg.html			man-util-htmlman	html
 ./usr/share/man/html1/fgrep.html		man-util-htmlman	html
 ./usr/share/man/html1/file.html			man-util-htmlman	html
+./usr/share/man/html1/fincore.html		man-util-htmlman	html
 ./usr/share/man/html1/find.html			man-util-htmlman	html
 ./usr/share/man/html1/finger.html		man-util-htmlman	html
 ./usr/share/man/html1/fmt.html			man-util-htmlman	html
@@ -5627,6 +5629,7 @@
 ./usr/share/man/man1/fg.1			man-util-man		.man
 ./usr/share/man/man1/fgrep.1			man-util-man		.man
 ./usr/share/man/man1/file.1			man-util-man		.man
+./usr/share/man/man1/fincore.1			man-util-man		.man
 ./usr/share/man/man1/find.1			man-util-man		.man
 ./usr/share/man/man1/finger.1			man-util-man		.man
 ./usr/share/man/man1/fmt.1			man-util-man		.man

Index: src/usr.bin/Makefile
diff -u src/usr.bin/Makefile:1.204 src/usr.bin/Makefile:1.205
--- src/usr.bin/Makefile:1.204	Sat Oct  8 19:16:54 2011
+++ src/usr.bin/Makefile	Wed Jan  4 15:54:37 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.204 2011/10/08 19:16:54 christos Exp $
+#	$NetBSD: Makefile,v 1.205 2012/01/04 15:54:37 yamt Exp $
 #	from: @(#)Makefile	8.3 (Berkeley) 1/7/94
 
 .include bsd.own.mk
@@ -10,7 +10,7 @@ SUBDIR= apply apropos asa at audio audio
 	column comm compress config crunch csplit ctags cut \
 	deroff db dirname du \
 	eject elf2aout elf2ecoff env error expand extattr \
-	false fdformat fgen find finger fmt fold fpr from \
+	false fdformat fgen fincore find finger fmt fold fpr from \
 	fsplit fstat ftp gcore genassym gencat getconf getent getopt gprof \
 	head hexdump iconv id indent infocmp innetgr ipcrm ipcs join jot \
 	kdump ktrace ktruss lam last lastcomm ldd leave \



CVS commit: src

2012-01-04 Thread Matthias Drochner
Module Name:src
Committed By:   drochner
Date:   Wed Jan  4 15:55:37 UTC 2012

Modified Files:
src/crypto/dist/ipsec-tools/src/libipsec: ipsec_set_policy.3 libpfkey.h
policy_token.l
src/lib/libipsec: Makefile config.h
src/sbin/ping6: ping6.c
src/sbin/setkey: Makefile
src/sys/netinet6: Makefile ipsec.h
src/sys/netipsec: Makefile ipsec.h
src/usr.sbin/racoon: Makefile

Log Message:
-consistently use char * for the compiled policy buffer in the
 ipsec_*_policy() functions, as it was documented and used by clients
-remove ipsec_policy_t which was undocumented and only present
 in the KAME version of the ipsec.h header
-misc cleanup of historical artefacts, and to remove unnecessary
 differences between KAME ans FAST_IPSEC


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 \
src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3
cvs rdiff -u -r1.18 -r1.19 \
src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h
cvs rdiff -u -r1.7 -r1.8 \
src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l
cvs rdiff -u -r1.17 -r1.18 src/lib/libipsec/Makefile
cvs rdiff -u -r1.5 -r1.6 src/lib/libipsec/config.h
cvs rdiff -u -r1.78 -r1.79 src/sbin/ping6/ping6.c
cvs rdiff -u -r1.12 -r1.13 src/sbin/setkey/Makefile
cvs rdiff -u -r1.6 -r1.7 src/sys/netinet6/Makefile
cvs rdiff -u -r1.51 -r1.52 src/sys/netinet6/ipsec.h
cvs rdiff -u -r1.2 -r1.3 src/sys/netipsec/Makefile
cvs rdiff -u -r1.29 -r1.30 src/sys/netipsec/ipsec.h
cvs rdiff -u -r1.23 -r1.24 src/usr.sbin/racoon/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3
diff -u src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.15 src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.16
--- src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.15	Fri Mar  5 06:47:58 2010
+++ src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3	Wed Jan  4 15:55:35 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: ipsec_set_policy.3,v 1.15 2010/03/05 06:47:58 tteras Exp $
+.\	$NetBSD: ipsec_set_policy.3,v 1.16 2012/01/04 15:55:35 drochner Exp $
 .\
 .\	$KAME: ipsec_set_policy.3,v 1.16 2003/01/06 21:59:03 sumikawa Exp $
 .\
@@ -43,11 +43,11 @@
 .Sh SYNOPSIS
 .In netinet6/ipsec.h
 .Ft char *
-.Fn ipsec_set_policy char *policy int len
+.Fn ipsec_set_policy const char *policy int len
 .Ft int
 .Fn ipsec_get_policylen char *buf
 .Ft char *
-.Fn ipsec_dump_policy char *buf char *delim
+.Fn ipsec_dump_policy char *buf const char *delim
 .Sh DESCRIPTION
 .Fn ipsec_set_policy
 generates an IPsec policy specification structure, namely

Index: src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h
diff -u src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h:1.18 src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h:1.19
--- src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h:1.18	Fri Dec  3 14:32:52 2010
+++ src/crypto/dist/ipsec-tools/src/libipsec/libpfkey.h	Wed Jan  4 15:55:35 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: libpfkey.h,v 1.18 2010/12/03 14:32:52 tteras Exp $	*/
+/*	$NetBSD: libpfkey.h,v 1.19 2012/01/04 15:55:35 drochner Exp $	*/
 
 /* Id: libpfkey.h,v 1.13 2005/12/04 20:26:43 manubsd Exp */
 
@@ -59,7 +59,11 @@ struct sadb_alg;
 
 #ifndef HAVE_IPSEC_POLICY_T
 typedef caddr_t ipsec_policy_t;
+#ifdef __NetBSD__
+#define __ipsec_const const
+#else
 #define __ipsec_const
+#endif
 #else
 #define __ipsec_const const
 #endif

Index: src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l
diff -u src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l:1.7 src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l:1.8
--- src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l:1.7	Wed Jul 18 12:07:50 2007
+++ src/crypto/dist/ipsec-tools/src/libipsec/policy_token.l	Wed Jan  4 15:55:35 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: policy_token.l,v 1.7 2007/07/18 12:07:50 vanhu Exp $	*/
+/*	$NetBSD: policy_token.l,v 1.8 2012/01/04 15:55:35 drochner Exp $	*/
 
 /* Id: policy_token.l,v 1.12 2005/05/05 12:32:18 manubsd Exp */
 
@@ -64,6 +64,7 @@ int yylex __P((void));
 
 %option noyywrap
 %option nounput
+%option noinput
 
 /* common section */
 nl		\n

Index: src/lib/libipsec/Makefile
diff -u src/lib/libipsec/Makefile:1.17 src/lib/libipsec/Makefile:1.18
--- src/lib/libipsec/Makefile:1.17	Mon May 28 12:06:19 2007
+++ src/lib/libipsec/Makefile	Wed Jan  4 15:55:36 2012
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.17 2007/05/28 12:06:19 tls Exp $
+# $NetBSD: Makefile,v 1.18 2012/01/04 15:55:36 drochner Exp $
 
 USE_FORT?= yes	# network protocol library
 
@@ -10,8 +10,7 @@ WARNS=	0	# Will be fixed later
 DIST=	${NETBSDSRCDIR}/crypto/dist/ipsec-tools
 LIB=	ipsec
 CPPFLAGS+= -I${DIST}/src/libipsec -I. -DHAVE_CONFIG_H
-CPPFLAGS+= -DIPSEC_DEBUG -I${.CURDIR} -I${NETBSDSRCDIR}/sys
-CPPFLAGS+= -DSADB_X_EALG_AESCBC=SADB_X_EALG_AES
+CPPFLAGS+= -DIPSEC_DEBUG -I${.CURDIR}
 # Don't worry about 

CVS commit: src/sys/dev/pci

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 15:56:18 UTC 2012

Modified Files:
src/sys/dev/pci: r128fb.c radeonfb.c

Log Message:
use WSFONT_GLYPH()


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/pci/r128fb.c
cvs rdiff -u -r1.49 -r1.50 src/sys/dev/pci/radeonfb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/r128fb.c
diff -u src/sys/dev/pci/r128fb.c:1.25 src/sys/dev/pci/r128fb.c:1.26
--- src/sys/dev/pci/r128fb.c:1.25	Wed Jan  4 08:38:20 2012
+++ src/sys/dev/pci/r128fb.c	Wed Jan  4 15:56:18 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: r128fb.c,v 1.25 2012/01/04 08:38:20 macallan Exp $	*/
+/*	$NetBSD: r128fb.c,v 1.26 2012/01/04 15:56:18 macallan Exp $	*/
 
 /*
  * Copyright (c) 2007 Michael Lorenz
@@ -31,7 +31,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: r128fb.c,v 1.25 2012/01/04 08:38:20 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: r128fb.c,v 1.26 2012/01/04 15:56:18 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -825,8 +825,7 @@ r128fb_putchar(void *cookie, int row, in
 	struct r128fb_softc *sc = scr-scr_cookie;
 	void *data;
 	uint32_t fg, bg;
-	int uc, i;
-	int x, y, wi, he, offset;
+	int i, x, y, wi, he, offset;
 
 	if (sc-sc_mode != WSDISPLAYIO_MODE_EMUL) 
 		return;
@@ -847,8 +846,7 @@ r128fb_putchar(void *cookie, int row, in
 		return;
 	}
 
-	uc = c - font-firstchar;
-	data = (uint8_t *)font-data + uc * ri-ri_fontscale;
+	data = WSFONT_GLYPH(c, font);
 
 	r128fb_wait(sc, 8);
 
@@ -926,7 +924,7 @@ r128fb_putchar_aa(void *cookie, int row,
 	struct vcons_screen *scr = ri-ri_hw;
 	struct r128fb_softc *sc = scr-scr_cookie;
 	uint32_t bg, latch = 0, bg8, fg8, pixel;
-	int uc, i, x, y, wi, he, r, g, b, aval;
+	int i, x, y, wi, he, r, g, b, aval;
 	int r1, g1, b1, r0, g0, b0, fgo, bgo;
 	uint8_t *data8;
 
@@ -947,8 +945,7 @@ r128fb_putchar_aa(void *cookie, int row,
 		return;
 	}
 
-	uc = c - font-firstchar;
-	data8 = (uint8_t *)font-data + uc * ri-ri_fontscale;
+	data8 = WSFONT_GLYPH(c, font);
 
 	r128fb_wait(sc, 5);
 	bus_space_write_4(sc-sc_memt, sc-sc_regh, 

Index: src/sys/dev/pci/radeonfb.c
diff -u src/sys/dev/pci/radeonfb.c:1.49 src/sys/dev/pci/radeonfb.c:1.50
--- src/sys/dev/pci/radeonfb.c:1.49	Tue Jan  3 00:25:49 2012
+++ src/sys/dev/pci/radeonfb.c	Wed Jan  4 15:56:18 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: radeonfb.c,v 1.49 2012/01/03 00:25:49 macallan Exp $ */
+/*	$NetBSD: radeonfb.c,v 1.50 2012/01/04 15:56:18 macallan Exp $ */
 
 /*-
  * Copyright (c) 2006 Itronix Inc.
@@ -70,7 +70,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: radeonfb.c,v 1.49 2012/01/03 00:25:49 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: radeonfb.c,v 1.50 2012/01/04 15:56:18 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -2432,7 +2432,7 @@ radeonfb_putchar(void *cookie, int row, 
 		radeonfb_rectfill(dp, xd, yd, w, h, bg);
 		return;
 	}
-	data = (uint8_t *)font-data + (c - font-firstchar) * ri-ri_fontscale;
+	data = WSFONT_GLYPH(c, font);
 
 	gmc = dp-rd_format  RADEON_GMC_DST_DATATYPE_SHIFT;
 
@@ -2521,7 +2521,7 @@ radeonfb_putchar_aa32(void *cookie, int 
 		radeonfb_rectfill(dp, xd, yd, w, h, bg);
 		return;
 	}
-	data = (uint8_t *)font-data + (c - font-firstchar) * ri-ri_fontscale;
+	data = WSFONT_GLYPH(c, font);
 
 	gmc = dp-rd_format  RADEON_GMC_DST_DATATYPE_SHIFT;
 



CVS commit: src/bin/cp

2012-01-04 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Jan  4 15:58:37 UTC 2012

Modified Files:
src/bin/cp: cp.c extern.h utils.c

Log Message:
Add siginfo support from Daniel Loffgren.


To generate a diff of this commit:
cvs rdiff -u -r1.57 -r1.58 src/bin/cp/cp.c
cvs rdiff -u -r1.16 -r1.17 src/bin/cp/extern.h
cvs rdiff -u -r1.40 -r1.41 src/bin/cp/utils.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/bin/cp/cp.c
diff -u src/bin/cp/cp.c:1.57 src/bin/cp/cp.c:1.58
--- src/bin/cp/cp.c:1.57	Thu Aug 18 04:11:58 2011
+++ src/bin/cp/cp.c	Wed Jan  4 10:58:37 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: cp.c,v 1.57 2011/08/18 08:11:58 manu Exp $ */
+/* $NetBSD: cp.c,v 1.58 2012/01/04 15:58:37 christos Exp $ */
 
 /*
  * Copyright (c) 1988, 1993, 1994
@@ -43,7 +43,7 @@ __COPYRIGHT(
 #if 0
 static char sccsid[] = @(#)cp.c	8.5 (Berkeley) 4/29/95;
 #else
-__RCSID($NetBSD: cp.c,v 1.57 2011/08/18 08:11:58 manu Exp $);
+__RCSID($NetBSD: cp.c,v 1.58 2012/01/04 15:58:37 christos Exp $);
 #endif
 #endif /* not lint */
 
@@ -70,6 +70,7 @@ __RCSID($NetBSD: cp.c,v 1.57 2011/08/18
 #include errno.h
 #include fts.h
 #include locale.h
+#include signal.h
 #include stdlib.h
 #include stdio.h
 #include string.h
@@ -88,11 +89,18 @@ PATH_T to = { .p_end = to.p_path, .targe
 uid_t myuid;
 int Hflag, Lflag, Rflag, Pflag, fflag, iflag, lflag, pflag, rflag, vflag, Nflag;
 mode_t myumask;
+sig_atomic_t pinfo;
 
 enum op { FILE_TO_FILE, FILE_TO_DIR, DIR_TO_DNE };
 
-int 	main(int, char *[]);
-int 	copy(char *[], enum op, int);
+static int copy(char *[], enum op, int);
+
+static void
+progress(int sig __unused)
+{
+
+	pinfo++;
+}
 
 int
 main(int argc, char *argv[])
@@ -210,6 +218,8 @@ main(int argc, char *argv[])
 	/* Set end of argument list for fts(3). */
 	argv[argc] = NULL; 
 	
+	(void)signal(SIGINFO, progress);
+	
 	/*
 	 * Cp has two distinct cases:
 	 *
@@ -310,7 +320,7 @@ popdne(void)
 	return rv;
 }
 
-int
+static int
 copy(char *argv[], enum op type, int fts_options)
 {
 	struct stat to_stat;

Index: src/bin/cp/extern.h
diff -u src/bin/cp/extern.h:1.16 src/bin/cp/extern.h:1.17
--- src/bin/cp/extern.h:1.16	Sun Feb  6 07:37:49 2011
+++ src/bin/cp/extern.h	Wed Jan  4 10:58:37 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: extern.h,v 1.16 2011/02/06 12:37:49 darcy Exp $ */
+/* $NetBSD: extern.h,v 1.17 2012/01/04 15:58:37 christos Exp $ */
 
 /*-
  * Copyright (c) 1991, 1993, 1994
@@ -44,6 +44,7 @@ extern PATH_T to;
 extern uid_t myuid;
 extern int Rflag, rflag, Hflag, Lflag, Pflag, fflag, iflag, lflag, pflag, Nflag;
 extern mode_t myumask;
+extern sig_atomic_t pinfo;
 
 #include sys/cdefs.h
 

Index: src/bin/cp/utils.c
diff -u src/bin/cp/utils.c:1.40 src/bin/cp/utils.c:1.41
--- src/bin/cp/utils.c:1.40	Wed Aug  3 00:11:15 2011
+++ src/bin/cp/utils.c	Wed Jan  4 10:58:37 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: utils.c,v 1.40 2011/08/03 04:11:15 manu Exp $ */
+/* $NetBSD: utils.c,v 1.41 2012/01/04 15:58:37 christos Exp $ */
 
 /*-
  * Copyright (c) 1991, 1993, 1994
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = @(#)utils.c	8.3 (Berkeley) 4/1/94;
 #else
-__RCSID($NetBSD: utils.c,v 1.40 2011/08/03 04:11:15 manu Exp $);
+__RCSID($NetBSD: utils.c,v 1.41 2012/01/04 15:58:37 christos Exp $);
 #endif
 #endif /* not lint */
 
@@ -74,6 +74,22 @@ set_utimes(const char *file, struct stat
 return (0);
 }
 
+struct finfo {
+	const char *from;
+	const char *to;
+	size_t size;
+};
+
+static void
+progress(const struct finfo *fi, size_t written)
+{
+	int pcent = (int)((100.0 * written) / fi-size);
+
+	pinfo = 0;
+	(void)fprintf(stderr, %s = %s %zu/%zu bytes %d%% written\n,
+	fi-from, fi-to, written, fi-size, pcent);
+}
+
 int
 copy_file(FTSENT *entp, int dne)
 {
@@ -81,6 +97,7 @@ copy_file(FTSENT *entp, int dne)
 	struct stat to_stat, *fs;
 	int ch, checkch, from_fd, rcount, rval, to_fd, tolnk, wcount;
 	char *p;
+	size_t ptotal = 0;
 	
 	if ((from_fd = open(entp-fts_path, O_RDONLY, 0)) == -1) {
 		warn(%s, entp-fts_path);
@@ -164,6 +181,12 @@ copy_file(FTSENT *entp, int dne)
 	 * now if it's empty, so let's not bother.
 	 */
 	if (fs-st_size  0) {
+		struct finfo fi;
+
+		fi.from = entp-fts_path;
+		fi.to = to.p_path;
+		fi.size = (size_t)fs-st_size;
+
 		/*
 		 * Mmap and write if less than 8M (the limit is so
 		 * we don't totally trash memory on big files).
@@ -203,6 +226,9 @@ copy_file(FTSENT *entp, int dne)
 		break;
 	}
 	remainder -= chunk;
+	ptotal += chunk;
+	if (pinfo)
+		progress(fi, ptotal);
 } while (remainder  0);
 
 if (munmap(p, fsize)  0) {
@@ -220,6 +246,9 @@ copy_file(FTSENT *entp, int dne)
 	rval = 1;
 	break;
 }
+ptotal += wcount;
+if (pinfo)
+	progress(fi, ptotal);
 			}
 			if (rcount  0) {
 warn(%s, entp-fts_path);



CVS commit: src/sys/dev/dm

2012-01-04 Thread Adam Hamsik
Module Name:src
Committed By:   haad
Date:   Wed Jan  4 16:05:53 UTC 2012

Modified Files:
src/sys/dev/dm: dm_target_stripe.c

Log Message:
Fix wrong KASSERT, reported by mhitch@.


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 src/sys/dev/dm/dm_target_stripe.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/dm/dm_target_stripe.c
diff -u src/sys/dev/dm/dm_target_stripe.c:1.16 src/sys/dev/dm/dm_target_stripe.c:1.17
--- src/sys/dev/dm/dm_target_stripe.c:1.16	Fri Oct 14 09:23:30 2011
+++ src/sys/dev/dm/dm_target_stripe.c	Wed Jan  4 16:05:53 2012
@@ -1,4 +1,4 @@
-/*$NetBSD: dm_target_stripe.c,v 1.16 2011/10/14 09:23:30 hannken Exp $*/
+/*$NetBSD: dm_target_stripe.c,v 1.17 2012/01/04 16:05:53 haad Exp $*/
 
 /*
  * Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -248,7 +248,7 @@ dm_target_stripe_strategy(dm_table_entry
 			tlc = TAILQ_NEXT(tlc, entries);
 
 		/* by this point we should have an tlc */
-		KASSERT(tlc == NULL);
+		KASSERT(tlc != NULL);
 
 		nestbuf-b_blkno += tlc-offset;
 



CVS commit: src/sys/arch/usermode/usermode

2012-01-04 Thread Reinoud Zandijk
Module Name:src
Committed By:   reinoud
Date:   Wed Jan  4 16:20:42 UTC 2012

Modified Files:
src/sys/arch/usermode/usermode: pmap.c

Log Message:
Enhance the page_deactivate() to have less side effects. While here also make
a variable local to the debug routine that uses it.


To generate a diff of this commit:
cvs rdiff -u -r1.95 -r1.96 src/sys/arch/usermode/usermode/pmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/usermode/usermode/pmap.c
diff -u src/sys/arch/usermode/usermode/pmap.c:1.95 src/sys/arch/usermode/usermode/pmap.c:1.96
--- src/sys/arch/usermode/usermode/pmap.c:1.95	Wed Jan  4 15:10:45 2012
+++ src/sys/arch/usermode/usermode/pmap.c	Wed Jan  4 16:20:41 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.95 2012/01/04 15:10:45 reinoud Exp $ */
+/* $NetBSD: pmap.c,v 1.96 2012/01/04 16:20:41 reinoud Exp $ */
 
 /*-
  * Copyright (c) 2011 Reinoud Zandijk rein...@netbsd.org
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.95 2012/01/04 15:10:45 reinoud Exp $);
+__KERNEL_RCSID(0, $NetBSD: pmap.c,v 1.96 2012/01/04 16:20:41 reinoud Exp $);
 
 #include opt_memsize.h
 #include opt_kmempages.h
@@ -480,7 +480,7 @@ void
 pmap_destroy(pmap_t pmap)
 {
 	struct pmap_l2 *l2tbl;
-	int l1, l2;
+	int l1;
 
 	/* if multiple references exist just remove a reference */
 	thunk_printf_debug(pmap_destroy %p\n, pmap);
@@ -494,6 +494,8 @@ pmap_destroy(pmap_t pmap)
 	KASSERT(pmap-pm_stats.wired_count == 0);
 #ifdef DIAGNOSTIC
 	for (l1 = 0; l1  pm_nl1; l1++) {
+		int l2;
+
 		l2tbl = pmap-pm_l1[l1];
 		if (!l2tbl)
 			continue;
@@ -761,8 +763,9 @@ pmap_page_deactivate(struct pv_entry *pv
 	/* don't try to unmap pv entries that are already unmapped */
 	if (!tlb[pv-pv_lpn])
 		return;
+
 	if (tlb[pv-pv_lpn]-pv_mmap_ppl == THUNK_PROT_NONE)
-		return;
+		goto deactivate;
 
 	map_flags = THUNK_MAP_FILE | THUNK_MAP_FIXED | THUNK_MAP_SHARED;
 	addr = thunk_mmap((void *) va, PAGE_SIZE, THUNK_PROT_NONE,
@@ -772,6 +775,7 @@ pmap_page_deactivate(struct pv_entry *pv
 	if (addr != (void *) va)
 		panic(pmap_page_deactivate: mmap failed);
 
+deactivate:
 	tlb[pv-pv_lpn] = NULL;
 }
 



CVS commit: src

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 16:25:17 UTC 2012

Modified Files:
src/distrib/sets/lists/base: mi
src/distrib/sets/lists/comp: mi
src/distrib/sets/lists/man: mi
src/share/man/man4: Makefile
src/share/man/man4/man4.x86: Makefile
src/usr.bin: Makefile
src/usr.sbin: Makefile

Log Message:
install tprof related commands and man pages.


To generate a diff of this commit:
cvs rdiff -u -r1.975 -r1.976 src/distrib/sets/lists/base/mi
cvs rdiff -u -r1.1721 -r1.1722 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.1362 -r1.1363 src/distrib/sets/lists/man/mi
cvs rdiff -u -r1.575 -r1.576 src/share/man/man4/Makefile
cvs rdiff -u -r1.12 -r1.13 src/share/man/man4/man4.x86/Makefile
cvs rdiff -u -r1.205 -r1.206 src/usr.bin/Makefile
cvs rdiff -u -r1.259 -r1.260 src/usr.sbin/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/base/mi
diff -u src/distrib/sets/lists/base/mi:1.975 src/distrib/sets/lists/base/mi:1.976
--- src/distrib/sets/lists/base/mi:1.975	Wed Jan  4 15:54:37 2012
+++ src/distrib/sets/lists/base/mi	Wed Jan  4 16:25:14 2012
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.975 2012/01/04 15:54:37 yamt Exp $
+# $NetBSD: mi,v 1.976 2012/01/04 16:25:14 yamt Exp $
 #
 # Note:	Don't delete entries from here - mark them as obsolete instead,
 #	unless otherwise stated below.
@@ -691,6 +691,7 @@
 ./usr/bin/tn3270base-obsolete		obsolete
 ./usr/bin/top	base-util-bin
 ./usr/bin/touch	base-util-bin
+./usr/bin/tpfmt	base-util-bin
 ./usr/bin/tput	base-util-bin
 ./usr/bin/tr	base-util-bin
 ./usr/bin/true	base-util-bin
@@ -1469,6 +1470,7 @@
 ./usr/sbin/tcpdumpbase-netutil-bin
 ./usr/sbin/timedbase-timed-bin
 ./usr/sbin/timedcbase-timed-bin
+./usr/sbin/tprofbase-sysutil-bin
 ./usr/sbin/traceroutebase-netutil-bin
 ./usr/sbin/traceroute6base-netutil-bin	use_inet6
 ./usr/sbin/trpt	base-netutil-bin

Index: src/distrib/sets/lists/comp/mi
diff -u src/distrib/sets/lists/comp/mi:1.1721 src/distrib/sets/lists/comp/mi:1.1722
--- src/distrib/sets/lists/comp/mi:1.1721	Wed Jan  4 16:09:41 2012
+++ src/distrib/sets/lists/comp/mi	Wed Jan  4 16:25:14 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.1721 2012/01/04 16:09:41 drochner Exp $
+#	$NetBSD: mi,v 1.1722 2012/01/04 16:25:14 yamt Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -3841,6 +3841,7 @@
 ./usr/libdata/debug/usr/bin/tn3270.debug	comp-obsolete		obsolete
 ./usr/libdata/debug/usr/bin/top.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/touch.debug		comp-util-debug		debug
+./usr/libdata/debug/usr/bin/tpfmt.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/tput.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/tr.debug		comp-util-debug		debug
 ./usr/libdata/debug/usr/bin/troff.debug		comp-groff-debug	groff,debug
@@ -4289,6 +4290,7 @@
 ./usr/libdata/debug/usr/sbin/tcpdump.debug	comp-netutil-debug	debug
 ./usr/libdata/debug/usr/sbin/timed.debug	comp-timed-debug	debug
 ./usr/libdata/debug/usr/sbin/timedc.debug	comp-timed-debug	debug
+./usr/libdata/debug/usr/sbin/tprof.debug	comp-sysutil-debug	debug
 ./usr/libdata/debug/usr/sbin/traceroute.debug	comp-netutil-debug	debug
 ./usr/libdata/debug/usr/sbin/traceroute6.debug	comp-netutil-debug	use_inet6,debug
 ./usr/libdata/debug/usr/sbin/trpt.debug		comp-netutil-debug	debug

Index: src/distrib/sets/lists/man/mi
diff -u src/distrib/sets/lists/man/mi:1.1362 src/distrib/sets/lists/man/mi:1.1363
--- src/distrib/sets/lists/man/mi:1.1362	Wed Jan  4 15:54:39 2012
+++ src/distrib/sets/lists/man/mi	Wed Jan  4 16:25:15 2012
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1362 2012/01/04 15:54:39 yamt Exp $
+# $NetBSD: mi,v 1.1363 2012/01/04 16:25:15 yamt Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -526,6 +526,7 @@
 ./usr/share/man/cat1/tn3270.0			man-obsolete		obsolete
 ./usr/share/man/cat1/top.0			man-util-catman		.cat
 ./usr/share/man/cat1/touch.0			man-util-catman		.cat
+./usr/share/man/cat1/tpfmt.0			man-util-catman		.cat
 ./usr/share/man/cat1/tput.0			man-util-catman		.cat
 ./usr/share/man/cat1/tr.0			man-util-catman		.cat
 ./usr/share/man/cat1/true.0			man-util-catman		.cat
@@ -1648,6 +1649,7 @@
 ./usr/share/man/cat4/tlphy.0			man-sys-catman		.cat
 ./usr/share/man/cat4/tm121temp.0		man-sys-catman		.cat
 ./usr/share/man/cat4/tp.0			man-sys-catman		.cat
+./usr/share/man/cat4/tprof.0			man-sys-catman		.cat
 ./usr/share/man/cat4/tqphy.0			man-sys-catman		.cat
 ./usr/share/man/cat4/tr.0			man-sys-catman		.cat
 ./usr/share/man/cat4/tra.0			man-sys-catman		.cat
@@ -1846,6 +1848,8 @@
 ./usr/share/man/cat4/x86/mem.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/odcm.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/powernow.0		man-sys-catman		.cat
+./usr/share/man/cat4/x86/tprof_pmi.0		man-sys-catman		.cat

CVS commit: [yamt-pagecache] src/sys/uvm

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 16:30:07 UTC 2012

Modified Files:
src/sys/uvm [yamt-pagecache]: uvm_page.c

Log Message:
make assertions simpler


To generate a diff of this commit:
cvs rdiff -u -r1.178.2.10 -r1.178.2.11 src/sys/uvm/uvm_page.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/uvm/uvm_page.c
diff -u src/sys/uvm/uvm_page.c:1.178.2.10 src/sys/uvm/uvm_page.c:1.178.2.11
--- src/sys/uvm/uvm_page.c:1.178.2.10	Wed Jan  4 16:29:29 2012
+++ src/sys/uvm/uvm_page.c	Wed Jan  4 16:30:06 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvm_page.c,v 1.178.2.10 2012/01/04 16:29:29 yamt Exp $	*/
+/*	$NetBSD: uvm_page.c,v 1.178.2.11 2012/01/04 16:30:06 yamt Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -66,7 +66,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: uvm_page.c,v 1.178.2.10 2012/01/04 16:29:29 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: uvm_page.c,v 1.178.2.11 2012/01/04 16:30:06 yamt Exp $);
 
 #include opt_ddb.h
 #include opt_uvmhist.h
@@ -1509,9 +1509,7 @@ uvm_pagefree(struct vm_page *pg)
 	KASSERT((pg-flags  PG_PAGEOUT) == 0);
 	KASSERT(!(pg-pqflags  PQ_FREE));
 	KASSERT(mutex_owned(uvm_pageqlock) || !uvmpdpol_pageisqueued_p(pg));
-	KASSERT(pg-uobject == NULL || mutex_owned(pg-uobject-vmobjlock));
-	KASSERT(pg-uobject != NULL || pg-uanon == NULL ||
-		mutex_owned(pg-uanon-an_lock));
+	KASSERT(uvm_page_locked_p(pg));
 
 	/*
 	 * if the page is loaned, resolve the loan instead of freeing.



CVS commit: src/crypto/dist/ipsec-tools/src/libipsec

2012-01-04 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Wed Jan  4 16:30:51 UTC 2012

Modified Files:
src/crypto/dist/ipsec-tools/src/libipsec: ipsec_set_policy.3
ipsec_strerror.3

Log Message:
Bump date for previous.


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 \
src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3
diff -u src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.17 src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.18
--- src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3:1.17	Wed Jan  4 16:09:40 2012
+++ src/crypto/dist/ipsec-tools/src/libipsec/ipsec_set_policy.3	Wed Jan  4 16:30:50 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: ipsec_set_policy.3,v 1.17 2012/01/04 16:09:40 drochner Exp $
+.\	$NetBSD: ipsec_set_policy.3,v 1.18 2012/01/04 16:30:50 wiz Exp $
 .\
 .\	$KAME: ipsec_set_policy.3,v 1.16 2003/01/06 21:59:03 sumikawa Exp $
 .\
@@ -29,7 +29,7 @@
 .\ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\ SUCH DAMAGE.
 .\
-.Dd May 5, 1998
+.Dd January 4, 2012
 .Dt IPSEC_SET_POLICY 3
 .Os
 .Sh NAME

Index: src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3
diff -u src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3:1.11 src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3:1.12
--- src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3:1.11	Wed Jan  4 16:09:40 2012
+++ src/crypto/dist/ipsec-tools/src/libipsec/ipsec_strerror.3	Wed Jan  4 16:30:50 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: ipsec_strerror.3,v 1.11 2012/01/04 16:09:40 drochner Exp $
+.\	$NetBSD: ipsec_strerror.3,v 1.12 2012/01/04 16:30:50 wiz Exp $
 .\
 .\	$KAME: ipsec_strerror.3,v 1.9 2001/08/17 07:21:36 itojun Exp $
 .\
@@ -29,7 +29,7 @@
 .\ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\ SUCH DAMAGE.
 .\
-.Dd May 6, 1998
+.Dd January 4, 2012
 .Dt IPSEC_STRERROR 3
 .Os
 .\



CVS commit: [yamt-pagecache] src/sys/uvm

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 16:31:18 UTC 2012

Modified Files:
src/sys/uvm [yamt-pagecache]: uvm_loan.c uvm_page.c

Log Message:
O-A loan related statistics fixes.


To generate a diff of this commit:
cvs rdiff -u -r1.81.2.8 -r1.81.2.9 src/sys/uvm/uvm_loan.c
cvs rdiff -u -r1.178.2.11 -r1.178.2.12 src/sys/uvm/uvm_page.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/uvm/uvm_loan.c
diff -u src/sys/uvm/uvm_loan.c:1.81.2.8 src/sys/uvm/uvm_loan.c:1.81.2.9
--- src/sys/uvm/uvm_loan.c:1.81.2.8	Wed Dec 28 13:24:19 2011
+++ src/sys/uvm/uvm_loan.c	Wed Jan  4 16:31:17 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvm_loan.c,v 1.81.2.8 2011/12/28 13:24:19 yamt Exp $	*/
+/*	$NetBSD: uvm_loan.c,v 1.81.2.9 2012/01/04 16:31:17 yamt Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -32,7 +32,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: uvm_loan.c,v 1.81.2.8 2011/12/28 13:24:19 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: uvm_loan.c,v 1.81.2.9 2012/01/04 16:31:17 yamt Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -1755,6 +1755,7 @@ uvm_loan_resolve_orphan(struct vm_page *
 		return;
 	}
 	KASSERT(pg-loan_count  0);
+	uvm_pagemarkdirty(pg, UVM_PAGE_STATUS_DIRTY);
 	if (!pageqlocked) {
 		mutex_enter(uvm_pageqlock);
 	}
@@ -1770,7 +1771,6 @@ uvm_loan_resolve_orphan(struct vm_page *
 	 * the pagestate should have been decremented when uobj dropped the
 	 * ownership.
 	 */
-	uvm_pagemarkdirty(pg, UVM_PAGE_STATUS_DIRTY);
 	ucpu = uvm_cpu_get();
 	ucpu-loan_resolve_orphan++;
 	ucpu-pagestate[1][UVM_PAGE_STATUS_DIRTY]++;

Index: src/sys/uvm/uvm_page.c
diff -u src/sys/uvm/uvm_page.c:1.178.2.11 src/sys/uvm/uvm_page.c:1.178.2.12
--- src/sys/uvm/uvm_page.c:1.178.2.11	Wed Jan  4 16:30:06 2012
+++ src/sys/uvm/uvm_page.c	Wed Jan  4 16:31:17 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvm_page.c,v 1.178.2.11 2012/01/04 16:30:06 yamt Exp $	*/
+/*	$NetBSD: uvm_page.c,v 1.178.2.12 2012/01/04 16:31:17 yamt Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -66,7 +66,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: uvm_page.c,v 1.178.2.11 2012/01/04 16:30:06 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: uvm_page.c,v 1.178.2.12 2012/01/04 16:31:17 yamt Exp $);
 
 #include opt_ddb.h
 #include opt_uvmhist.h
@@ -1524,15 +1524,13 @@ uvm_pagefree(struct vm_page *pg)
 		 * if the page is owned by an anon then we just want to
 		 * drop anon ownership.  the kernel will free the page when
 		 * it is done with it.  if the page is owned by an object,
-		 * remove it from the object and mark it dirty for the benefit
-		 * of possible anon owners.
+		 * remove it from the object.
 		 *
 		 * regardless of previous ownership, wakeup any waiters,
 		 * unbusy the page, and we're done.
 		 */
 
 		if (obj != NULL) {
-			uvm_pagemarkdirty(pg, UVM_PAGE_STATUS_DIRTY);
 			uvm_pageremove(obj, pg);
 			pg-pqflags = ~(PQ_FILE|PQ_AOBJ);
 		} else if (pg-uanon != NULL) {



CVS commit: src/doc

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 16:36:49 UTC 2012

Modified Files:
src/doc: BRANCHES

Log Message:
update the status of yamt-pagecache branch.


To generate a diff of this commit:
cvs rdiff -u -r1.317 -r1.318 src/doc/BRANCHES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/BRANCHES
diff -u src/doc/BRANCHES:1.317 src/doc/BRANCHES:1.318
--- src/doc/BRANCHES:1.317	Fri Dec  2 16:37:43 2011
+++ src/doc/BRANCHES	Wed Jan  4 16:36:49 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: BRANCHES,v 1.317 2011/12/02 16:37:43 yamt Exp $
+#	$NetBSD: BRANCHES,v 1.318 2012/01/04 16:36:49 yamt Exp $
 #
 # This file contains a list of branches that exist in the NetBSD CVS
 # tree and their current state.
@@ -608,13 +608,92 @@ Notes:		- maintain object pages in radix
 		TODO:
 			- benchmark
 			- test
-			- make the write clustering fix less kludgy and work
-			  for backward clustering
+			- make the write clustering fix less kludgy
 
 		tested: i386, amd64, nfs, ffs
 
 		have good chances to be broken: lfs, sparc64, hp700
 
+		the following is kernel build test results.
+		most of NG seem unrelated to the changes in the branch.
+
+			acorn26  GENERICOK  
+			acorn32  GENERICOK  
+			algorP6032  NG  
+			alphaGENERICOK  
+			alphaGENERIC.MP OK  
+			amd64GENERICOK  
+			amd64XEN3_DOM0  OK  
+			amd64XEN3_DOMU  OK  
+			amigaGENERICOK  
+			amigappc GENERICOK  
+			arc  GENERICOK  
+			atariMILAN-PCIIDE OK  
+			beboxGENERICOK  
+			cats GENERICOK  
+			cesfic   GENERICOK  
+			cobalt   GENERICOK  
+			dreamcast GENERICNG  
+			emipsGENERICOK  
+			evbarm   NSLU2  NG  
+			evbarm   TS7200 NG  
+			evbmips  P6032  NG  
+			evbmips  MALTA  NG  
+			evbppc   WALNUT NG  
+			evbppc   EXPLORA451 NG  
+			evbppc   PMPPC  NG  
+			evbsh3   COMPUTEXEVB OK  
+			ews4800mips GENERICOK  
+			hp300GENERICOK  
+			hp700GENERICOK  
+			hpcarm   JORNADA720 OK  
+			hpcarm   JORNADA728 OK  
+			hpcmips  GENERICOK  
+			hpcshGENERICOK  
+			hpcshHPW650PA   OK  
+			i386 MONOLITHIC OK  
+			i386 GENERICOK  
+			i386 XEN3_DOM0  OK  
+			i386 XEN3_DOMU  OK  
+			i386 ALLNG  
+			ia64 GENERICOK  
+			ia64 GENERIC.SKI NG  
+			ibmnws   GENERICOK  
+			iyonix   GENERICNG  
+			landisk  GENERICOK  
+			luna68k  GENERICOK  
+			mac68k   GENERICOK  
+			macppc   GENERICOK  
+			macppc   GENERIC.MP OK  
+			mipsco   GENERICOK  
+			mmeyeGENERICOK  
+			mvme68k  GENERICOK  
+			mvmeppc  GENERICOK  
+			netwinder GENERICNG  
+			news68k  GENERICOK  
+			newsmips GENERICOK  
+			next68k  GENERICOK  
+			ofppcGENERICOK  
+			ofppcGENERIC.MP NG  
+			pmax GENERICOK  
+			prep GENERICOK  
+			rs6000   GENERICNG  
+			sandpoint GENERICOK  
+			sbmips   GENERICNG  
+			sbmips   GENERIC.MP NG  
+			sgimips  GENERIC32_IP3x OK  
+			sharkGENERICNG  
+			sparcGENERICOK  
+			sparcGENERIC.MP OK  
+			sparc64  GENERICOK  
+			sun2 GENERICOK  
+			sun3 GENERICOK  
+			usermode GENERICNG  
+			vax  GENERICOK  
+			vax  GENERIC.MP OK  
+			x68k GENERICOK  
+			zaurus   GENERICNG  
+
 Branch:		reinoud-bufcleanup
 Description:	implement and evaluate struct buf usage cleanup strategies.
 		Ideas currently in mind (preference for b):



CVS commit: src/external/gpl2/lvm2/dist/lib/filters

2012-01-04 Thread Michael L. Hitch
Module Name:src
Committed By:   mhitch
Date:   Wed Jan  4 16:37:45 UTC 2012

Modified Files:
src/external/gpl2/lvm2/dist/lib/filters: filter_netbsd.c

Log Message:
Add logical drive device ld - a number of raid controllers provide these.
Also fix a typo/pasto when checking devices against devices/types in the
configuration file:  use value from configuration, not the end of the
device_info table.  Devices which aren't explicitly specified in the
device_info table can now be used by adding a type entry in the config
file.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c
diff -u src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c:1.3 src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c:1.4
--- src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c:1.3	Wed Dec  2 01:53:25 2009
+++ src/external/gpl2/lvm2/dist/lib/filters/filter_netbsd.c	Wed Jan  4 16:37:45 2012
@@ -1,4 +1,4 @@
-/*  $NetBSD: filter_netbsd.c,v 1.3 2009/12/02 01:53:25 haad Exp $*/
+/*  $NetBSD: filter_netbsd.c,v 1.4 2012/01/04 16:37:45 mhitch Exp $*/
 
 /*
  * Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
@@ -82,6 +82,7 @@ static const device_info_t device_info[]
 	{cgd, 1},
 	{ccd, 1},	
 	{xbd, 64},
+	{ld, 64},
 	{NULL, -1}
 };
 
@@ -221,9 +222,9 @@ static int _scan_dev(const struct config
 			
 			if (!strncmp(name, kd[i].d_name, strlen(name))){
 	_char_device_major[kd[i].d_cmajor] =
-	device_info[j].max_partitions;
+	cv-v.i;
 	_block_device_major[kd[i].d_bmajor] =
-	device_info[j].max_partitions;
+	cv-v.i;
 	break;
 			}
 		}



CVS commit: [yamt-pagecache] src/sys

2012-01-04 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Wed Jan  4 16:43:37 UTC 2012

Modified Files:
src/sys/fs/tmpfs [yamt-pagecache]: tmpfs_vnops.c
src/sys/nfs [yamt-pagecache]: nfs_bio.c
src/sys/ufs/ufs [yamt-pagecache]: ufs_readwrite.c

Log Message:
enable O-A loaning read for a few filesystems.


To generate a diff of this commit:
cvs rdiff -u -r1.92 -r1.92.2.1 src/sys/fs/tmpfs/tmpfs_vnops.c
cvs rdiff -u -r1.188.2.1 -r1.188.2.2 src/sys/nfs/nfs_bio.c
cvs rdiff -u -r1.99 -r1.99.2.1 src/sys/ufs/ufs/ufs_readwrite.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/fs/tmpfs/tmpfs_vnops.c
diff -u src/sys/fs/tmpfs/tmpfs_vnops.c:1.92 src/sys/fs/tmpfs/tmpfs_vnops.c:1.92.2.1
--- src/sys/fs/tmpfs/tmpfs_vnops.c:1.92	Tue Sep 27 01:32:21 2011
+++ src/sys/fs/tmpfs/tmpfs_vnops.c	Wed Jan  4 16:43:37 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: tmpfs_vnops.c,v 1.92 2011/09/27 01:32:21 christos Exp $	*/
+/*	$NetBSD: tmpfs_vnops.c,v 1.92.2.1 2012/01/04 16:43:37 yamt Exp $	*/
 
 /*
  * Copyright (c) 2005, 2006, 2007 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: tmpfs_vnops.c,v 1.92 2011/09/27 01:32:21 christos Exp $);
+__KERNEL_RCSID(0, $NetBSD: tmpfs_vnops.c,v 1.92.2.1 2012/01/04 16:43:37 yamt Exp $);
 
 #include sys/param.h
 #include sys/dirent.h
@@ -561,6 +561,9 @@ tmpfs_read(void *v)
 	uobj = node-tn_spec.tn_reg.tn_aobj;
 	error = 0;
 
+	if (uio-uio_offset + uio-uio_resid = node-tn_size) {
+		uvm_loanobj(vp-v_uobj, uio);
+	}
 	while (error == 0  uio-uio_resid  0) {
 		vsize_t len;
 

Index: src/sys/nfs/nfs_bio.c
diff -u src/sys/nfs/nfs_bio.c:1.188.2.1 src/sys/nfs/nfs_bio.c:1.188.2.2
--- src/sys/nfs/nfs_bio.c:1.188.2.1	Wed Nov  2 21:53:59 2011
+++ src/sys/nfs/nfs_bio.c	Wed Jan  4 16:43:37 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_bio.c,v 1.188.2.1 2011/11/02 21:53:59 yamt Exp $	*/
+/*	$NetBSD: nfs_bio.c,v 1.188.2.2 2012/01/04 16:43:37 yamt Exp $	*/
 
 /*
  * Copyright (c) 1989, 1993
@@ -35,7 +35,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: nfs_bio.c,v 1.188.2.1 2011/11/02 21:53:59 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: nfs_bio.c,v 1.188.2.2 2012/01/04 16:43:37 yamt Exp $);
 
 #ifdef _KERNEL_OPT
 #include opt_nfs.h
@@ -147,7 +147,9 @@ nfs_bioread(struct vnode *vp, struct uio
 		nfsstats.biocache_reads++;
 
 		advice = IO_ADV_DECODE(ioflag);
-		error = 0;
+		if (uio-uio_offset + uio-uio_resid = np-n_size) {
+			uvm_loanobj(vp-v_uobj, uio);
+		}
 		while (uio-uio_resid  0) {
 			vsize_t bytelen;
 

Index: src/sys/ufs/ufs/ufs_readwrite.c
diff -u src/sys/ufs/ufs/ufs_readwrite.c:1.99 src/sys/ufs/ufs/ufs_readwrite.c:1.99.2.1
--- src/sys/ufs/ufs/ufs_readwrite.c:1.99	Mon Jul 11 08:27:41 2011
+++ src/sys/ufs/ufs/ufs_readwrite.c	Wed Jan  4 16:43:37 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ufs_readwrite.c,v 1.99 2011/07/11 08:27:41 hannken Exp $	*/
+/*	$NetBSD: ufs_readwrite.c,v 1.99.2.1 2012/01/04 16:43:37 yamt Exp $	*/
 
 /*-
  * Copyright (c) 1993
@@ -32,7 +32,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(1, $NetBSD: ufs_readwrite.c,v 1.99 2011/07/11 08:27:41 hannken Exp $);
+__KERNEL_RCSID(1, $NetBSD: ufs_readwrite.c,v 1.99.2.1 2012/01/04 16:43:37 yamt Exp $);
 
 #ifdef LFS_READWRITE
 #define	FS			struct lfs
@@ -123,6 +123,9 @@ READ(void *v)
 	if (usepc) {
 		const int advice = IO_ADV_DECODE(ap-a_ioflag);
 
+		if (uio-uio_offset + uio-uio_resid = vp-v_size) {
+			uvm_loanobj(vp-v_uobj, uio);
+		}
 		while (uio-uio_resid  0) {
 			if (ioflag  IO_DIRECT) {
 genfs_directio(vp, uio, ioflag);



CVS commit: src/sys/dev/rasops

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 17:01:52 UTC 2012

Modified Files:
src/sys/dev/rasops: rasops32.c rasops8.c

Log Message:
use CHAR_IN_FONT() and WSFONT_GLYPH() macros


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/dev/rasops/rasops32.c
cvs rdiff -u -r1.28 -r1.29 src/sys/dev/rasops/rasops8.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/rasops/rasops32.c
diff -u src/sys/dev/rasops/rasops32.c:1.23 src/sys/dev/rasops/rasops32.c:1.24
--- src/sys/dev/rasops/rasops32.c:1.23	Tue Jan  3 23:15:11 2012
+++ src/sys/dev/rasops/rasops32.c	Wed Jan  4 17:01:52 2012
@@ -1,4 +1,4 @@
-/*	 $NetBSD: rasops32.c,v 1.23 2012/01/03 23:15:11 macallan Exp $	*/
+/*	 $NetBSD: rasops32.c,v 1.24 2012/01/04 17:01:52 macallan Exp $	*/
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: rasops32.c,v 1.23 2012/01/03 23:15:11 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: rasops32.c,v 1.24 2012/01/04 17:01:52 macallan Exp $);
 
 #include opt_rasops.h
 
@@ -92,9 +92,8 @@ rasops32_putchar(void *cookie, int row, 
 #endif
 
 	/* check if character fits into font limits */
-	if (uc  font-firstchar ||
-	(uc - font-firstchar) = font-numchars)
-	return;
+	if (!CHAR_IN_FONT(uc, font))
+		return;
 
 	rp = (int32_t *)(ri-ri_bits + row*ri-ri_yscale + col*ri-ri_xscale);
 	if (ri-ri_hwbits)
@@ -123,8 +122,7 @@ rasops32_putchar(void *cookie, int row, 
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		while (height--) {
@@ -184,9 +182,8 @@ rasops32_putchar_aa(void *cookie, int ro
 #endif
 
 	/* check if character fits into font limits */
-	if (uc  font-firstchar ||
-	(uc - font-firstchar) = font-numchars)
-	return;
+	if (!CHAR_IN_FONT(uc, font))
+		return;
 
 	rp = (int32_t *)(ri-ri_bits + row*ri-ri_yscale + col*ri-ri_xscale);
 	if (ri-ri_hwbits)
@@ -215,8 +212,7 @@ rasops32_putchar_aa(void *cookie, int ro
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		r0 = (clr[0]  16)  0xff;

Index: src/sys/dev/rasops/rasops8.c
diff -u src/sys/dev/rasops/rasops8.c:1.28 src/sys/dev/rasops/rasops8.c:1.29
--- src/sys/dev/rasops/rasops8.c:1.28	Wed Dec 28 08:36:46 2011
+++ src/sys/dev/rasops/rasops8.c	Wed Jan  4 17:01:52 2012
@@ -1,4 +1,4 @@
-/* 	$NetBSD: rasops8.c,v 1.28 2011/12/28 08:36:46 macallan Exp $	*/
+/* 	$NetBSD: rasops8.c,v 1.29 2012/01/04 17:01:52 macallan Exp $	*/
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: rasops8.c,v 1.28 2011/12/28 08:36:46 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: rasops8.c,v 1.29 2012/01/04 17:01:52 macallan Exp $);
 
 #include opt_rasops.h
 
@@ -153,8 +153,7 @@ rasops8_putchar(void *cookie, int row, i
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		while (height--) {
@@ -285,8 +284,7 @@ rasops8_putchar8(void *cookie, int row, 
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		while (height--) {
@@ -380,8 +378,7 @@ rasops8_putchar12(void *cookie, int row,
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		while (height--) {
@@ -474,8 +471,7 @@ rasops8_putchar16(void *cookie, int row,
 			}
 		}
 	} else {
-		uc -= font-firstchar;
-		fr = (u_char *)font-data + uc * ri-ri_fontscale;
+		fr = WSFONT_GLYPH(uc, font);
 		fs = font-stride;
 
 		while (height--) {



CVS commit: src/usr.bin/cdplay

2012-01-04 Thread Matthias Drochner
Module Name:src
Committed By:   drochner
Date:   Wed Jan  4 17:07:20 UTC 2012

Modified Files:
src/usr.bin/cdplay: cdplay.c

Log Message:
kill unnecessary srandom() call which crept in in rev. 1.33


To generate a diff of this commit:
cvs rdiff -u -r1.44 -r1.45 src/usr.bin/cdplay/cdplay.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/cdplay/cdplay.c
diff -u src/usr.bin/cdplay/cdplay.c:1.44 src/usr.bin/cdplay/cdplay.c:1.45
--- src/usr.bin/cdplay/cdplay.c:1.44	Sat Nov 26 23:20:41 2011
+++ src/usr.bin/cdplay/cdplay.c	Wed Jan  4 17:07:20 2012
@@ -1,4 +1,4 @@
-/* 	$NetBSD: cdplay.c,v 1.44 2011/11/26 23:20:41 christos Exp $	*/
+/* 	$NetBSD: cdplay.c,v 1.45 2012/01/04 17:07:20 drochner Exp $	*/
 
 /*
  * Copyright (c) 1999, 2000, 2001 Andrew Doran.
@@ -40,7 +40,7 @@
 
 #include sys/cdefs.h
 #ifndef lint
-__RCSID($NetBSD: cdplay.c,v 1.44 2011/11/26 23:20:41 christos Exp $);
+__RCSID($NetBSD: cdplay.c,v 1.45 2012/01/04 17:07:20 drochner Exp $);
 #endif /* not lint */
 
 #include sys/types.h
@@ -245,7 +245,6 @@ main(int argc, char **argv)
 	}
 
 	opencd();
-	srandom((u_long)time(NULL));
 	da.afd = -1;
 
 	if (argc  0) {



CVS commit: src/usr.bin/cdplay

2012-01-04 Thread Matthias Drochner
Module Name:src
Committed By:   drochner
Date:   Wed Jan  4 17:26:21 UTC 2012

Modified Files:
src/usr.bin/cdplay: cdplay.1 cdplay.c

Log Message:
-make digital mode work in non-interactive mode (init sighandler
 earlier, sleep(3) until playing finished)
-also switch to digital mode if an audio device is given on the
 cmd line, or the (new) CDPLAY_DIGITAL env var is set

(The latter can be used to make digital mode default per system.
As I see it, analog mode is not dead yet - two of three external
DVD drives I looked at have a speaker output.)


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/usr.bin/cdplay/cdplay.1
cvs rdiff -u -r1.45 -r1.46 src/usr.bin/cdplay/cdplay.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/cdplay/cdplay.1
diff -u src/usr.bin/cdplay/cdplay.1:1.23 src/usr.bin/cdplay/cdplay.1:1.24
--- src/usr.bin/cdplay/cdplay.1:1.23	Sat Nov 26 23:20:41 2011
+++ src/usr.bin/cdplay/cdplay.1	Wed Jan  4 17:26:21 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: cdplay.1,v 1.23 2011/11/26 23:20:41 christos Exp $
+.\	$NetBSD: cdplay.1,v 1.24 2012/01/04 17:26:21 drochner Exp $
 .\
 .\ Copyright (c) 1999, 2000 Andrew Doran.
 .\ All rights reserved.
@@ -26,7 +26,7 @@
 .\
 .\ from FreeBSD: cdcontrol.1,v 1.16.2.2 1999/01/31 15:36:01 billf Exp
 .\
-.Dd November 26, 2011
+.Dd January 3, 2012
 .Dt CDPLAY 1
 .Os
 .Sh NAME
@@ -57,6 +57,12 @@ and
 will be tried (in this order) to find the device; as a last resort,
 .Pa /dev/sound
 will be used.
+If the
+.Dq Fl a
+command line option is used, or the
+.Ev CDPLAY_DIGITAL
+environment variable is present,
+digital transfer mode is switched on automatically.
 .It Fl f Ar device
 Specify the control device to use.
 Both absolute paths and paths relative to

Index: src/usr.bin/cdplay/cdplay.c
diff -u src/usr.bin/cdplay/cdplay.c:1.45 src/usr.bin/cdplay/cdplay.c:1.46
--- src/usr.bin/cdplay/cdplay.c:1.45	Wed Jan  4 17:07:20 2012
+++ src/usr.bin/cdplay/cdplay.c	Wed Jan  4 17:26:21 2012
@@ -1,4 +1,4 @@
-/* 	$NetBSD: cdplay.c,v 1.45 2012/01/04 17:07:20 drochner Exp $	*/
+/* 	$NetBSD: cdplay.c,v 1.46 2012/01/04 17:26:21 drochner Exp $	*/
 
 /*
  * Copyright (c) 1999, 2000, 2001 Andrew Doran.
@@ -40,7 +40,7 @@
 
 #include sys/cdefs.h
 #ifndef lint
-__RCSID($NetBSD: cdplay.c,v 1.45 2012/01/04 17:07:20 drochner Exp $);
+__RCSID($NetBSD: cdplay.c,v 1.46 2012/01/04 17:26:21 drochner Exp $);
 #endif /* not lint */
 
 #include sys/types.h
@@ -204,6 +204,7 @@ main(int argc, char **argv)
 	const char *elline;
 	int scratch, rv;
 	struct sigaction sa_timer;
+	const char *use_digital = NULL; /* historical default */
 
 	cdname = getenv(MUSIC_CD);
 	if (cdname == NULL)
@@ -219,10 +220,14 @@ main(int argc, char **argv)
 	if (!da.auname)
 		da.auname = /dev/sound;
 
+	use_digital = getenv(CDPLAY_DIGITAL);
+
 	while ((c = getopt(argc, argv, a:f:h)) != -1)
 		switch (c) {
 		case 'a':
 			da.auname = optarg;
+			if (!use_digital)
+use_digital = ;
 			continue;
 		case 'f':
 			cdname = optarg;
@@ -247,6 +252,15 @@ main(int argc, char **argv)
 	opencd();
 	da.afd = -1;
 
+	sigemptyset(sa_timer.sa_mask);
+	sa_timer.sa_handler = sig_timer;
+	sa_timer.sa_flags = SA_RESTART;
+	if ((rv = sigaction(SIGALRM, sa_timer, NULL))  0)
+		err(EXIT_FAILURE, sigaction());
+
+	if (use_digital)
+		start_digital(use_digital);
+
 	if (argc  0) {
 		interactive = 0;
 		for (p = buf; argc--  0; argv++) {
@@ -277,12 +291,6 @@ main(int argc, char **argv)
 	el_set(elptr, EL_SIGNAL, 1);
 	el_source(elptr, NULL);
 
-	sigemptyset(sa_timer.sa_mask);
-	sa_timer.sa_handler = sig_timer;
-	sa_timer.sa_flags = SA_RESTART;
-	if ((rv = sigaction(SIGALRM, sa_timer, NULL))  0)
-		err(EXIT_FAILURE, sigaction());
-
 	for (;;) {
 		line = NULL;
 		arg = NULL;
@@ -1131,7 +1139,7 @@ play_track(int tstart, int istart, int t
 
 	if ((rv = ioctl(fd, CDIOCPLAYTRACKS, t))  0) {
 		int oerrno = errno;
-		if (errno == EINVAL  start_digital(5) == 0)
+		if (errno == EINVAL  start_digital() == 0)
 			return play_track(tstart, istart, tend, iend);
 		errno = oerrno;
 		warn(ioctl(CDIOCPLAYTRACKS));
@@ -1159,6 +1167,9 @@ play_digital(int start, int end)
 	da.lba_start = start;
 	da.lba_end = --end;
 	da.changed = da.playing = 1;
+	if (!interactive)
+		while (da.playing)
+			sleep(1);
 	return (0);
 }
 



CVS commit: src/sys/dev/rasops

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 20:16:20 UTC 2012

Modified Files:
src/sys/dev/rasops: rasops8.c

Log Message:
add support for anti-aliased fonts in r3g3b2


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/rasops/rasops8.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/rasops/rasops8.c
diff -u src/sys/dev/rasops/rasops8.c:1.29 src/sys/dev/rasops/rasops8.c:1.30
--- src/sys/dev/rasops/rasops8.c:1.29	Wed Jan  4 17:01:52 2012
+++ src/sys/dev/rasops/rasops8.c	Wed Jan  4 20:16:20 2012
@@ -1,4 +1,4 @@
-/* 	$NetBSD: rasops8.c,v 1.29 2012/01/04 17:01:52 macallan Exp $	*/
+/* 	$NetBSD: rasops8.c,v 1.30 2012/01/04 20:16:20 macallan Exp $	*/
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: rasops8.c,v 1.29 2012/01/04 17:01:52 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: rasops8.c,v 1.30 2012/01/04 20:16:20 macallan Exp $);
 
 #include opt_rasops.h
 
@@ -43,6 +43,7 @@ __KERNEL_RCSID(0, $NetBSD: rasops8.c,v 
 #include dev/rasops/rasops.h
 
 static void 	rasops8_putchar(void *, int, int, u_int, long attr);
+static void 	rasops8_putchar_aa(void *, int, int, u_int, long attr);
 #ifndef RASOPS_SMALL
 static void 	rasops8_putchar8(void *, int, int, u_int, long attr);
 static void 	rasops8_putchar12(void *, int, int, u_int, long attr);
@@ -75,21 +76,25 @@ void
 rasops8_init(struct rasops_info *ri)
 {
 
-	switch (ri-ri_font-fontwidth) {
+	if FONT_IS_ALPHA(ri-ri_font) {
+		ri-ri_ops.putchar = rasops8_putchar_aa;
+	} else {
+		switch (ri-ri_font-fontwidth) {
 #ifndef RASOPS_SMALL
-	case 8:
-		ri-ri_ops.putchar = rasops8_putchar8;
-		break;
-	case 12:
-		ri-ri_ops.putchar = rasops8_putchar12;
-		break;
-	case 16:
-		ri-ri_ops.putchar = rasops8_putchar16;
-		break;
+		case 8:
+			ri-ri_ops.putchar = rasops8_putchar8;
+			break;
+		case 12:
+			ri-ri_ops.putchar = rasops8_putchar12;
+			break;
+		case 16:
+			ri-ri_ops.putchar = rasops8_putchar16;
+			break;
 #endif /* !RASOPS_SMALL */
-	default:
-		ri-ri_ops.putchar = rasops8_putchar;
-		break;
+		default:
+			ri-ri_ops.putchar = rasops8_putchar;
+			break;
+		}
 	}
 	if (ri-ri_flg  RI_8BIT_IS_RGB) {
 		ri-ri_rnum = 3;
@@ -191,6 +196,115 @@ rasops8_putchar(void *cookie, int row, i
 	}
 }
 
+static void
+rasops8_putchar_aa(void *cookie, int row, int col, u_int uc, long attr)
+{
+	int width, height, cnt, fs;
+	u_char *dp, *rp, *hp, *hrp, *fr, bg, fg, pixel;
+	struct rasops_info *ri = (struct rasops_info *)cookie;
+	struct wsdisplay_font *font = PICK_FONT(ri, uc);
+	int x, y, r, g, b, aval;
+	int r1, g1, b1, r0, g0, b0, fgo, bgo;
+
+	hp = hrp = NULL;
+
+	if (!CHAR_IN_FONT(uc, font))
+		return;
+
+#ifdef RASOPS_CLIPPING
+	/* Catches 'row  0' case too */
+	if ((unsigned)row = (unsigned)ri-ri_rows)
+		return;
+
+	if ((unsigned)col = (unsigned)ri-ri_cols)
+		return;
+#endif
+	rp = ri-ri_bits + row * ri-ri_yscale + col * ri-ri_xscale;
+	if (ri-ri_hwbits)
+		hrp = ri-ri_hwbits + row * ri-ri_yscale + col *
+		ri-ri_xscale;
+
+	height = font-fontheight;
+	width = font-fontwidth;
+	bg = (u_char)ri-ri_devcmap[(attr  16)  0xf];
+	fg = (u_char)ri-ri_devcmap[(attr  24)  0xf];
+
+	if (uc == ' ') {
+
+		while (height--) {
+			dp = rp;
+			rp += ri-ri_stride;
+			if (ri-ri_hwbits) {
+hp = hrp;
+hrp += ri-ri_stride;
+			}
+
+			for (cnt = width; cnt; cnt--) {
+*dp++ = bg;
+if (ri-ri_hwbits)
+	*hp++ = bg;
+			}
+		}
+	} else {
+		fr = WSFONT_GLYPH(uc, font);
+		fs = font-stride;
+		/*
+		 * we need the RGB colours here, get offsets into rasops_cmap
+		 */
+		fgo = ((attr  24)  0xf) * 3;
+		bgo = ((attr  16)  0xf) * 3;
+
+		r0 = rasops_cmap[bgo];
+		r1 = rasops_cmap[fgo];
+		g0 = rasops_cmap[bgo + 1];
+		g1 = rasops_cmap[fgo + 1];
+		b0 = rasops_cmap[bgo + 2];
+		b1 = rasops_cmap[fgo + 2];
+
+		for (y = 0; y  height; y++) {
+			dp = rp;
+			for (x = 0; x  width; x++) {
+aval = *fr;
+fr++;
+if (aval == 0) {
+	pixel = bg;
+} else if (aval == 255) {
+	pixel = fg;
+} else {
+	r = aval * r1 + (255 - aval) * r0;
+	g = aval * g1 + (255 - aval) * g0;
+	b = aval * b1 + (255 - aval) * b0;
+	pixel = ((r  0xe000)  8) |
+		((g  0xe000)  11) |
+		((b  0xc000)  14);
+}
+*dp = pixel;
+dp++;
+			}
+			if (ri-ri_hwbits) {
+memcpy(rp, hrp, width);
+hrp += ri-ri_stride;
+			}
+			rp += ri-ri_stride;
+
+		}
+	}
+
+	/* Do underline */
+	if ((attr  1) != 0) {
+
+		rp -= (ri-ri_stride  1);
+		if (ri-ri_hwbits)
+			hrp -= (ri-ri_stride  1);
+
+		while (width--) {
+			*rp++ = fg;
+			if (ri-ri_hwbits)
+*hrp++ = fg;
+		}
+	}
+}
+
 #ifndef RASOPS_SMALL
 /*
  * Recompute the 4x1 blitting stamp.



CVS commit: src/sys/dev/rasops

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 20:17:06 UTC 2012

Modified Files:
src/sys/dev/rasops: rasops.c

Log Message:
rasops8 expects the colour value replicated in every byte in devcmap[], so
fix that for r3g3b2


To generate a diff of this commit:
cvs rdiff -u -r1.68 -r1.69 src/sys/dev/rasops/rasops.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/rasops/rasops.c
diff -u src/sys/dev/rasops/rasops.c:1.68 src/sys/dev/rasops/rasops.c:1.69
--- src/sys/dev/rasops/rasops.c:1.68	Wed Dec 28 08:36:46 2011
+++ src/sys/dev/rasops/rasops.c	Wed Jan  4 20:17:05 2012
@@ -1,4 +1,4 @@
-/*	 $NetBSD: rasops.c,v 1.68 2011/12/28 08:36:46 macallan Exp $	*/
+/*	 $NetBSD: rasops.c,v 1.69 2012/01/04 20:17:05 macallan Exp $	*/
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: rasops.c,v 1.68 2011/12/28 08:36:46 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: rasops.c,v 1.69 2012/01/04 20:17:05 macallan Exp $);
 
 #include opt_rasops.h
 #include rasops_glue.h
@@ -841,7 +841,10 @@ rasops_init_devcmap(struct rasops_info *
 		/* Fill the word for generic routines, which want this */
 		if (ri-ri_depth == 24)
 			c = c | ((c  0xff)  24);
-		else if (ri-ri_depth = 16)
+		else if (ri-ri_depth == 8) {
+			c = c | (c  8);
+			c |= c  16;
+		} else if (ri-ri_depth = 16)
 			c = c | (c  16);
 
 		/* 24bpp does bswap on the fly. {32,16,15}bpp do it here. */



CVS commit: src/sys/dev/wsfb

2012-01-04 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Jan  4 20:18:29 UTC 2012

Modified Files:
src/sys/dev/wsfb: genfb.c

Log Message:
support anti-aliased fonts in 8 bit, generate an appropriate colour map


To generate a diff of this commit:
cvs rdiff -u -r1.44 -r1.45 src/sys/dev/wsfb/genfb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/wsfb/genfb.c
diff -u src/sys/dev/wsfb/genfb.c:1.44 src/sys/dev/wsfb/genfb.c:1.45
--- src/sys/dev/wsfb/genfb.c:1.44	Wed Dec 28 18:37:58 2011
+++ src/sys/dev/wsfb/genfb.c	Wed Jan  4 20:18:28 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: genfb.c,v 1.44 2011/12/28 18:37:58 macallan Exp $ */
+/*	$NetBSD: genfb.c,v 1.45 2012/01/04 20:18:28 macallan Exp $ */
 
 /*-
  * Copyright (c) 2007 Michael Lorenz
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: genfb.c,v 1.44 2011/12/28 18:37:58 macallan Exp $);
+__KERNEL_RCSID(0, $NetBSD: genfb.c,v 1.45 2012/01/04 20:18:28 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -74,6 +74,7 @@ static int	genfb_putcmap(struct genfb_so
 static int 	genfb_getcmap(struct genfb_softc *, struct wsdisplay_cmap *);
 static int 	genfb_putpalreg(struct genfb_softc *, uint8_t, uint8_t,
 			uint8_t, uint8_t);
+static void	genfb_init_palette(struct genfb_softc *);
 
 static void	genfb_brightness_up(device_t);
 static void	genfb_brightness_down(device_t);
@@ -196,9 +197,9 @@ genfb_attach(struct genfb_softc *sc, str
 	struct rasops_info *ri;
 	uint16_t crow;
 	long defattr;
-	int i, j;
 	bool console;
 #ifdef SPLASHSCREEN
+	int i, j;
 	int error = ENXIO;
 #endif
 
@@ -280,14 +281,9 @@ genfb_attach(struct genfb_softc *sc, str
 	if (sc-sc_want_clear)
 		(*ri-ri_ops.eraserows)(ri, 0, ri-ri_rows, defattr);
 
+#ifdef SPLASHSCREEN
 	j = 0;
 	for (i = 0; i  min(1  sc-sc_depth, 256); i++) {
-#ifndef SPLASHSCREEN
-		sc-sc_cmap_red[i] = rasops_cmap[j];
-		sc-sc_cmap_green[i] = rasops_cmap[j + 1];
-		sc-sc_cmap_blue[i] = rasops_cmap[j + 2];
-		j += 3;
-#else
 		if (i = SPLASH_CMAP_OFFSET 
 		i  SPLASH_CMAP_OFFSET + SPLASH_CMAP_SIZE) {
 			splash_get_cmap(i,
@@ -300,11 +296,9 @@ genfb_attach(struct genfb_softc *sc, str
 			sc-sc_cmap_blue[i] = rasops_cmap[j + 2];
 		}
 		j += 3;
-#endif
 	}
 	genfb_restore_palette(sc);
 
-#ifdef SPLASHSCREEN
 	sc-sc_splash.si_depth = sc-sc_depth;
 	sc-sc_splash.si_bits = sc-sc_console_screen.scr_ri.ri_bits;
 	sc-sc_splash.si_hwbits = sc-sc_fbaddr;
@@ -317,10 +311,12 @@ genfb_attach(struct genfb_softc *sc, str
 		SPLASH_F_CENTER|SPLASH_F_FILL);
 		if (error) {
 			SCREEN_ENABLE_DRAWING(sc-sc_console_screen);
+			genfb_init_palette(sc);
 			vcons_replay_msgbuf(sc-sc_console_screen);
 		}
 	}
 #else
+	genfb_init_palette(sc);
 	vcons_replay_msgbuf(sc-sc_console_screen);
 #endif
 
@@ -406,6 +402,7 @@ genfb_ioctl(void *v, void *vs, u_long cm
 		SPLASH_F_CENTER|SPLASH_F_FILL);
 			} else {
 SCREEN_ENABLE_DRAWING(sc-sc_console_screen);
+genfb_init_palette(sc);
 			}
 			vcons_redraw_screen(ms);
 			return 0;
@@ -513,6 +510,10 @@ genfb_init_screen(void *cookie, struct v
 	if (ri-ri_depth == 32)
 		ri-ri_flg |= RI_ENABLE_ALPHA;
 
+	if (ri-ri_depth == 8)
+		ri-ri_flg |= RI_ENABLE_ALPHA | RI_8BIT_IS_RGB;
+
+
 	rasops_init(ri, sc-sc_height / 8, sc-sc_width / 8);
 	ri-ri_caps = WSSCREEN_WSCOLORS;
 
@@ -605,6 +606,47 @@ genfb_restore_palette(struct genfb_softc
 	}
 }
 
+static void
+genfb_init_palette(struct genfb_softc *sc)
+{
+	int i, j, tmp;
+
+	if (sc-sc_depth == 8) {
+		/* generate an r3g3b2 colour map */
+		for (i = 0; i  256; i++) {
+			tmp = i  0xe0;
+			/*
+			 * replicate bits so 0xe0 maps to a red value of 0xff
+			 * in order to make white look actually white
+			 */
+			tmp |= (tmp  3) | (tmp  6);
+			sc-sc_cmap_red[i] = tmp;
+
+			tmp = (i  0x1c)  3;
+			tmp |= (tmp  3) | (tmp  6);
+			sc-sc_cmap_green[i] = tmp;
+
+			tmp = (i  0x03)  6;
+			tmp |= tmp  2;
+			tmp |= tmp  4;
+			sc-sc_cmap_blue[i] = tmp;
+
+			genfb_putpalreg(sc, i, sc-sc_cmap_red[i],
+   sc-sc_cmap_green[i],
+   sc-sc_cmap_blue[i]);
+		}
+	} else {
+		/* steal rasops' ANSI cmap */
+		j = 0;
+		for (i = 0; i  256; i++) {
+			sc-sc_cmap_red[i] = rasops_cmap[j];
+			sc-sc_cmap_green[i] = rasops_cmap[j + 1];
+			sc-sc_cmap_blue[i] = rasops_cmap[j + 2];
+			j += 3;
+		}
+	}
+}
+
 static int
 genfb_putpalreg(struct genfb_softc *sc, uint8_t idx, uint8_t r, uint8_t g,
 uint8_t b)



CVS commit: src/distrib/notes/common

2012-01-04 Thread Adrian Steinmann
Module Name:src
Committed By:   ast
Date:   Thu Jan  5 05:48:28 UTC 2012

Modified Files:
src/distrib/notes/common: main

Log Message:
Add ast@ to the list of NetBSD developers.


To generate a diff of this commit:
cvs rdiff -u -r1.482 -r1.483 src/distrib/notes/common/main

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/notes/common/main
diff -u src/distrib/notes/common/main:1.482 src/distrib/notes/common/main:1.483
--- src/distrib/notes/common/main:1.482	Tue Nov  1 02:04:43 2011
+++ src/distrib/notes/common/main	Thu Jan  5 05:48:27 2012
@@ -1,4 +1,4 @@
-.\	$NetBSD: main,v 1.482 2011/11/01 02:04:43 tcort Exp $
+.\	$NetBSD: main,v 1.483 2012/01/05 05:48:27 ast Exp $
 .\
 .\ Copyright (c) 1999-2008 The NetBSD Foundation, Inc.
 .\ All rights reserved.
@@ -1340,6 +1340,7 @@ If you're one of them, and would like to
 .It Ta T K Spindler Ta Mt dog...@netbsd.org
 .It Ta Matthew Sporleder Ta Mt m...@netbsd.org
 .It Ta Bill Squier Ta Mt g...@netbsd.org
+.It Ta Adrian Steinmann Ta Mt a...@netbsd.org
 .It Ta Bill Studenmund Ta Mt wrstu...@netbsd.org
 .It Ta Kevin Sullivan Ta Mt sulli...@netbsd.org
 .It Ta Kimmo Suominen Ta Mt k...@netbsd.org