Recent changes to this wiki:

A31 installation instructions
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- wikisrc/ports/evbarm/allwinner.mdwn	18 Nov 2014 08:17:22 -0000	1.33
+++ wikisrc/ports/evbarm/allwinner.mdwn	22 Nov 2014 13:41:58 -0000	1.34
@@ -52,10 +52,12 @@
 
 # Installation
 
-## A10 / A20 based boards
+## A10 / A20 / A31 based boards
 
 * Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *beagleboard.img*
-* Download a U-Boot build for your board from the linux-sunxi web site <http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/>
+* Download a U-Boot build for your board
+  * A10/A20: Download from the linux-sunxi web site <http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/>
+  * A31: The standard u-boot-sunxi tree doesn't support A31 yet. Until sun6i support is merged, a build is available at <http://dis.invisible.ca/allwinner/a31/> 
 * Write the *u-boot-sunxi-with-spl.bin* loader to the base image:
 [[!template  id=programlisting text="""
 # dd if=u-boot-sunxi-with-spl.bin of=beagleboard.img bs=1k seek=8 conv=notrunc
@@ -68,10 +70,6 @@
 uenvcmd=mmc dev 0; mmc rescan; fatload mmc 0:1 82000000 netbsd.ub; bootm 82000000
 """]]
 
-## A31 based boards
-
-TBD.
-
 # Big (endian) fun
 
 You can run this boards with a little endian (this is the default and implied by above install instructions)

add 5.1.5 and 5.2.3. grrrrr.
Index: wikisrc/releng.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng.mdwn,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- wikisrc/releng.mdwn	4 Nov 2014 05:59:20 -0000	1.12
+++ wikisrc/releng.mdwn	19 Nov 2014 07:56:38 -0000	1.13
@@ -32,9 +32,9 @@
 * Next Minor release: NetBSD 5.3 (No release date proposed)
   + CVS branch tag: <code>netbsd-5</code>
 * Actively supported teeny releases:
-  + [NetBSD 5.2.2](http://www.netbsd.org/releases/formal-5/NetBSD-5.2.2.html)
+  + [NetBSD 5.2.3](http://www.netbsd.org/releases/formal-5/NetBSD-5.2.3.html)
     - CVS branch tag: <code>netbsd-5-2</code>
-  + [NetBSD 5.1.4](http://www.netbsd.org/releases/formal-5/NetBSD-5.1.4.html)
+  + [NetBSD 5.1.5](http://www.netbsd.org/releases/formal-5/NetBSD-5.1.5.html)
     - CVS branch tag: <code>netbsd-5-1</code>
 * [Current pull-up queue for the netbsd-5 branch](http://releng.netbsd.org/cgi-bin/req-5.cgi)
 

there is no beaglebone.img. use beagleboard.img.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- wikisrc/ports/evbarm/allwinner.mdwn	17 Nov 2014 18:52:42 -0000	1.32
+++ wikisrc/ports/evbarm/allwinner.mdwn	18 Nov 2014 08:17:22 -0000	1.33
@@ -54,11 +54,11 @@
 
 ## A10 / A20 based boards
 
-* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *beaglebone.img*
+* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *beagleboard.img*
 * Download a U-Boot build for your board from the linux-sunxi web site <http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/>
 * Write the *u-boot-sunxi-with-spl.bin* loader to the base image:
 [[!template  id=programlisting text="""
-# dd if=u-boot-sunxi-with-spl.bin of=beaglebone.img bs=1k seek=8 conv=notrunc
+# dd if=u-boot-sunxi-with-spl.bin of=beagleboard.img bs=1k seek=8 conv=notrunc
 """]]
 * Write the image to an SD card.
 * Copy the kernel (netbsd.ub) for your board to the root of the MS-DOS partition.

IR receiver works on A20 and A31. IR transmitter on A20 is not supported.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 16:14:47 -0000	1.31
+++ wikisrc/ports/evbarm/allwinner.mdwn	17 Nov 2014 18:52:42 -0000	1.32
@@ -34,7 +34,7 @@
    - DDC / EDID mode detection
    - Audio support
  - Framebuffer
- - IR (A31)
+ - IR receiver (A20/A31)
 
 # TODO
  - SoCs
@@ -48,7 +48,7 @@
  - TV input (Hummingbird A31)
  - NAND
  - Fast Ethernet (EMAC)
- - IR (A20)
+ - IR transmitter (A20)
 
 # Installation
 

Added a comment: Using NetBSD based sockets, implement a TCP client and TCP Server to demonstrate trivially secure file download from server.
--- /dev/null	2014-11-17 08:20:00.000000000 +0000
+++ wikisrc/examples/socket_programming/comment_3_26d8d43c8a023ee0832a8dda5c1d6eb8._comment	2014-11-17 08:26:12.000000000 +0000
@@ -0,0 +1,50 @@
+[[!comment format=mdwn
+ username="https://www.google.com/accounts/o8/id?id=AItOawnuJe4W1NBJVj6pfcQVO7Ebicw3Yzpq6mE"
+ nickname="Niranjan"
+ subject="Using NetBSD based sockets, implement a TCP client and TCP Server to demonstrate trivially secure file download from server."
+ date="2014-11-17T08:26:08Z"
+ content="""
+Using NetBSD based sockets, implement a TCP client and TCP Server to demonstrate trivially secure file download from server.
+
+Environment/Tools required: Linux RHEL4/5/6 and gcc/g++ compiler and vi editor (recommended) OR Windows XP/Vista/7/8 with Visual studio.
+
+Learning Objective for student:
+
+Understand Protocol messaging and parsing.
+Manage multiple connections at a server side
+Manage the state of a connection at both client and server side.
+Ability to use NetBSD Sockets via C API.
+Binary vs Text and practical issues with Endianness !
+Ability to effectively use fread, fwrite APIs for file management
+can also use read/write system calls.
+Understanding Standards and compatibility (and the inherent difficulty!) between different (not differing!) implementations. Note: This is a group assignment. Each group can have maximum of 10 students.
+If group of 10 students is opted, 5 students may contribute to the client and another 5 students may contribute to the server. but put together at a minimum, the expected result is a group's server should work with its own client.
+If a group's server/client are compatible with other group's client/servers, it will receive more credit. ** Each group is expected to write both the client and a server.\" -1- Details:
+The messaging mechanism is based on Type-Length-Value (TLV) The Message Format is TYPE Field ---- Length Field --- Value field --------------- ---- 8 bytes --- 4 Bytes int ---- buffer of length bytes ---- Note: If Length Field is ZERO, then the Value field is empty which is still a perfectly valid message.
+eg. LOGINOK message - See details below.
+All types are of size 8 chars and always uppercase. Valid Types for Client messages are: LOGIN, AUTH, GETFILE Valid Types for Server messages are: NEEDAUTH, LOGINOK, DATA, ERROR As Type field is 8 bytes, it will employ 'SPACE' as padding. i.e. LOGIN will be sent as \"LOGIN \"
+The message exchange details are as below: Client connects to the server. LOGIN is the first message sent by the client. If server requires authentication, it replies with NEEDAUTH message. If server does not require authentication, it replies with LOGINOK message. Client sends back AUTH message as a reply to NEEDAUTH message Server replies with LOGINOK if authentication successful, else replies will reply with ERROR and close the connection. Client if login was ok, i.e. received LOGINOK message, can send at any time, a file download request by sending the message GETFILE. Note: Only outgoing request must be in the network pipe. Upon receiving a GETFILE message, if server finds a matching file it can send the file contents back in the DATA message. If no matching file, it may send back an ERROR message.
+Note, any time the client can close the connection and go away,
+server needs to detect this and close the connection on its side as well. eg. if while server is sending a file, the client goes away, server needs to stop then and there. -2-
+The Client upon receiving the DATA message should store the contents appropriately into a file for later viewing.
+Server never advertises the file list on the server (unlike SCP/SFTP/FTP !)
+so clients need to know the file names
+a simple way is to query the user Note: A fancy UI is not required, rather a basic working UI with scanf() or fgets() should suffice. Note about GETFILE: The GETFILE message can send as value a full path name (absolute) or a relative path name. with \"/\" as directory separator. eg. If \"hello/details.txt\" is sent, server is supposed to look in its working directory the given path of the file. So in this case \"hello/details.txt\" and \"details.txt\" may refer to completely different files. Command Line arguments:
+./TSServer ./TSClient Note about Auth Mechanism: Any 2-way auth mechanism can be employed, trivially a Salted Password hash based mechanism can be employed. This avoids replay attacks! NOTE: * If the environment chosen is Linux, it comes with a tool called 'md5sum' which can be used to generate the Hashes on both client side and server side. * The server can store the list of passwords in some file. (Bad! Not secure, but ok for this barebones version) * Both the server and client programs may run in the same machine during development, but for testing it would be ideal to run them in different machines, to see how a client/server reacts when network goes away. ( Intentionally pull out the ethernet cable when the client is downloading a big file!) -3-
+
+Message Details
+
+There are totally 7 messages - Syntax/Structure is as below. 1. LOGIN 2. NEEDAUTH - randomly generated 3. AUTH 4. LOGINOK - no value sent. O byte length 5. ERROR - can be 0 byte length or contain an error string 6. GETFILE 7. DATA - x bytes indicating size + x bytes of data Note: x can be 0. which means empty file! A Sample Messaging
+
+C - Client; S - Server
+
+C: LOGIN rajesh S: NEEDAUTH aa1123 C: AUTH <Hash(Password + aa1123)> S: LOGINOK C: GETFILE detail.txt S: ERROR \"No Such file\" C: GETFILE details.txt S: DATA 100 \"some data ... of 100 bytes\" Client closes the connection after receiving the DATA and stores the data received into a file.
+
+Extras/Optional: (Attempting will lead to Extra credit)
+
+Server side : 1. Server can timeout an idle connection, where the idle timeout can be set as a command line argument. 2. Server can close the connection if client sends 'x' number of bad GETFILE messages. 'x' can be made configurable. 3. Server side handling of BAD Clients sending BAD/Invalid Messages/Out-of-Sequence Messages eg. A Client connecting and trying to send GETFILE Message without sending LOGIN 4. Implementing a simple Server side log with timestamp. 5. Server support for parallel multiple client connections with select() and FDSET mechanism of checking socket data availability or truly parallel threaded server! -4- Client side: 1. Supporting Parallel Connections to download multiple files from the server at a same time. eg. Via the UI can get the list of files as input from the user and open multiple parallel connections to the server send it to the server and start downloading the files at the same time. - Will need to reuse the connections as well. 2. Implementing a simple Client side download log with timestamp. 3. Take a download folder as a command line argument and all downloaded files with unique names to be stored in this folder. eg. if same file is downloaded twice, each filename will be unique by suffixing it with a timestamp. Note: As can be seen, the filesize in this barebones mechanism is restricted to 232 bytes - 4GB as the length field is only 4 Bytes. Extras (needs both server and client side co-operative changes) - Ability to support better Authentication schemes. - Ability to support big files on server side and client side - Ability to support RANGE where the server can send a portion of the file.
+
+RANGE message syntax:
+
+RANGE start end --- Value field has delimiter as CRLF \"\r\n\" eg. RANGE details.txt 20 300 When server receives a RANGE message it reads the file only the range requested i.e. 20 to 300 bytes (both inclusive) and returns that data. so data size will be typically end-start+1 bytes in this case 300-20+1 = 281 bytes Of course, if the file is much smaller than 300 bytes, server can only send the available bytes. Server should not choke on invalid RANGE values sent by a client, if 'start' is greater than 'end', etc.
+"""]]

Remove Cubieboard from supported list. Create a new "SoCs" section in TODO list, mention A10 and A80 here.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 13:44:42 -0000	1.30
+++ wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 16:14:47 -0000	1.31
@@ -4,13 +4,12 @@
 
 # Supported boards
  - [Banana Pi](http://www.bananapi.org/p/product.html) (BPI)
- - Cubieboard, Cubieboard 2 (CUBIEBOARD)
+ - Cubieboard 2 (CUBIEBOARD)
  - Cubietruck (CUBIETRUCK)
  - [Merrii Hummingbird A31](http://www.merrii.com/en/pla_d.asp?id=172) (HUMMINGBIRD_A31)
 
 # Supported hardware
  - SoCs
-   - Cortex-A8: A10
    - Cortex-A7: A20 (2-core), A31 (4-core)
  - SD/MMC controller (DMA)
  - DMA controller
@@ -38,6 +37,9 @@
  - IR (A31)
 
 # TODO
+ - SoCs
+   - Cortex-A8: A10
+   - Cortex-A7/A15: A80
  - OTG (A31)
  - USB device mode
  - Bluetooth / WiFi (Cubietruck, Hummingbird A31)

IR works on A31 now
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 00:26:59 -0000	1.29
+++ wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 13:44:42 -0000	1.30
@@ -35,6 +35,7 @@
    - DDC / EDID mode detection
    - Audio support
  - Framebuffer
+ - IR (A31)
 
 # TODO
  - OTG (A31)
@@ -45,7 +46,7 @@
  - TV input (Hummingbird A31)
  - NAND
  - Fast Ethernet (EMAC)
- - IR
+ - IR (A20)
 
 # Installation
 

Mention options for dealing with overscan.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- wikisrc/ports/evbarm/allwinner.mdwn	12 Nov 2014 10:41:57 -0000	1.28
+++ wikisrc/ports/evbarm/allwinner.mdwn	15 Nov 2014 00:26:59 -0000	1.29
@@ -97,6 +97,8 @@
 
 To use HDMI for the console device, add *console=fb* to bootargs in uEnv.txt.
 
+If the connected display does not let you disable overscan, you can add a margin to the framebuffer by with the *fb.margin* bootargs option. For example, to set a 25-pixel margin around the screen, add *fb.margin=25* to uEnv.txt
+
 # HDMI audio
 
 The default audio device is the analog audio codec. To change the default device, use the *audiocfg* command:

TODO: IR
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- wikisrc/ports/evbarm/allwinner.mdwn	12 Nov 2014 00:47:19 -0000	1.27
+++ wikisrc/ports/evbarm/allwinner.mdwn	12 Nov 2014 10:41:57 -0000	1.28
@@ -45,6 +45,7 @@
  - TV input (Hummingbird A31)
  - NAND
  - Fast Ethernet (EMAC)
+ - IR
 
 # Installation
 

How to change the default audio device
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- wikisrc/ports/evbarm/allwinner.mdwn	11 Nov 2014 17:25:47 -0000	1.26
+++ wikisrc/ports/evbarm/allwinner.mdwn	12 Nov 2014 00:47:19 -0000	1.27
@@ -96,6 +96,21 @@
 
 To use HDMI for the console device, add *console=fb* to bootargs in uEnv.txt.
 
+# HDMI audio
+
+The default audio device is the analog audio codec. To change the default device, use the *audiocfg* command:
+
+[[!template  id=programlisting text="""
+a31# audiocfg list
+0: [*] audio0 @ awinac0: Allwinner CODEC A31, 2 playback channels
+1: [ ] audio1 @ awinhdmiaudio0: Allwinner HDMI 1.4, 2 playback channels
+a31# audiocfg default 1
+setting default audio device to audio1
+a31# audiocfg list
+0: [ ] audio0 @ awinac0: Allwinner CODEC A31, 2 playback channels
+1: [*] audio1 @ awinhdmiaudio0: Allwinner HDMI 1.4, 2 playback channels
+"""]]
+
 # Board specific notes
 
 ## Merrii Hummingbird A31

Note DDC, EDID, and HDMI audio support
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- wikisrc/ports/evbarm/allwinner.mdwn	10 Nov 2014 18:32:49 -0000	1.25
+++ wikisrc/ports/evbarm/allwinner.mdwn	11 Nov 2014 17:25:47 -0000	1.26
@@ -32,6 +32,8 @@
  - SATA (A10/A20)
  - Gigabit Ethernet (GMAC)
  - HDMI (A20/A31)
+   - DDC / EDID mode detection
+   - Audio support
  - Framebuffer
 
 # TODO

Document "console=fb" boot option
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- wikisrc/ports/evbarm/allwinner.mdwn	10 Nov 2014 18:29:01 -0000	1.24
+++ wikisrc/ports/evbarm/allwinner.mdwn	10 Nov 2014 18:32:49 -0000	1.25
@@ -90,6 +90,10 @@
 
 Some pre-compiled .bin files can be found here: <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/allwinner/fex/>
 
+# Framebuffer console
+
+To use HDMI for the console device, add *console=fb* to bootargs in uEnv.txt.
+
 # Board specific notes
 
 ## Merrii Hummingbird A31

HDMI and frame buffer is supported now
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- wikisrc/ports/evbarm/allwinner.mdwn	5 Nov 2014 01:22:36 -0000	1.23
+++ wikisrc/ports/evbarm/allwinner.mdwn	10 Nov 2014 18:29:01 -0000	1.24
@@ -31,10 +31,10 @@
    - OTG (not yet working on A31)
  - SATA (A10/A20)
  - Gigabit Ethernet (GMAC)
+ - HDMI (A20/A31)
+ - Framebuffer
 
 # TODO
- - HDMI (some work completed here for A20)
- - Framebuffer
  - OTG (A31)
  - USB device mode
  - Bluetooth / WiFi (Cubietruck, Hummingbird A31)

Added a comment: Various Tuning Performance stuff
--- /dev/null	2014-11-07 18:32:00.000000000 +0000
+++ wikisrc/How_to_increase_ulimit_with_rc.conf/comment_1_5410f793fe33e9076e47b299e9ffe84f._comment	2014-11-07 18:39:46.000000000 +0000
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="https://launchpad.net/~emmanuel-kasper"
+ nickname="emmanuel-kasper"
+ subject="Various Tuning Performance stuff"
+ date="2014-11-07T18:39:41Z"
+ content="""
+is although here:http://wiki.netbsd.org/tutorials/tuning_netbsd_for_performance/
+"""]]

no need to rename ISOs anymore
Index: wikisrc/releng/release-prep.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/release-prep.mdwn,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- wikisrc/releng/release-prep.mdwn	5 Nov 2014 21:02:55 -0000	1.16
+++ wikisrc/releng/release-prep.mdwn	7 Nov 2014 04:32:36 -0000	1.17
@@ -99,7 +99,6 @@
    and proceed.
 
 8. Create ISOs (macppc, mac68k, source).  See below for instructions.
-   Rename ISOs to blahcd-&lt;release&gt;.iso (for 6.0 and beyond, NetBSD-&lt;version&gt;-&lt;port&gt;.iso)
    Create hashes for ISOs (<code>cksum -a sha512 NetBSD* > SHA512</code>)
 
 9. rsync to nbftp.  It goes to a staging dir in /pub/NetBSD/misc/releng first.

Fix typo "aditional" -> "additional"
Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- wikisrc/ports/evbarm.mdwn	6 Nov 2014 16:44:21 -0000	1.12
+++ wikisrc/ports/evbarm.mdwn	6 Nov 2014 16:46:23 -0000	1.13
@@ -281,7 +281,7 @@
 * Other devices inserted into the PC/104 (_isa_) expansion slot
 
 """
-aditional="""
+additional="""
   * The [NetBSD Diskless HOWTO](/docs/network/netboot/)
   * [ Porting NetBSD/evbarm to the Arcom Viper](http://www.cs.hut.fi/~pooka/pubs/EuroBSDCon2005/viper.pdf), presented at EuroBSDCon 2005. 
 """

Sort the supported hardware list.
Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/ports/evbarm.mdwn	6 Nov 2014 16:40:19 -0000	1.11
+++ wikisrc/ports/evbarm.mdwn	6 Nov 2014 16:44:21 -0000	1.12
@@ -18,40 +18,41 @@
 
 [[!toc startlevel=3]]
 
-### Raspberry Pi Foundation **Raspberry Pi**
-The [[Raspberry Pi]] is a low-cost credit-card-sized computer from the Raspberry Pi Foundation.
+### ADI Engineering **BRH** ("Big Red Head") 
 
-### BeagleBoard.org **BeagleBone**
-The [[BeagleBone]] is a low-cost credit-card-sized computer from BeagleBoard.
+The BRH is an evaluation and development platform for the Intel **i80200**
+XScale processor. The BRH is based on ADI's **BECC** ("Big Endian Companion
+Chip"). The BRH is capable of both big- and little-endian operation, although
+NetBSD currently only supports little-endian operation. More information about
+the BRH can be found on [ADI Engineering's web
+page](http://www.adiengineering.com/productsBRH.html).
+
+Support for the BRH was written by Jason Thorpe, and contributed by Wasabi
+Systems, Inc.
+
+ * On-board NS16550-compatible serial ports (_com_)
+ * On-board Intel i82559 Ethernet on the PCI bus (_fxp_)
+ * On-chip timer on the BECC (used as system clock)
+ * Other devices inserted into the PCI slot
+
+The BRH comes with 128M of SDRAM. Systems with BECC revision 7 or less are
+limited to 64M due to the layout of the PCI DMA windows. Users of these
+systems should obtain an FPGA upgrade from ADI to revision 8 or later of the
+BECC.
 
 ### Allwinner Technology A10/A20/A31
 Various boards based on [[Allwinner]] SoCs are supported, including the BananaPi, Cubieboard, Cubieboard 2, Cubietruck, and Merrii Hummingbird A31.
 
-### Technologic Systems **TS-7200**
+### Arcom **Viper**
 
-The TS-7200 is a low-cost mass-produced PC/104 embedded single board computer
-intended as a general purpose core for real embedded applications. The TS-7200
-uses the Cirrus Logic EP9302 ARM9 system-on-chip and comes with a PC/104 (isa)
-bus and can either boot to CompactFlash or onboard flash. The board also has
-general purpose digital IO and optional multichannel analog-to-digital
-converters. More information on the TS-7200 can be found at [Technologic
-Systems](http://www.embeddedarm.com/epc/ts7200-spec-h.html).
+The Arcom Viper is a single board computer based on the PXA255 XScale
+processor.
 
-Support for the TS-7200 was written by Jesse Off
+Support for the Arcom Viper was written by Antti Kantee.
 
-* On-CPU RS232 UARTs (2) (_epcom_)
-* On-CPU 10/100 Ethernet MAC (_epe_)
-* CompactFlash socket (_wdc_)
-* USB 1.1 ports (2) (_ohci_)
-* Watchdog timer on CPLD (_tspld_)
-* TMP124 high precision temperature sensor via sysctl
-* 64Hz system clock from on-CPU timers (_epclk_)
-* HD44780 2x24 text mode LCD (_tslcd_)
-* 4x4 16 button matrix keypad (_wskbd_)
-* TS-5620 battery backed RTC daughter-card (_tsrtc_)
-* 1,2,4 port serial TS-SER daughter cards (_com_)
-* Up to 4 10Mb TS-ETH10 daughter cards (_tscs_)
-* Other devices inserted into the PC/104 (_isa_) expansion slot
+ * On-chip timers (_saost_ used as system clock)
+ * On-chip serial ports (_com_)
+ * On-board SMC91C111 ethernet (_sm_) 
 
 ### ARM, Ltd. **Integrator**
 
@@ -69,6 +70,62 @@
  * PrimeCell PL030 Real-time Clock in the System Controller FPGA (_plrtc_)
  * Other devices inserted into the PCI expansion slots
 
+### Atmark Techno **Armadillo-9**
+
+The Armadillo-9 is a single board computer based on the EP9315 processor.
+
+Support for the Armadillo-9 was written by Katsuomi Hamajima.
+
+ * On-CPU RS232 UARTs (2) (_epcom_)
+ * On-CPU 10/100 Ethernet MAC (_epe_)
+ * system clock from on-CPU timers (_epclk_)
+ * CompactFlash socket (_eppcic_)
+ * USB 1.1 ports (_ohci_)
+
+### BeagleBoard.org **BeagleBone**
+The [[BeagleBone]] is a low-cost credit-card-sized computer from BeagleBoard.
+
+### Gumstix, Inc. **gumstix**
+
+The [gumstix](http://www.gumstix.com/) is a small form-factor motherboard
+based on the PXA255 and PXA270 XScale processor. Supports only PXA255 now.
+
+Support for the gumstix was written by KIYOHARA Takashi.
+
+ * basix
+ * cfstix
+ * etherstix
+ * netCF
+ * netDUO
+ * netDUO-mmc
+ * netMMC 
+
+When booting, it is necessary to set these with u-boot dynamically.
+
+<pre> > go 0xa0200000 busheader=basix</pre>
+
+ * audiostix
+ * console-st (waysmall - STUART)
+ * console-hw (waysmall)
+ * GPSstix (GPS not test)
+ * tweener
+
+### Intel **DBPXA250** ("Lubbock") 
+
+DBPXA250 (a.k.a. Lubbock) is an evaluation and development platform for the
+Intel **PXA250** XScale Core application processor. More information about the **DBPXA250** can be found at [Intel website](http://www.intel.com/design/pca/applicationsprocessors/swsup/index.htm).
+
+Support for the **DBPXA250** was written by Hiroyuki Bessho, and contributed
+by Genetec Corp.
+
+ * On-chip timers (_saost_ used as system clock)
+ * On-chip 2 serial port (_com_)
+ * On-board SMC91C96 ethernet (_sm_)
+ * On-board SA-1111 StrongArm companion chip (_sacc_)
+ * PS/2 keyboard (_pckbd_)
+ * 640x480 LCD (_lcd_)
+ * PCMCIA and CF card slots
+
 ### Intel **IQ31244**
 
 The IQ31244 is a development platform for the Intel **IOP321** I/O Processor
@@ -115,22 +172,6 @@
  * On-chip watchdog timer (_iopwdog_)
  * Other devices inserted into the PCI-X expansion slots
 
-### Team ASA, Inc. **Npwr**
-
-The Npwr is an IOP310-based design targeted at the network-attached storage
-space. The Npwr comes in several configurations (single or dual Gigabit
-Ethernet, single or dual Ultra160 SCSI), and can be purchased as a bare board
-or as a small server appliance. More information on the Npwr can be found at
-the [Team ASA web page](http://www.teamasa.com/).
-
-Support for the Npwr was written by Jason Thorpe and Allen Briggs, and
-contributed by Wasabi Systems, Inc.
-
- * On-board Intel i82544 Gigabit Ethernet on the PCI bus (_wm_)
- * On-board LSI Logic 53c1010 Ultra160 SCSI on the PCI bus (_siop_)
- * On-board timer in the CPLD (used as system clock)
- * On-board NS16550-compatible serial port (_com_)
-
 ### Intel **IXM1200**
 
 The IXM1200 is the reference platform for the Intel **IXP1200** Network
@@ -143,6 +184,26 @@
  * On-chip timers (ixpclk0 used as system clock)
  * On-chip serial port (_ixpcom_)
 
+### NOVATEC **NTNP425B** ("ZAO425") 
+
+NTNP425B is an evaluation and development platform for the Intel **IXP425**
+XScale Core NetworkProcessor. NTNP425B is based on the reference board of
+Intel **IXDP425**. The **NTNP425B** is capable of only big-endian operation.
+Since the library for micro-engine(NPE) offered from Intel Corp. is big-
+endian. More information about the **NTNP425B** can be found on [product
+catalogue of **NTNP425B**(2.5MB,PDF
+file)](http://www.novatec.co.jp/NTNP425BBrochureE.pdf).
+
+Support for the NTNP425B was written by Ichiro FUKUHARA.
+
+ * On-chip timers (_ixpclk0_ used as system clock)
+ * On-chip 2 serial port (_ixpcom0_ and _ixpcom1_)
+ * Other devices inserted into the PCI/mPCI slot
+ * On-chip watchdog timer (_ixpwdog_)
+
+### Raspberry Pi Foundation **Raspberry Pi**
+The [[Raspberry Pi]] is a low-cost credit-card-sized computer from the Raspberry Pi Foundation.
+
 ### Samsung **SMDK2410**
 
 The SMDK2410 is the reference platform for the Samsung **S3C2410** processor,
@@ -177,108 +238,48 @@
  * On-chip timers (used as system clock)
  * Other devices inserted into the PCI slots 
 
-### ADI Engineering **BRH** ("Big Red Head") 
-
-The BRH is an evaluation and development platform for the Intel **i80200**
-XScale processor. The BRH is based on ADI's **BECC** ("Big Endian Companion
-Chip"). The BRH is capable of both big- and little-endian operation, although
-NetBSD currently only supports little-endian operation. More information about
-the BRH can be found on [ADI Engineering's web

(Diff truncated)
Add a TOC under the Supported Hardware heading
Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/ports/evbarm.mdwn	20 Oct 2014 10:05:38 -0000	1.10
+++ wikisrc/ports/evbarm.mdwn	6 Nov 2014 16:40:19 -0000	1.11
@@ -15,6 +15,9 @@
 Matt Thomas is the maintainer of NetBSD/evbarm.
 """
 supported_hardware="""
+
+[[!toc startlevel=3]]
+
 ### Raspberry Pi Foundation **Raspberry Pi**
 The [[Raspberry Pi]] is a low-cost credit-card-sized computer from the Raspberry Pi Foundation.
 
@@ -283,4 +286,3 @@
 """
 ]]
 [[!tag tier1port]]
-

two more places in the website that need updating
Index: wikisrc/releng/release-prep.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/release-prep.mdwn,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- wikisrc/releng/release-prep.mdwn	26 Sep 2014 03:58:38 -0000	1.15
+++ wikisrc/releng/release-prep.mdwn	5 Nov 2014 21:02:55 -0000	1.16
@@ -147,6 +147,8 @@
     - Commit release's HTML file in htdocs/releases/formal-&lt;blah&gt;
     - Update htdocs/share/xml/misc.ent (release.*)
     - Add htdocs/support/security/patches-&lt;blah&gt;
+    - Update htdocs/support/security/index.xml
+    - Update htdocs/support/security/release.xml
     - Update htdocs/releases/formal-&lt;blah&gt;/index.xml
     - Update htdocs/mirrors/torrents/
     - Update htdocs/releases/formal.xml

Make it bold instead of a headline.
Index: wikisrc/amazon_ec2/amis.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/amazon_ec2/amis.mdwn,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 18:44:37 -0000	1.42
+++ wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 18:46:26 -0000	1.43
@@ -138,7 +138,7 @@
 
 The following AMIs are for 32-bit instances.
 
-### Note: eu-central-1 (Frankfurt) does not have instances capable of running 32-bit PV AMIs.
+*Note: eu-central-1 (Frankfurt) does not have instances capable of running 32-bit PV AMIs.*
 
 <table class="center">
 <tr>

Small text, not large
Index: wikisrc/amazon_ec2/amis.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/amazon_ec2/amis.mdwn,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 18:43:43 -0000	1.41
+++ wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 18:44:37 -0000	1.42
@@ -138,7 +138,7 @@
 
 The following AMIs are for 32-bit instances.
 
-# Note: eu-central-1 (Frankfurt) does not have instances capable of running 32-bit PV AMIs.
+### Note: eu-central-1 (Frankfurt) does not have instances capable of running 32-bit PV AMIs.
 
 <table class="center">
 <tr>

Add 7.0_BETA amis, and a note about Frankfurt.
Index: wikisrc/amazon_ec2/amis.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/amazon_ec2/amis.mdwn,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -r1.40 -r1.41
--- wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 17:55:47 -0000	1.40
+++ wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 18:43:43 -0000	1.41
@@ -120,12 +120,25 @@
   <td>ami-51e2d450</td><!-- ap-northeast-1 -->
   <td>ami-f1a511ec</td><!-- sa-east-1 -->
 </tr>
+<tr>
+  <th>NetBSD 7.0_BETA_201411041110Z</th>
+  <td>ami-848a04ec</td><!-- us-east-1 -->
+  <td>ami-25e4f360</td><!-- us-west-1 -->
+  <td>ami-f586cec5</td><!-- us-west-2 -->
+  <td>ami-72cdfb6f</td><!-- eu-central-1 -->
+  <td>ami-f44fe583</td><!-- eu-west-1 -->
+  <td>ami-945271c6</td><!-- ap-southeast-1 -->
+  <td>ami-996d02a3</td><!-- ap-southeast-2 -->
+  <td>ami-61a59a60</td><!-- ap-northeast-1 -->
+  <td>ami-c301b6de</td><!-- sa-east-1 -->
+</tr>
 </table>
 
 ## i386 -- 32 bit AMIs
 
 The following AMIs are for 32-bit instances.
 
+# Note: eu-central-1 (Frankfurt) does not have instances capable of running 32-bit PV AMIs.
 
 <table class="center">
 <tr>
@@ -133,7 +146,6 @@
   <th>us-east-1<br />(Virginia)</th>
   <th>us-west-1<br />(N. California)</th>
   <th>us-west-2<br />(Oregon)</th>
-  <th>eu-central-1<br />(Frankfurt)</th>
   <th>eu-west-1<br />(Ireland)</th>
   <th>ap-southeast-1<br />(Singapore)</th>
   <th>ap-southeast-2<br />(Sydney)</th>
@@ -145,7 +157,6 @@
   <td>ami-0d82bf64</td><!-- us-east-1 -->
   <td>ami-50c8fa15</td><!-- us-west-1 -->
   <td>ami-7e1a7a4e</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-206a9e57</td><!-- eu-west-1 -->
   <td>ami-223e6870</td><!-- ap-southeast-1 -->
   <td>ami-b95fc183</td><!-- ap-southeast-2 -->
@@ -157,7 +168,6 @@
   <td>ami-3583be5c</td><!-- us-east-1 -->
   <td>ami-cccefc89</td><!-- us-west-1 -->
   <td>ami-fa1979ca</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-ca699dbd</td><!-- eu-west-1 -->
   <td>ami-1a3e6848</td><!-- ap-southeast-1 -->
   <td>ami-4f5fc175</td><!-- ap-southeast-2 -->
@@ -169,7 +179,6 @@
   <td>ami-8b87bae2</td><!-- us-east-1 -->
   <td>ami-30cbf975</td><!-- us-west-1 -->
   <td>ami-7c19794c</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-14689c63</td><!-- eu-west-1 -->
   <td>ami-ac3167fe</td><!-- ap-southeast-1 -->
   <td>ami-6f5fc155</td><!-- ap-southeast-2 -->
@@ -181,7 +190,6 @@
   <td>ami-fd2f3794</td><!-- us-east-1 -->
   <td>ami-da2b139f</td><!-- us-west-1 -->
   <td>ami-e42d58d4</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-ad9550da</td><!-- eu-west-1 -->
   <td>ami-02613250</td><!-- ap-southeast-1 -->
   <td>ami-450b937f</td><!-- ap-southeast-2 -->
@@ -193,7 +201,6 @@
   <td>ami-62249c0a</td><!-- us-east-1 -->
   <td>ami-7945503c</td><!-- us-west-1 -->
   <td>ami-ede2aedd</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-302e8247</td><!-- eu-west-1 -->
   <td>ami-3498be66</td><!-- ap-southeast-1 -->
   <td>ami-1d432e27</td><!-- ap-southeast-2 -->
@@ -205,7 +212,6 @@
   <td>ami-a185b8c8</td><!-- us-east-1 -->
   <td>ami-e4cefca1</td><!-- us-west-1 -->
   <td>ami-50187860</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-7e689c09</td><!-- eu-west-1 -->
   <td>ami-fa3167a8</td><!-- ap-southeast-1 -->
   <td>ami-1f5fc125</td><!-- ap-southeast-2 -->
@@ -217,7 +223,6 @@
   <td>ami-cd2b33a4</td><!-- us-east-1 -->
   <td>ami-6c2b1329</td><!-- us-west-1 -->
   <td>ami-fc2257cc</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-294fb55e</td><!-- eu-west-1 -->
   <td>ami-be7e2dec</td><!-- ap-southeast-1 -->
   <td>ami-7d089047</td><!-- ap-southeast-2 -->
@@ -229,11 +234,21 @@
   <td>ami-b618a0de</td><!-- us-east-1 -->
   <td>ami-3d5a4f78</td><!-- us-west-1 -->
   <td>ami-3be2ae0b</td><!-- us-west-2 -->
-  <td>-</td><!-- eu-central-1 -->
   <td>ami-aa2c80dd</td><!-- eu-west-1 -->
   <td>ami-5a98be08</td><!-- ap-southeast-1 -->
   <td>ami-fd402dc7</td><!-- ap-southeast-2 -->
   <td>ami-3befd93a</td><!-- ap-northeast-1 -->
   <td>ami-07a6121a</td><!-- sa-east-1 -->
 </tr>
+<tr>
+  <th>NetBSD 7.0_BETA_201411041110Z</th>
+  <td>ami-a28d03ca</td><!-- us-east-1 -->
+  <td>ami-73e4f336</td><!-- us-west-1 -->
+  <td>ami-5587cf65</td><!-- us-west-2 -->
+  <td>ami-184ee46f</td><!-- eu-west-1 -->
+  <td>ami-24527176</td><!-- ap-southeast-1 -->
+  <td>ami-5f6d0265</td><!-- ap-southeast-2 -->
+  <td>ami-efa699ee</td><!-- ap-northeast-1 -->
+  <td>ami-3101b62c</td><!-- sa-east-1 -->
+</tr>
 </table>

Make space for Frankfurt.
Index: wikisrc/amazon_ec2/amis.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/amazon_ec2/amis.mdwn,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- wikisrc/amazon_ec2/amis.mdwn	15 Oct 2014 23:50:58 -0000	1.39
+++ wikisrc/amazon_ec2/amis.mdwn	5 Nov 2014 17:55:47 -0000	1.40
@@ -17,6 +17,7 @@
   <th>us-east-1<br />(Virginia)</th>
   <th>us-west-1<br />(N. California)</th>
   <th>us-west-2<br />(Oregon)</th>
+  <th>eu-central-1<br />(Frankfurt)</th>
   <th>eu-west-1<br />(Ireland)</th>
   <th>ap-southeast-1<br />(Singapore)</th>
   <th>ap-southeast-2<br />(Sydney)</th>
@@ -28,6 +29,7 @@
   <td>ami-738eb31a</td><!-- us-east-1 -->
   <td>ami-8cc5f7c9</td><!-- us-west-1 -->
   <td>ami-6e16765e</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-226e9a55</td><!-- eu-west-1 -->
   <td>ami-4e31671c</td><!-- ap-southeast-1 -->
   <td>ami-815ec0bb</td><!-- ap-southeast-2 -->
@@ -39,6 +41,7 @@
   <td>ami-198cb170</td><!-- us-east-1 -->
   <td>ami-20c5f765</td><!-- us-west-1 -->
   <td>ami-841575b4</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-106d9967</td><!-- eu-west-1 -->
   <td>ami-643f6936</td><!-- ap-southeast-1 -->
   <td>ami-b15ec08b</td><!-- ap-southeast-2 -->
@@ -50,6 +53,7 @@
   <td>ami-e192af88</td><!-- us-east-1 -->
   <td>ami-5cc5f719</td><!-- us-west-1 -->
   <td>ami-48157578</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-6c6d991b</td><!-- eu-west-1 -->
   <td>ami-0830665a</td><!-- ap-southeast-1 -->
   <td>ami-695ec053</td><!-- ap-southeast-2 -->
@@ -61,6 +65,7 @@
   <td>ami-45465e2c</td><!-- us-east-1 -->
   <td>ami-22300867</td><!-- us-west-1 -->
   <td>ami-883643b8</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-154bb162</td><!-- eu-west-1 -->
   <td>ami-c47f2c96</td><!-- ap-southeast-1 -->
   <td>ami-3108900b</td><!-- ap-southeast-2 -->
@@ -72,6 +77,7 @@
   <td>ami-ee229a86</td><!-- us-east-1 -->
   <td>ami-ab5a4fee</td><!-- us-west-1 -->
   <td>ami-43e2ae73</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-c62d81b1</td><!-- eu-west-1 -->
   <td>ami-6e98be3c</td><!-- ap-southeast-1 -->
   <td>ami-c3402df9</td><!-- ap-southeast-2 -->
@@ -83,6 +89,7 @@
   <td>ami-1d90ad74</td><!-- us-east-1 -->
   <td>ami-aea092eb</td><!-- us-west-1 -->
   <td>ami-30076700</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-6a7d891d</td><!-- eu-west-1 -->
   <td>ami-dc34628e</td><!-- ap-southeast-1 -->
   <td>ami-a1a33d9b</td><!-- ap-southeast-2 -->
@@ -94,6 +101,7 @@
   <td>ami-87435bee</td><!-- us-east-1 -->
   <td>ami-223e0667</td><!-- us-west-1 -->
   <td>ami-26344116</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-6b55af1c</td><!-- eu-west-1 -->
   <td>ami-7e7f2c2c</td><!-- ap-southeast-1 -->
   <td>ami-fb178fc1</td><!-- ap-southeast-2 -->
@@ -105,6 +113,7 @@
   <td>ami-bc2c94d4</td><!-- us-east-1 -->
   <td>ami-415a4f04</td><!-- us-west-1 -->
   <td>ami-6ffbb75f</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-f253ff85</td><!-- eu-west-1 -->
   <td>ami-989bbdca</td><!-- ap-southeast-1 -->
   <td>ami-63402d59</td><!-- ap-southeast-2 -->
@@ -124,6 +133,7 @@
   <th>us-east-1<br />(Virginia)</th>
   <th>us-west-1<br />(N. California)</th>
   <th>us-west-2<br />(Oregon)</th>
+  <th>eu-central-1<br />(Frankfurt)</th>
   <th>eu-west-1<br />(Ireland)</th>
   <th>ap-southeast-1<br />(Singapore)</th>
   <th>ap-southeast-2<br />(Sydney)</th>
@@ -135,6 +145,7 @@
   <td>ami-0d82bf64</td><!-- us-east-1 -->
   <td>ami-50c8fa15</td><!-- us-west-1 -->
   <td>ami-7e1a7a4e</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-206a9e57</td><!-- eu-west-1 -->
   <td>ami-223e6870</td><!-- ap-southeast-1 -->
   <td>ami-b95fc183</td><!-- ap-southeast-2 -->
@@ -146,6 +157,7 @@
   <td>ami-3583be5c</td><!-- us-east-1 -->
   <td>ami-cccefc89</td><!-- us-west-1 -->
   <td>ami-fa1979ca</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-ca699dbd</td><!-- eu-west-1 -->
   <td>ami-1a3e6848</td><!-- ap-southeast-1 -->
   <td>ami-4f5fc175</td><!-- ap-southeast-2 -->
@@ -157,6 +169,7 @@
   <td>ami-8b87bae2</td><!-- us-east-1 -->
   <td>ami-30cbf975</td><!-- us-west-1 -->
   <td>ami-7c19794c</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-14689c63</td><!-- eu-west-1 -->
   <td>ami-ac3167fe</td><!-- ap-southeast-1 -->
   <td>ami-6f5fc155</td><!-- ap-southeast-2 -->
@@ -168,6 +181,7 @@
   <td>ami-fd2f3794</td><!-- us-east-1 -->
   <td>ami-da2b139f</td><!-- us-west-1 -->
   <td>ami-e42d58d4</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-ad9550da</td><!-- eu-west-1 -->
   <td>ami-02613250</td><!-- ap-southeast-1 -->
   <td>ami-450b937f</td><!-- ap-southeast-2 -->
@@ -179,6 +193,7 @@
   <td>ami-62249c0a</td><!-- us-east-1 -->
   <td>ami-7945503c</td><!-- us-west-1 -->
   <td>ami-ede2aedd</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-302e8247</td><!-- eu-west-1 -->
   <td>ami-3498be66</td><!-- ap-southeast-1 -->
   <td>ami-1d432e27</td><!-- ap-southeast-2 -->
@@ -190,6 +205,7 @@
   <td>ami-a185b8c8</td><!-- us-east-1 -->
   <td>ami-e4cefca1</td><!-- us-west-1 -->
   <td>ami-50187860</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-7e689c09</td><!-- eu-west-1 -->
   <td>ami-fa3167a8</td><!-- ap-southeast-1 -->
   <td>ami-1f5fc125</td><!-- ap-southeast-2 -->
@@ -201,6 +217,7 @@
   <td>ami-cd2b33a4</td><!-- us-east-1 -->
   <td>ami-6c2b1329</td><!-- us-west-1 -->
   <td>ami-fc2257cc</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-294fb55e</td><!-- eu-west-1 -->
   <td>ami-be7e2dec</td><!-- ap-southeast-1 -->
   <td>ami-7d089047</td><!-- ap-southeast-2 -->
@@ -212,6 +229,7 @@
   <td>ami-b618a0de</td><!-- us-east-1 -->
   <td>ami-3d5a4f78</td><!-- us-west-1 -->
   <td>ami-3be2ae0b</td><!-- us-west-2 -->
+  <td>-</td><!-- eu-central-1 -->
   <td>ami-aa2c80dd</td><!-- eu-west-1 -->
   <td>ami-5a98be08</td><!-- ap-southeast-1 -->
   <td>ami-fd402dc7</td><!-- ap-southeast-2 -->

MULTIPROCESSOR works now
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- wikisrc/ports/evbarm/allwinner.mdwn	30 Oct 2014 00:34:52 -0000	1.22
+++ wikisrc/ports/evbarm/allwinner.mdwn	5 Nov 2014 01:22:36 -0000	1.23
@@ -11,7 +11,7 @@
 # Supported hardware
  - SoCs
    - Cortex-A8: A10
-   - Cortex-A7: A20, A31
+   - Cortex-A7: A20 (2-core), A31 (4-core)
  - SD/MMC controller (DMA)
  - DMA controller
  - GPIO
@@ -33,7 +33,6 @@
  - Gigabit Ethernet (GMAC)
 
 # TODO
- - MULTIPROCESSOR is not yet stable
  - HDMI (some work completed here for A20)
  - Framebuffer
  - OTG (A31)

update current releases
Index: wikisrc/releng.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/releng.mdwn	26 Sep 2014 03:54:20 -0000	1.11
+++ wikisrc/releng.mdwn	4 Nov 2014 05:59:20 -0000	1.12
@@ -21,9 +21,9 @@
 * Next Minor Release: NetBSD 6.2 (No release date proposed)
   + CVS branch tag: <code>netbsd-6</code>
 * Actively supported teeny releases:
-  + [NetBSD 6.1.4](http://www.netbsd.org/releases/formal-6/NetBSD-6.1.4.html)
+  + [NetBSD 6.1.5](http://www.netbsd.org/releases/formal-6/NetBSD-6.1.5.html)
     - CVS branch tag: <code>netbsd-6-1</code>
-  + [NetBSD 6.0.5](http://www.netbsd.org/releases/formal-6/NetBSD-6.0.5.html)
+  + [NetBSD 6.0.6](http://www.netbsd.org/releases/formal-6/NetBSD-6.0.6.html)
     - CVS branch tag: <code>netbsd-6-0</code>
 * [Current pull-up queue for the netbsd-6 branch](http://releng.netbsd.org/cgi-bin/req-6.cgi)
 

Note location of pre-compiled fex bins.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- wikisrc/ports/evbarm/allwinner.mdwn	22 Oct 2014 00:43:23 -0000	1.21
+++ wikisrc/ports/evbarm/allwinner.mdwn	30 Oct 2014 00:34:52 -0000	1.22
@@ -89,6 +89,8 @@
 uenvcmd=mmc dev 0; mmc rescan; fatload mmc 0:1 43000000 cubieboard2.bin; fatload mmc 0:1 82000000 netbsd.ub; bootm 82000000
 """]]
 
+Some pre-compiled .bin files can be found here: <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/allwinner/fex/>
+
 # Board specific notes
 
 ## Merrii Hummingbird A31

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:25:37 -0000	1.19
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:26:59 -0000	1.20
@@ -526,7 +526,6 @@
     % sudo drvctl -a ata_hl -r atabus4
     % sudo raidctl -c raid0.conf raid0
     % sudo mount NAME=stripes /mnt
-    % sudo mount NAME=stripes /mnt
     % df -h /mnt
     Filesystem         Size       Used      Avail %Cap Mounted on
     /dev/dk10           11T       1.0G        10T   0% /mnt

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:24:46 -0000	1.18
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:25:37 -0000	1.19
@@ -536,5 +536,6 @@
 
 Unlike wedges, the raidframe devices are not automatically created when a disk attaches.
 That's why we needed the raidctl -c command. The raidframe driver however scans all disks
-available when booting and creates devices for all raidsets found.
+available when booting and autoconfigures devices for all raidsets found that have the
+autoconfig flag set.
 

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:23:28 -0000	1.17
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:24:46 -0000	1.18
@@ -513,7 +513,7 @@
     ** File system is clean; not checking
 </code></pre>
 
-Older versions of newfs do not support wedgenames, you need to
+Older versions of fsck do not support wedgenames, you need to
 specify the device, e.g. /dev/rdk10.
 
 ## and more

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:21:50 -0000	1.16
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:23:28 -0000	1.17
@@ -341,10 +341,10 @@
     
     4 partitions:
     #        size    offset     fstype [fsize bsize cpg/sgs]
-     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
-      d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
-      disklabel: boot block size 0
-      disklabel: super block size 0
+    a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+    d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+    disklabel: boot block size 0
+    disklabel: super block size 0
 </code></pre>
 
 ## using
@@ -462,8 +462,8 @@
     
     4 partitions:
     #        size    offset     fstype [fsize bsize cpg/sgs]
-     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
-     d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+    a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+    d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
     disklabel: boot block size 0
     disklabel: super block size 0
     % sudo dkctl raid0 listwedges

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:12:14 -0000	1.15
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:21:50 -0000	1.16
@@ -251,7 +251,7 @@
       11721044992          143         
       11721045135           32         Sec GPT table
       11721045167            1         Sec GPT header
-</code><pre>
+</code></pre>
 
 Since wedges are currently only created when a device is attached, we
 need either a reboot or some magic using drvctl.
@@ -260,7 +260,7 @@
     % sudo drvctl -d wd2
     % sudo drvctl -a ata_hl -r atabus3
     % sudo drvctl -a ata_hl -r atabus4
-</code><pre>
+</code></pre>
 
 The console or dmesg will reveal that both disks have been reattached
 and wedges have been created:
@@ -283,7 +283,7 @@
     dk6: 11721043968 blocks at 1024, type: ccd
     wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
     wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
-</code><pre>
+</code></pre>
 
 # CCD
 
@@ -296,7 +296,7 @@
 <pre><code>
    % sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
    ccdconfig: NAME=hugedisk1: No such file or directory
-</code><pre>
+</code></pre>
 
 This cannot easily be handled, because the NAME= syntax exists in userland.
 All tools that understand it, translate the wedge name into a device path.
@@ -313,7 +313,7 @@
 the disklabel from the first component.
 <pre><code>
    % sudo ccdconfig -u ccd0
-</code><pre>
+</code></pre>
 
 ## configuring
 For now we use the wedge device directly.
@@ -345,7 +345,7 @@
       d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
       disklabel: boot block size 0
       disklabel: super block size 0
-</code><pre>
+</code></pre>
 
 ## using
 Obviously the device that spans two disks is also too large for disklabel.
@@ -353,7 +353,7 @@
 <pre><code>
     % sudo dkctl ccd0 listwedges
     dkctl: /dev/rccd0d: listwedges: Inappropriate ioctl for device
-</code><pre>
+</code></pre>
 
 The ccd driver does not support wedges at all. But we can still use
 the raw partition.
@@ -370,7 +370,7 @@
     /dev/ccd0d          11T       4.0K        10T   0% /mnt
     % sudo umount /mnt
     % sudo ccdconfig -u ccd0
-</code><pre>
+</code></pre>
 
 # Raidframe
 Since ccd wasn't that good, lets create a RAID0 using the raidframe driver.
@@ -401,7 +401,7 @@
   11721044992          143         
   11721045135           32         Sec GPT table
   11721045167            1         Sec GPT header
-</code><pre>
+</code></pre>
 
 And the reattachment magic:
 <pre><code>
@@ -415,7 +415,7 @@
     % sudo dkctl wd2 listwedges
     /dev/rwd2d: 1 wedge:
     dk6: hugedisk2, 11721043968 blocks at 1024, type: raidframe
-</code><pre>
+</code></pre>
 
 ## configuring
 For raidframe we need a configuration file:
@@ -468,7 +468,7 @@
     disklabel: super block size 0
     % sudo dkctl raid0 listwedges
     /dev/rraid0d: no wedges configured
-</code><pre>
+</code></pre>
 
 ## formatting
 The raidframe driver has no problems with wedges. We can create a GPT
@@ -503,7 +503,7 @@
     1000+0 records out
     1048576000 bytes transferred in 4.961 secs (211363837 bytes/sec)
     % sudo umount /mnt
-</code><pre>
+</code></pre>
 
 ## checking
 And also be checked.
@@ -511,7 +511,7 @@
     % sudo fsck NAME=stripes
     ** /dev/rdk10
     ** File system is clean; not checking
-</code><pre>
+</code></pre>
 
 Older versions of newfs do not support wedgenames, you need to
 specify the device, e.g. /dev/rdk10.
@@ -532,7 +532,7 @@
     /dev/dk10           11T       1.0G        10T   0% /mnt
     % ls -l /mnt/scratch/testfile
     -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 21:47 /mnt/scratch/testfile
-</code><pre>
+</code></pre>
 
 Unlike wedges, the raidframe devices are not automatically created when a disk attaches.
 That's why we needed the raidctl -c command. The raidframe driver however scans all disks

u
Index: wikisrc/users/mlelstv.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv.mdwn,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- wikisrc/users/mlelstv.mdwn	23 Sep 2014 09:19:16 -0000	1.17
+++ wikisrc/users/mlelstv.mdwn	25 Oct 2014 22:15:45 -0000	1.18
@@ -4,6 +4,7 @@
 - [[Device naming, the first|mlelstv/device-naming]]
 - [[Device naming, the second|mlelstv/device-naming2]]
 - [[Disk interfaces in the kernel|mlelstv/disk-devices-layered]]
+- [[Using large disks|mlelstv/using-large-disks]]
 
 # 2
 - [[Supported video|mlelstv/supported-video]]

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:10:53 -0000	1.14
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:12:14 -0000	1.15
@@ -508,9 +508,9 @@
 ## checking
 And also be checked.
 <pre><code>
-% sudo fsck NAME=stripes
-** /dev/rdk10
-** File system is clean; not checking
+    % sudo fsck NAME=stripes
+    ** /dev/rdk10
+    ** File system is clean; not checking
 </code><pre>
 
 Older versions of newfs do not support wedgenames, you need to

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:10:14 -0000	1.13
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:10:53 -0000	1.14
@@ -315,7 +315,7 @@
    % sudo ccdconfig -u ccd0
 </code><pre>
 
-# configuring
+## configuring
 For now we use the wedge device directly.
 <pre><code>
     % sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
@@ -347,7 +347,7 @@
       disklabel: super block size 0
 </code><pre>
 
-# using
+## using
 Obviously the device that spans two disks is also too large for disklabel.
 What about wedges?
 <pre><code>

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:09:34 -0000	1.12
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:10:14 -0000	1.13
@@ -27,7 +27,7 @@
 The NetBSD kernel seems to recgonize the disk size fine. But when running
 the disklabel program to partition the disk, you get this:
 <pre><code>
-    pussyfoot: {%} disklabel wd1
+    % disklabel wd1
     # /dev/rwd1d:
     type: ESDI
     disk: WDC WD60EFRX-68M
@@ -77,14 +77,14 @@
 
 ## formatting
 <pre><code>
-    pussyfoot: {%} sudo newfs /dev/rwd1d
+    % sudo newfs /dev/rwd1d
     newfs: /dev/rwd1d partition type is not `4.2BSD'
 </code></pre>
 
 The raw partition has no correct type and newfs refuses to work, we
 have to persuade it a little bit:
 <pre><code>
-    pussyfoot: {%} sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
+    % sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
     /dev/rwd1d: 5723166.5MB (11721045168 sectors) block size 32768, fragment size 4096
             using 7710 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
     super-block backups (for fsck_ffs -b #) at:
@@ -98,34 +98,34 @@
 ## using
 Then we can mount and use the disk:
 <pre><code>
-    pussyfoot: {%} sudo mount /dev/wd1d /mnt
-    pussyfoot: {%} sudo mkdir -m 1777 /mnt/scratch
-    pussyfoot: {%} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
+    % sudo mount /dev/wd1d /mnt
+    % sudo mkdir -m 1777 /mnt/scratch
+    % dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
     1000+0 records in
     1000+0 records out
     1048576000 bytes transferred in 10.350 secs (101311690 bytes/sec)
-    pussyfoot: {%} ls -la /mnt/scratch/
+    % ls -la /mnt/scratch/
     total 2048592
     drwxrwxrwt  2 root     wheel         512 Oct 25 17:34 .
     drwxr-xr-x  3 root     wheel         512 Oct 25 17:34 ..
     -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 17:35 testfile
-    pussyfoot: {%} sudo umount /mnt
+    % sudo umount /mnt
 </code></pre>
 
 ## checking
 Filesystem checking needs extra effort:
 <pre><code>
-    pussyfoot: {%} sudo fsck /dev/rwd1d
+    % sudo fsck /dev/rwd1d
     fsck: vfstype `unused' on partition `/dev/rwd1d' is not supported
 </code></pre>
 
 Again you need to augment information from the disklabel for the raw
 partition:
 <pre><code>
-    pussyfoot: {%} sudo fsck -t ffs /dev/rwd1d
+    % sudo fsck -t ffs /dev/rwd1d
     ** /dev/rwd1d
     ** File system is clean; not checking
-    pussyfoot: {%} sudo fsck -t ffs -f /dev/rwd1d
+    % sudo fsck -t ffs -f /dev/rwd1d
     ** /dev/rwd1d
     ** File system is already clean
     ** Last Mounted on /mnt
@@ -164,7 +164,7 @@
 
 Here is a disk with a wedge:
 <pre><code>
-    pussyfoot: {%} sudo dkctl wd2 listwedges
+    % sudo dkctl wd2 listwedges
     /dev/rwd2d: 1 wedge:
     dk6: hugedisk2, 11721043968 blocks at 1024, type: ccd
 </code></pre>
@@ -173,15 +173,15 @@
 by specifying a name, start offset on the disk, the wedge size and
 a type.
 <pre><code>
-    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 34 500 ffs
+    % sudo dkctl wd2 addwedge testwedge 34 500 ffs
     dk5 created successfully.
-    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 500 100 unused
+    % sudo dkctl wd2 addwedge testwedge 500 100 unused
     dkctl: /dev/rwd2d: addwedge: Invalid argument
-    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 534 100 unused
+    % sudo dkctl wd2 addwedge testwedge 534 100 unused
     dkctl: /dev/rwd2d: addwedge: File exists
-    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge2 534 100 unused
+    % sudo dkctl wd2 addwedge testwedge2 534 100 unused
     dk10 created successfully.
-    pussyfoot: {%} sudo dkctl wd2 listwedges
+    % sudo dkctl wd2 listwedges
     /dev/rwd2d: 3 wedges:
     dk5: testwedge, 500 blocks at 34, type: ffs
     dk10: testwedge2, 100 blocks at 534, type: unused
@@ -191,7 +191,7 @@
 You can see that creation of a wedge is validated, it requires a unique
 name and the wedges must not overlap.
 <pre><code>
-    pussyfoot: {%} sudo newfs NAME=testwedge
+    % sudo newfs NAME=testwedge
     /dev/rdk5: 0.2MB (500 sectors) block size 4096, fragment size 512
             using 3 cylinder groups of 0.08MB, 21 blks, 32 inodes.
 	    super-block backups (for fsck_ffs -b #) at:
@@ -212,7 +212,7 @@
 
 A GPT can be displayed, created and edited with the GPT command:
 <pre><code>
-    pussyfoot: {%} sudo gpt show wd2
+    % sudo gpt show wd2
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -222,14 +222,14 @@
       11721044992          143         
       11721045135           32         Sec GPT table
       11721045167            1         Sec GPT header
-    pussyfoot: {%} sudo gpt show wd1
+    % sudo gpt show wd1
             start         size  index  contents
                 0  11721045168         
-    pussyfoot: {%} sudo gpt show wd1
+    % sudo gpt show wd1
             start         size  index  contents
                 0  11721045168         
-    pussyfoot: {%} sudo gpt create wd1
-    pussyfoot: {%} sudo gpt show wd1
+    % sudo gpt create wd1
+    % sudo gpt show wd1
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -237,11 +237,11 @@
                34  11721045101         
       11721045135           32         Sec GPT table
       11721045167            1         Sec GPT header
-    pussyfoot: {%} sudo gpt add -a 512k -l hugedisk1 -t ccd wd1
+    % sudo gpt add -a 512k -l hugedisk1 -t ccd wd1
     Partition 1 added, use:
             dkctl wd1 addwedge <wedgename> 1024 11721043968 <type>
     to create a wedge for it
-    pussyfoot: {%} sudo gpt show wd1
+    % sudo gpt show wd1
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -256,10 +256,10 @@
 Since wedges are currently only created when a device is attached, we
 need either a reboot or some magic using drvctl.
 <pre><code>
-    pussyfoot: {%} sudo drvctl -d wd1
-    pussyfoot: {%} sudo drvctl -d wd2
-    pussyfoot: {%} sudo drvctl -a ata_hl -r atabus3
-    pussyfoot: {%} sudo drvctl -a ata_hl -r atabus4
+    % sudo drvctl -d wd1
+    % sudo drvctl -d wd2
+    % sudo drvctl -a ata_hl -r atabus3
+    % sudo drvctl -a ata_hl -r atabus4
 </code><pre>
 
 The console or dmesg will reveal that both disks have been reattached
@@ -294,7 +294,7 @@
 ccd is a very old driver and has some deficiencies. For one, the ccdconfig
 tool doesn't understand wedge names.
 <pre><code>
-   pussyfoot: {%} sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
+   % sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
    ccdconfig: NAME=hugedisk1: No such file or directory
 </code><pre>
 
@@ -312,14 +312,14 @@
 needs to be removed again. The warning comes from the attempt to read
 the disklabel from the first component.
 <pre><code>
-   pussyfoot: {%} sudo ccdconfig -u ccd0
+   % sudo ccdconfig -u ccd0
 </code><pre>
 
 # configuring
 For now we use the wedge device directly.
 <pre><code>
-    pussyfoot: {%} sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
-    pussyfoot: {%} disklabel ccd0
+    % sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
+    % disklabel ccd0
     # /dev/rccd0d:
     type: ccd
     disk: ccd

(Diff truncated)
r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 21:25:51 -0000	1.11
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 22:09:34 -0000	1.12
@@ -27,7 +27,7 @@
 The NetBSD kernel seems to recgonize the disk size fine. But when running
 the disklabel program to partition the disk, you get this:
 <pre><code>
-    pussyfoot: {1} disklabel wd1
+    pussyfoot: {%} disklabel wd1
     # /dev/rwd1d:
     type: ESDI
     disk: WDC WD60EFRX-68M
@@ -77,14 +77,14 @@
 
 ## formatting
 <pre><code>
-    pussyfoot: {42} sudo newfs /dev/rwd1d
+    pussyfoot: {%} sudo newfs /dev/rwd1d
     newfs: /dev/rwd1d partition type is not `4.2BSD'
 </code></pre>
 
 The raw partition has no correct type and newfs refuses to work, we
 have to persuade it a little bit:
 <pre><code>
-    pussyfoot: {45} sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
+    pussyfoot: {%} sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
     /dev/rwd1d: 5723166.5MB (11721045168 sectors) block size 32768, fragment size 4096
             using 7710 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
     super-block backups (for fsck_ffs -b #) at:
@@ -98,34 +98,34 @@
 ## using
 Then we can mount and use the disk:
 <pre><code>
-    pussyfoot: {47} sudo mount /dev/wd1d /mnt
-    pussyfoot: {48} sudo mkdir -m 1777 /mnt/scratch
-    pussyfoot: {49} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
+    pussyfoot: {%} sudo mount /dev/wd1d /mnt
+    pussyfoot: {%} sudo mkdir -m 1777 /mnt/scratch
+    pussyfoot: {%} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
     1000+0 records in
     1000+0 records out
     1048576000 bytes transferred in 10.350 secs (101311690 bytes/sec)
-    pussyfoot: {50} ls -la /mnt/scratch/
+    pussyfoot: {%} ls -la /mnt/scratch/
     total 2048592
     drwxrwxrwt  2 root     wheel         512 Oct 25 17:34 .
     drwxr-xr-x  3 root     wheel         512 Oct 25 17:34 ..
     -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 17:35 testfile
-    pussyfoot: {51} sudo umount /mnt
+    pussyfoot: {%} sudo umount /mnt
 </code></pre>
 
 ## checking
 Filesystem checking needs extra effort:
 <pre><code>
-    pussyfoot: {58} sudo fsck /dev/rwd1d
+    pussyfoot: {%} sudo fsck /dev/rwd1d
     fsck: vfstype `unused' on partition `/dev/rwd1d' is not supported
 </code></pre>
 
 Again you need to augment information from the disklabel for the raw
 partition:
 <pre><code>
-    pussyfoot: {57} sudo fsck -t ffs /dev/rwd1d
+    pussyfoot: {%} sudo fsck -t ffs /dev/rwd1d
     ** /dev/rwd1d
     ** File system is clean; not checking
-    pussyfoot: {60} sudo fsck -t ffs -f /dev/rwd1d
+    pussyfoot: {%} sudo fsck -t ffs -f /dev/rwd1d
     ** /dev/rwd1d
     ** File system is already clean
     ** Last Mounted on /mnt
@@ -164,7 +164,7 @@
 
 Here is a disk with a wedge:
 <pre><code>
-    pussyfoot: {100} sudo dkctl wd2 listwedges
+    pussyfoot: {%} sudo dkctl wd2 listwedges
     /dev/rwd2d: 1 wedge:
     dk6: hugedisk2, 11721043968 blocks at 1024, type: ccd
 </code></pre>
@@ -173,15 +173,15 @@
 by specifying a name, start offset on the disk, the wedge size and
 a type.
 <pre><code>
-    pussyfoot: {103} sudo dkctl wd2 addwedge testwedge 34 500 ffs
+    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 34 500 ffs
     dk5 created successfully.
-    pussyfoot: {104} sudo dkctl wd2 addwedge testwedge 500 100 unused
+    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 500 100 unused
     dkctl: /dev/rwd2d: addwedge: Invalid argument
-    pussyfoot: {112} sudo dkctl wd2 addwedge testwedge 534 100 unused
+    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge 534 100 unused
     dkctl: /dev/rwd2d: addwedge: File exists
-    pussyfoot: {113} sudo dkctl wd2 addwedge testwedge2 534 100 unused
+    pussyfoot: {%} sudo dkctl wd2 addwedge testwedge2 534 100 unused
     dk10 created successfully.
-    pussyfoot: {114} sudo dkctl wd2 listwedges
+    pussyfoot: {%} sudo dkctl wd2 listwedges
     /dev/rwd2d: 3 wedges:
     dk5: testwedge, 500 blocks at 34, type: ffs
     dk10: testwedge2, 100 blocks at 534, type: unused
@@ -191,7 +191,7 @@
 You can see that creation of a wedge is validated, it requires a unique
 name and the wedges must not overlap.
 <pre><code>
-    pussyfoot: {140} sudo newfs NAME=testwedge
+    pussyfoot: {%} sudo newfs NAME=testwedge
     /dev/rdk5: 0.2MB (500 sectors) block size 4096, fragment size 512
             using 3 cylinder groups of 0.08MB, 21 blks, 32 inodes.
 	    super-block backups (for fsck_ffs -b #) at:
@@ -212,7 +212,7 @@
 
 A GPT can be displayed, created and edited with the GPT command:
 <pre><code>
-    pussyfoot: {9} sudo gpt show wd2
+    pussyfoot: {%} sudo gpt show wd2
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -222,14 +222,14 @@
       11721044992          143         
       11721045135           32         Sec GPT table
       11721045167            1         Sec GPT header
-    pussyfoot: {10} sudo gpt show wd1
+    pussyfoot: {%} sudo gpt show wd1
             start         size  index  contents
                 0  11721045168         
-    pussyfoot: {10} sudo gpt show wd1
+    pussyfoot: {%} sudo gpt show wd1
             start         size  index  contents
                 0  11721045168         
-    pussyfoot: {11} sudo gpt create wd1
-    pussyfoot: {12} sudo gpt show wd1
+    pussyfoot: {%} sudo gpt create wd1
+    pussyfoot: {%} sudo gpt show wd1
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -237,11 +237,11 @@
                34  11721045101         
       11721045135           32         Sec GPT table
       11721045167            1         Sec GPT header
-    pussyfoot: {31} sudo gpt add -a 512k -l hugedisk1 -t ccd wd1
+    pussyfoot: {%} sudo gpt add -a 512k -l hugedisk1 -t ccd wd1
     Partition 1 added, use:
             dkctl wd1 addwedge <wedgename> 1024 11721043968 <type>
     to create a wedge for it
-    pussyfoot: {57} sudo gpt show wd1
+    pussyfoot: {%} sudo gpt show wd1
             start         size  index  contents
                 0            1         PMBR
                 1            1         Pri GPT header
@@ -256,10 +256,10 @@
 Since wedges are currently only created when a device is attached, we
 need either a reboot or some magic using drvctl.
 <pre><code>
-    pussyfoot: {107} sudo drvctl -d wd1
-    pussyfoot: {108} sudo drvctl -d wd2
-    pussyfoot: {109} sudo drvctl -a ata_hl -r atabus3
-    pussyfoot: {110} sudo drvctl -a ata_hl -r atabus4
+    pussyfoot: {%} sudo drvctl -d wd1
+    pussyfoot: {%} sudo drvctl -d wd2
+    pussyfoot: {%} sudo drvctl -a ata_hl -r atabus3
+    pussyfoot: {%} sudo drvctl -a ata_hl -r atabus4
 </code><pre>
 
 The console or dmesg will reveal that both disks have been reattached
@@ -294,7 +294,7 @@
 ccd is a very old driver and has some deficiencies. For one, the ccdconfig
 tool doesn't understand wedge names.
 <pre><code>
-   pussyfoot: {10} sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
+   pussyfoot: {%} sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
    ccdconfig: NAME=hugedisk1: No such file or directory
 </code><pre>
 
@@ -312,14 +312,14 @@
 needs to be removed again. The warning comes from the attempt to read
 the disklabel from the first component.
 <pre><code>
-   pussyfoot: {42} sudo ccdconfig -u ccd0
+   pussyfoot: {%} sudo ccdconfig -u ccd0
 </code><pre>
 
 # configuring
 For now we use the wedge device directly.
 <pre><code>
-    pussyfoot: {14} sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
-    pussyfoot: {16} disklabel ccd0
+    pussyfoot: {%} sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
+    pussyfoot: {%} disklabel ccd0
     # /dev/rccd0d:
     type: ccd
     disk: ccd

(Diff truncated)
u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 20:13:00 -0000	1.10
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 21:25:51 -0000	1.11
@@ -491,6 +491,7 @@
 </code></pre>
 
 ## using
+Wedges can be mounted by name.
 <pre><code>
     pussyfoot: {115} sudo mount NAME=stripes /mnt
     pussyfoot: {116} df -h /mnt
@@ -504,6 +505,14 @@
     pussyfoot: {121} sudo umount /mnt
 </code><pre>
 
+## checking
+And checked by name.
+<pre><code>
+pussyfoot: {49} sudo fsck NAME=stripes
+** /dev/rdk10
+** File system is clean; not checking
+</code><pre>
+
 ## and more
 And verify that this would reconfigure automatically after a reboot:
 <pre><code>

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 20:09:27 -0000	1.9
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 20:13:00 -0000	1.10
@@ -315,6 +315,7 @@
    pussyfoot: {42} sudo ccdconfig -u ccd0
 </code><pre>
 
+# configuring
 For now we use the wedge device directly.
 <pre><code>
     pussyfoot: {14} sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
@@ -346,6 +347,7 @@
       disklabel: super block size 0
 </code><pre>
 
+# using
 Obviously the device that spans two disks is also too large for disklabel.
 What about wedges?
 <pre><code>
@@ -371,7 +373,6 @@
 </code><pre>
 
 # Raidframe
-
 Since ccd wasn't that good, lets create a RAID0 using the raidframe driver.
 
 First, change the partition types:
@@ -416,6 +417,7 @@
     dk6: hugedisk2, 11721043968 blocks at 1024, type: raidframe
 </code><pre>
 
+## configuring
 For raidframe we need a configuration file:
 <pre><code>
     pussyfoot: {75} cat /etc/raid0.conf
@@ -468,6 +470,7 @@
     /dev/rraid0d: no wedges configured
 </code><pre>
 
+## formatting
 The raidframe driver has no problems with wedges. We can create a GPT
 on the raid device and create the wedge and format a filesystem.
 This time manually but the reattachment magic would do the same.
@@ -485,6 +488,10 @@
     super-block backups (for fsck_ffs -b #) at:
     192, 1520448, 3040704, 4560960, 6081216, 7601472, 9121728, 10641984, 12162240, 13682496, 15202752, 16723008, 18243264,
     ......................................................................................................................
+</code></pre>
+
+## using
+<pre><code>
     pussyfoot: {115} sudo mount NAME=stripes /mnt
     pussyfoot: {116} df -h /mnt
     Filesystem         Size       Used      Avail %Cap Mounted on
@@ -497,6 +504,7 @@
     pussyfoot: {121} sudo umount /mnt
 </code><pre>
 
+## and more
 And verify that this would reconfigure automatically after a reboot:
 <pre><code>
     pussyfoot: {123} sudo raidctl -u raid0

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 19:15:34 -0000	1.8
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 20:09:27 -0000	1.9
@@ -370,4 +370,147 @@
     pussyfoot: {53} sudo ccdconfig -u ccd0
 </code><pre>
 
+# Raidframe
+
+Since ccd wasn't that good, lets create a RAID0 using the raidframe driver.
+
+First, change the partition types:
+<pre><code>
+pussyfoot: {59} sudo gpt type -i 1 -t ccd -T raid wd1
+partition 1 type changed
+pussyfoot: {60} sudo gpt type -i 1 -t ccd -T raid wd2
+partition 1 type changed
+pussyfoot: {61} sudo gpt show wd1
+        start         size  index  contents
+            0            1         PMBR
+            1            1         Pri GPT header
+            2           32         Pri GPT table
+           34          990         
+         1024  11721043968      1  GPT part - NetBSD RAIDFrame component
+  11721044992          143         
+  11721045135           32         Sec GPT table
+  11721045167            1         Sec GPT header
+pussyfoot: {62} sudo gpt show wd2
+        start         size  index  contents
+            0            1         PMBR
+            1            1         Pri GPT header
+            2           32         Pri GPT table
+           34          990         
+         1024  11721043968      1  GPT part - NetBSD RAIDFrame component
+  11721044992          143         
+  11721045135           32         Sec GPT table
+  11721045167            1         Sec GPT header
+</code><pre>
+
+And the reattachment magic:
+<pre><code>
+    pussyfoot: {107} sudo drvctl -d wd1
+    pussyfoot: {108} sudo drvctl -d wd2
+    pussyfoot: {109} sudo drvctl -a ata_hl -r atabus3
+    pussyfoot: {110} sudo drvctl -a ata_hl -r atabus4
+    pussyfoot: {69} sudo dkctl wd1 listwedges
+    /dev/rwd1d: 1 wedge:
+    dk5: hugedisk1, 11721043968 blocks at 1024, type: raidframe
+    pussyfoot: {70} sudo dkctl wd2 listwedges
+    /dev/rwd2d: 1 wedge:
+    dk6: hugedisk2, 11721043968 blocks at 1024, type: raidframe
+</code><pre>
+
+For raidframe we need a configuration file:
+<pre><code>
+    pussyfoot: {75} cat /etc/raid0.conf
+    START array
+    # numRow numCol numSpare
+    1 2 0
+    
+    START disks
+    /dev/dk5
+    /dev/dk6
+    
+    START layout
+    # sectPerSU SUsPerParityUnit SUsPerReconUnit RAID_level_0
+    16 1 1 0
+    
+    START queue
+    fifo 100
+    pussyfoot: {99} sudo raidctl -C /etc/raid0.conf raid0
+    pussyfoot: {106} sudo raidctl -I 7894737 raid0
+    pussyfoot: {106} sudo raidctl -A yes raid0
+    raid0: Autoconfigure: Yes
+    raid0: Root: No
+    pussyfoot: {100} disklabel raid0
+    # /dev/rraid0d:
+    type: RAID
+    disk: raid
+    label: fictitious
+    flags:
+    bytes/sector: 512
+    sectors/track: 32
+    tracks/cylinder: 8
+    sectors/cylinder: 256
+    cylinders: 91570655
+    total sectors: 4294967295
+    rpm: 3600
+    interleave: 1
+    trackskew: 0
+    cylinderskew: 0
+    headswitch: 0           # microseconds
+    track-to-track seek: 0  # microseconds
+    drivedata: 0 
+    
+    4 partitions:
+    #        size    offset     fstype [fsize bsize cpg/sgs]
+     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+     d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+    disklabel: boot block size 0
+    disklabel: super block size 0
+    pussyfoot: {101} sudo dkctl raid0 listwedges
+    /dev/rraid0d: no wedges configured
+</code><pre>
+
+The raidframe driver has no problems with wedges. We can create a GPT
+on the raid device and create the wedge and format a filesystem.
+This time manually but the reattachment magic would do the same.
+<pre><code>
+    pussyfoot: {102} sudo gpt create raid0
+    pussyfoot: {103} sudo gpt add -a 1024 -t ffs -l stripes raid0
+    Partition 1 added, use:
+            dkctl raid0 addwedge <wedgename> 34 23442087740 <type>
+    to create a wedge for it
+    pussyfoot: {104} sudo dkctl raid0 addwedge stripes 34 23442087740 ffs
+    dk10 created successfully.
+    pussyfoot: {114} sudo newfs -O2 NAME=stripes
+    /dev/rdk10: 11446332.0MB (23442087736 sectors) block size 32768, fragment size 4096
+            using 15420 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
+    super-block backups (for fsck_ffs -b #) at:
+    192, 1520448, 3040704, 4560960, 6081216, 7601472, 9121728, 10641984, 12162240, 13682496, 15202752, 16723008, 18243264,
+    ......................................................................................................................
+    pussyfoot: {115} sudo mount NAME=stripes /mnt
+    pussyfoot: {116} df -h /mnt
+    Filesystem         Size       Used      Avail %Cap Mounted on
+    /dev/dk10           11T       4.0K        10T   0% /mnt
+    pussyfoot: {118} sudo mkdir -m 1777 /mnt/scratch
+    pussyfoot: {120} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
+    1000+0 records in
+    1000+0 records out
+    1048576000 bytes transferred in 4.961 secs (211363837 bytes/sec)
+    pussyfoot: {121} sudo umount /mnt
+</code><pre>
+
+And verify that this would reconfigure automatically after a reboot:
+<pre><code>
+    pussyfoot: {123} sudo raidctl -u raid0
+    pussyfoot: {124} sudo drvctl -d wd1
+    pussyfoot: {125} sudo drvctl -d wd2
+    pussyfoot: {126} sudo drvctl -a ata_hl -r atabus3
+    pussyfoot: {127} sudo drvctl -a ata_hl -r atabus4
+    pussyfoot: {127} sudo raidctl -c /etc/raid0.conf raid0
+    pussyfoot: {127} sudo mount NAME=stripes /mnt
+    pussyfoot: {191} sudo mount NAME=stripes /mnt
+    pussyfoot: {192} df -h /mnt
+    Filesystem         Size       Used      Avail %Cap Mounted on
+    /dev/dk10           11T       1.0G        10T   0% /mnt
+    pussyfoot: {193} ls -l /mnt/scratch/testfile
+    -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 21:47 /mnt/scratch/testfile
+</code><pre>
 

u
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:34:04 -0000	1.7
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 19:15:34 -0000	1.8
@@ -285,3 +285,89 @@
     wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 </code><pre>
 
+# CCD
+
+If the partitions (and wedges) were created with type ffs you could just
+use them to format filesystems and mount them but I created them with
+type ccd to be used by the concatenating disk driver.
+
+ccd is a very old driver and has some deficiencies. For one, the ccdconfig
+tool doesn't understand wedge names.
+<pre><code>
+   pussyfoot: {10} sudo ccdconfig -c ccd0 16 none NAME=hugedisk1 NAME=hugedisk2
+   ccdconfig: NAME=hugedisk1: No such file or directory
+</code><pre>
+
+This cannot easily be handled, because the NAME= syntax exists in userland.
+All tools that understand it, translate the wedge name into a device path.
+For ccd however, the component paths are passed to the kernel and are
+interpreted every time the ccd device is opened, but wedge paths (i.e.
+/dev/dkXX) become outdated easily. You can configure a ccd device, but
+when it is used, it might access the wrong disks.
+
+The cgd driver has a similar problem. A method to avoid this problem is
+to use devpubd to create and adjust symlinks for wedges.
+
+Despite the warning from ccdconfig, the device has been created and
+needs to be removed again. The warning comes from the attempt to read
+the disklabel from the first component.
+<pre><code>
+   pussyfoot: {42} sudo ccdconfig -u ccd0
+</code><pre>
+
+For now we use the wedge device directly.
+<pre><code>
+    pussyfoot: {14} sudo ccdconfig -c ccd0 16 none /dev/dk5 /dev/dk6
+    pussyfoot: {16} disklabel ccd0
+    # /dev/rccd0d:
+    type: ccd
+    disk: ccd
+    label: fictitious
+    flags:
+    bytes/sector: 512
+    sectors/track: 2048
+    tracks/cylinder: 1
+    sectors/cylinder: 2048
+    cylinders: 11446332
+    total sectors: 4294967295
+    rpm: 3600
+    interleave: 1
+    trackskew: 0
+    cylinderskew: 0
+    headswitch: 0           # microseconds
+    track-to-track seek: 0  # microseconds
+    drivedata: 0 
+    
+    4 partitions:
+    #        size    offset     fstype [fsize bsize cpg/sgs]
+     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+      d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+      disklabel: boot block size 0
+      disklabel: super block size 0
+</code><pre>
+
+Obviously the device that spans two disks is also too large for disklabel.
+What about wedges?
+<pre><code>
+    pussyfoot: {43} sudo dkctl ccd0 listwedges
+    dkctl: /dev/rccd0d: listwedges: Inappropriate ioctl for device
+</code><pre>
+
+The ccd driver does not support wedges at all. But we can still use
+the raw partition.
+<pre><code>
+    pussyfoot: {49} sudo newfs -O2 -F -s 23442087936 /dev/rccd0d
+    /dev/rccd0d: 11446332.0MB (23442087936 sectors) block size 32768, fragment size 4096
+            using 15420 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
+    super-block backups (for fsck_ffs -b #) at:
+    192, 1520448, 3040704, 4560960, 6081216, 7601472, 9121728, 10641984, 12162240, 13682496, 15202752, 16723008, 18243264,
+    ......................................................................................................................
+    pussyfoot: {50} sudo mount /dev/ccd0d /mnt
+    pussyfoot: {51} df -h /mnt
+    Filesystem         Size       Used      Avail %Cap Mounted on
+    /dev/ccd0d          11T       4.0K        10T   0% /mnt
+    pussyfoot: {52} sudo umount /mnt
+    pussyfoot: {53} sudo ccdconfig -u ccd0
+</code><pre>
+
+

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:33:04 -0000	1.6
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:34:04 -0000	1.7
@@ -49,10 +49,10 @@
 
     4 partitions:
     #        size    offset     fstype [fsize bsize cpg/sgs]
-     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
-      d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
-      disklabel: boot block size 0
-      disklabel: super block size 0
+    a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+    d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+    disklabel: boot block size 0
+    disklabel: super block size 0
 </code></pre>
 
 While the disk geometry seems to be correct, the sectors and partition

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:32:33 -0000	1.5
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:33:04 -0000	1.6
@@ -75,7 +75,7 @@
 
 There are a few obstacles though.
 
-# formatting
+## formatting
 <pre><code>
     pussyfoot: {42} sudo newfs /dev/rwd1d
     newfs: /dev/rwd1d partition type is not `4.2BSD'
@@ -95,7 +95,7 @@
 We need -O2 for a filesystem > 1TB, -F to prevent newfs from checking
 a disklabel and -s to tell it the disk size.
 
-# using
+## using
 Then we can mount and use the disk:
 <pre><code>
     pussyfoot: {47} sudo mount /dev/wd1d /mnt
@@ -112,7 +112,7 @@
     pussyfoot: {51} sudo umount /mnt
 </code></pre>
 
-# checking
+## checking
 Filesystem checking needs extra effort:
 <pre><code>
     pussyfoot: {58} sudo fsck /dev/rwd1d

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:30:55 -0000	1.4
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:32:33 -0000	1.5
@@ -75,7 +75,7 @@
 
 There are a few obstacles though.
 
-## Formatting
+# formatting
 <pre><code>
     pussyfoot: {42} sudo newfs /dev/rwd1d
     newfs: /dev/rwd1d partition type is not `4.2BSD'
@@ -95,6 +95,7 @@
 We need -O2 for a filesystem > 1TB, -F to prevent newfs from checking
 a disklabel and -s to tell it the disk size.
 
+# using
 Then we can mount and use the disk:
 <pre><code>
     pussyfoot: {47} sudo mount /dev/wd1d /mnt
@@ -110,6 +111,8 @@
     -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 17:35 testfile
     pussyfoot: {51} sudo umount /mnt
 </code></pre>
+
+# checking
 Filesystem checking needs extra effort:
 <pre><code>
     pussyfoot: {58} sudo fsck /dev/rwd1d
@@ -134,6 +137,7 @@
     3 files, 256074 used, 1442176277 free (21 frags, 180272032 blocks, 0.0% fragmentation)
 </code></pre>
 
+## and more
 You can also modify the disklabel, set the raw partition to type 4.2BSD
 (including fsize+bsize parameters) and delete the 'a' partition to avoid
 overlap warnings. The result looks like:

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 16:47:59 -0000	1.3
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 17:30:55 -0000	1.4
@@ -162,7 +162,7 @@
 <pre><code>
     pussyfoot: {100} sudo dkctl wd2 listwedges
     /dev/rwd2d: 1 wedge:
-    dk6: hugedisk2, 11721044111 blocks at 1024, type: ffs
+    dk6: hugedisk2, 11721043968 blocks at 1024, type: ccd
 </code></pre>
 
 Wedges can be created and removed at any time with the dkctl command
@@ -181,7 +181,7 @@
     /dev/rwd2d: 3 wedges:
     dk5: testwedge, 500 blocks at 34, type: ffs
     dk10: testwedge2, 100 blocks at 534, type: unused
-    dk6: hugedisk2, 11721044111 blocks at 1024, type: ffs
+    dk6: hugedisk2, 11721043968 blocks at 1024, type: ccd
 </code></pre>
 
 You can see that creation of a wedge is validated, it requires a unique
@@ -194,3 +194,90 @@
 	    32, 200, 368,
 </code></pre>
 
+Older versions of newfs do not support wedgenames, you need to
+specify the device, e.g. /dev/rdk5.
+
+
+# GPT
+
+If wedges could only be created by running a command, they wouldn't be
+useful. But the NetBSD kernel can generate wedges automatically when
+a disk is attached. Most NetBSD architectures will scan for MBR (PC BIOS
+Master Boot Record) and GPT (GUID Partition Table). There is also support
+for standard BSD disklabels but which is currently disabled.
+
+A GPT can be displayed, created and edited with the GPT command:
+<pre><code>
+    pussyfoot: {9} sudo gpt show wd2
+            start         size  index  contents
+                0            1         PMBR
+                1            1         Pri GPT header
+                2           32         Pri GPT table
+               34          990         
+             1024  11721043968      1  GPT part - NetBSD ccd component
+      11721044992          143         
+      11721045135           32         Sec GPT table
+      11721045167            1         Sec GPT header
+    pussyfoot: {10} sudo gpt show wd1
+            start         size  index  contents
+                0  11721045168         
+    pussyfoot: {10} sudo gpt show wd1
+            start         size  index  contents
+                0  11721045168         
+    pussyfoot: {11} sudo gpt create wd1
+    pussyfoot: {12} sudo gpt show wd1
+            start         size  index  contents
+                0            1         PMBR
+                1            1         Pri GPT header
+                2           32         Pri GPT table
+               34  11721045101         
+      11721045135           32         Sec GPT table
+      11721045167            1         Sec GPT header
+    pussyfoot: {31} sudo gpt add -a 512k -l hugedisk1 -t ccd wd1
+    Partition 1 added, use:
+            dkctl wd1 addwedge <wedgename> 1024 11721043968 <type>
+    to create a wedge for it
+    pussyfoot: {57} sudo gpt show wd1
+            start         size  index  contents
+                0            1         PMBR
+                1            1         Pri GPT header
+                2           32         Pri GPT table
+               34          990         
+             1024  11721043968      1  GPT part - NetBSD ccd component
+      11721044992          143         
+      11721045135           32         Sec GPT table
+      11721045167            1         Sec GPT header
+</code><pre>
+
+Since wedges are currently only created when a device is attached, we
+need either a reboot or some magic using drvctl.
+<pre><code>
+    pussyfoot: {107} sudo drvctl -d wd1
+    pussyfoot: {108} sudo drvctl -d wd2
+    pussyfoot: {109} sudo drvctl -a ata_hl -r atabus3
+    pussyfoot: {110} sudo drvctl -a ata_hl -r atabus4
+</code><pre>
+
+The console or dmesg will reveal that both disks have been reattached
+and wedges have been created:
+<pre><code>
+    wd1 at atabus3 drive 0
+    wd1: <WDC WD60EFRX-68MYMN1>
+    wd1: drive supports 16-sector PIO transfers, LBA48 addressing
+    wd1: 5589 GB, 11628021 cyl, 16 head, 63 sec, 512 bytes/sect x 11721045168 sectors
+    wd1: GPT GUID: 38ba6ff4-e48a-42e4-a513-fe217d7fa013
+    dk5 at wd1: hugedisk1
+    dk5: 11721043968 blocks at 1024, type: ccd
+    wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
+    wd1(ahcisata0:1:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
+    wd2 at atabus4 drive 0
+    wd2: <WDC WD60EFRX-68MYMN1>
+    wd2: drive supports 16-sector PIO transfers, LBA48 addressing
+    wd2: 5589 GB, 11628021 cyl, 16 head, 63 sec, 512 bytes/sect x 11721045168 sectors
+    wd2: GPT GUID: 902717d6-5099-11e4-833b-001cc4d779ed
+    dk6 at wd2: hugedisk2
+    dk6: 11721043968 blocks at 1024, type: ccd
+    wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
+    wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
+</code><pre>
+

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 15:52:52 -0000	1.2
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 16:47:59 -0000	1.3
@@ -1,3 +1,7 @@
+**Contents**
+
+[[!toc levels=2]]
+
 # What do you do to use a large disk with NetBSD?
 
 Here are two:
@@ -142,4 +146,51 @@
 This makes fsck recognize the disk correctly, newfs still requires the
 disksize parameter.
 
+One more caveat, when you write the disklabel to the disk, it has to
+coexist with the filesystem data. Since the raw partition starts at
+offset 0 (the disklabel data is ignored by the driver!), this does not
+work with every filesystem, but FFS is safe.
+
 # Wedges
+
+Wedges solve two problems in NetBSD. They support larger disks without
+the 32bit limitation of the disklabel, and they can be used with any
+partition information on the disk which makes it possible to exchange
+disks between different platforms.
+
+Here is a disk with a wedge:
+<pre><code>
+    pussyfoot: {100} sudo dkctl wd2 listwedges
+    /dev/rwd2d: 1 wedge:
+    dk6: hugedisk2, 11721044111 blocks at 1024, type: ffs
+</code></pre>
+
+Wedges can be created and removed at any time with the dkctl command
+by specifying a name, start offset on the disk, the wedge size and
+a type.
+<pre><code>
+    pussyfoot: {103} sudo dkctl wd2 addwedge testwedge 34 500 ffs
+    dk5 created successfully.
+    pussyfoot: {104} sudo dkctl wd2 addwedge testwedge 500 100 unused
+    dkctl: /dev/rwd2d: addwedge: Invalid argument
+    pussyfoot: {112} sudo dkctl wd2 addwedge testwedge 534 100 unused
+    dkctl: /dev/rwd2d: addwedge: File exists
+    pussyfoot: {113} sudo dkctl wd2 addwedge testwedge2 534 100 unused
+    dk10 created successfully.
+    pussyfoot: {114} sudo dkctl wd2 listwedges
+    /dev/rwd2d: 3 wedges:
+    dk5: testwedge, 500 blocks at 34, type: ffs
+    dk10: testwedge2, 100 blocks at 534, type: unused
+    dk6: hugedisk2, 11721044111 blocks at 1024, type: ffs
+</code></pre>
+
+You can see that creation of a wedge is validated, it requires a unique
+name and the wedges must not overlap.
+<pre><code>
+    pussyfoot: {140} sudo newfs NAME=testwedge
+    /dev/rdk5: 0.2MB (500 sectors) block size 4096, fragment size 512
+            using 3 cylinder groups of 0.08MB, 21 blks, 32 inodes.
+	    super-block backups (for fsck_ffs -b #) at:
+	    32, 200, 368,
+</code></pre>
+

r
Index: wikisrc/users/mlelstv/using-large-disks.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/using-large-disks.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 15:44:32 -0000	1.1
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	25 Oct 2014 15:52:52 -0000	1.2
@@ -1,7 +1,7 @@
 # What do you do to use a large disk with NetBSD?
 
 Here are two:
-
+<pre><code>
     wd1 at atabus3 drive 0
     wd1: <WDC WD60EFRX-68MYMN1>
     wd1: drive supports 16-sector PIO transfers, LBA48 addressing
@@ -17,12 +17,12 @@
     wd2: GPT GUID: 902717d6-5099-11e4-833b-001cc4d779ed
     wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
     wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
+</code></pre>
     
 # Disklabel
-
-The NetBSD kernel seems to recgonize the disk size fine. But when run
+The NetBSD kernel seems to recgonize the disk size fine. But when running
 the disklabel program to partition the disk, you get this:
-
+<pre><code>
     pussyfoot: {1} disklabel wd1
     # /dev/rwd1d:
     type: ESDI
@@ -49,13 +49,14 @@
       d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
       disklabel: boot block size 0
       disklabel: super block size 0
+</code></pre>
 
 While the disk geometry seems to be correct, the sectors and partition
 sizes are limited to 4294967295 which is 2^32-1. Older NetBSD kernels
 even produce a size from the lower 32bit of the real sector count. This
-is because the disklabel data structure only has 32bit fields to store
+is because the disklabel data structure has only 32bit fields to store
 partition sizes and offsets and the total sector count. This is good
-for up to 2TB on a disk with the standard sector size of 512 bytes.
+for up to 2TB disks with the standard sector size of 512 bytes.
 
 The disklabel is part of the original disk driver interface and
 the driver will use that data inside its strategy routine to
@@ -66,30 +67,32 @@
 values set by older kernels), there is the "raw" partition (on
 i386/amd64 that's partition 'd', other archs mostly use 'c') where
 the driver ignores the disklabel and validates the access against
-an internal value of the driver which is not truncated.
+an internal value which is not truncated.
 
 There are a few obstacles though.
 
 ## Formatting
-
+<pre><code>
     pussyfoot: {42} sudo newfs /dev/rwd1d
     newfs: /dev/rwd1d partition type is not `4.2BSD'
+</code></pre>
 
 The raw partition has no correct type and newfs refuses to work, we
 have to persuade it a little bit:
-
+<pre><code>
     pussyfoot: {45} sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
     /dev/rwd1d: 5723166.5MB (11721045168 sectors) block size 32768, fragment size 4096
             using 7710 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
     super-block backups (for fsck_ffs -b #) at:
     192, 1520448, 3040704, 4560960, 6081216, 7601472, 9121728, 10641984, 12162240, 13682496, 15202752,
     .......................................................................................................
+</code></pre>
 
 We need -O2 for a filesystem > 1TB, -F to prevent newfs from checking
 a disklabel and -s to tell it the disk size.
 
 Then we can mount and use the disk:
-
+<pre><code>
     pussyfoot: {47} sudo mount /dev/wd1d /mnt
     pussyfoot: {48} sudo mkdir -m 1777 /mnt/scratch
     pussyfoot: {49} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
@@ -102,15 +105,16 @@
     drwxr-xr-x  3 root     wheel         512 Oct 25 17:34 ..
     -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 17:35 testfile
     pussyfoot: {51} sudo umount /mnt
-
+</code></pre>
 Filesystem checking needs extra effort:
-
+<pre><code>
     pussyfoot: {58} sudo fsck /dev/rwd1d
     fsck: vfstype `unused' on partition `/dev/rwd1d' is not supported
+</code></pre>
 
 Again you need to augment information from the disklabel for the raw
 partition:
-
+<pre><code>
     pussyfoot: {57} sudo fsck -t ffs /dev/rwd1d
     ** /dev/rwd1d
     ** File system is clean; not checking
@@ -124,14 +128,16 @@
     ** Phase 4 - Check Reference Counts
     ** Phase 5 - Check Cyl groups
     3 files, 256074 used, 1442176277 free (21 frags, 180272032 blocks, 0.0% fragmentation)
+</code></pre>
 
 You can also modify the disklabel, set the raw partition to type 4.2BSD
 (including fsize+bsize parameters) and delete the 'a' partition to avoid
 overlap warnings. The result looks like:
-
+<pre><code>
     4 partitions:
     #        size    offset     fstype [fsize bsize cpg/sgs]
      d: 4294967295         0     4.2BSD   4096 65536     0  # (Cyl.      0 - 4294967295*)
+</code></pre>
 
 This makes fsck recognize the disk correctly, newfs still requires the
 disksize parameter.

Using large disks
--- /dev/null	2014-10-25 15:40:01.000000000 +0000
+++ wikisrc/users/mlelstv/using-large-disks.mdwn	2014-10-25 15:44:35.000000000 +0000
@@ -0,0 +1,139 @@
+# What do you do to use a large disk with NetBSD?
+
+Here are two:
+
+    wd1 at atabus3 drive 0
+    wd1: <WDC WD60EFRX-68MYMN1>
+    wd1: drive supports 16-sector PIO transfers, LBA48 addressing
+    wd1: 5589 GB, 11628021 cyl, 16 head, 63 sec, 512 bytes/sect x 11721045168 sectors
+    wd1: GPT GUID: 8ee69292-5099-11e4-833b-001cc4d779ed
+    wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
+    wd1(ahcisata0:1:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
+    
+    wd2 at atabus4 drive 0
+    wd2: <WDC WD60EFRX-68MYMN1>
+    wd2: drive supports 16-sector PIO transfers, LBA48 addressing
+    wd2: 5589 GB, 11628021 cyl, 16 head, 63 sec, 512 bytes/sect x 11721045168 sectors
+    wd2: GPT GUID: 902717d6-5099-11e4-833b-001cc4d779ed
+    wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
+    wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
+    
+# Disklabel
+
+The NetBSD kernel seems to recgonize the disk size fine. But when run
+the disklabel program to partition the disk, you get this:
+
+    pussyfoot: {1} disklabel wd1
+    # /dev/rwd1d:
+    type: ESDI
+    disk: WDC WD60EFRX-68M
+    label: fictitious
+    flags:
+    bytes/sector: 512
+    sectors/track: 63
+    tracks/cylinder: 16
+    sectors/cylinder: 1008
+    cylinders: 11628021
+    total sectors: 4294967295
+    rpm: 3600
+    interleave: 1
+    trackskew: 0
+    cylinderskew: 0
+    headswitch: 0           # microseconds
+    track-to-track seek: 0  # microseconds
+    drivedata: 0 
+
+    4 partitions:
+    #        size    offset     fstype [fsize bsize cpg/sgs]
+     a: 4294967295         0     4.2BSD      0     0     0  # (Cyl.      0 - 4294967295*)
+      d: 4294967295         0     unused      0     0        # (Cyl.      0 - 4294967295*)
+      disklabel: boot block size 0
+      disklabel: super block size 0
+
+While the disk geometry seems to be correct, the sectors and partition
+sizes are limited to 4294967295 which is 2^32-1. Older NetBSD kernels
+even produce a size from the lower 32bit of the real sector count. This
+is because the disklabel data structure only has 32bit fields to store
+partition sizes and offsets and the total sector count. This is good
+for up to 2TB on a disk with the standard sector size of 512 bytes.
+
+The disklabel is part of the original disk driver interface and
+the driver will use that data inside its strategy routine to
+validate disk accesses.
+
+You can still use the disk somewhat. While normal partitions are
+limited by the 32bit values in the disklabel (or even the truncated
+values set by older kernels), there is the "raw" partition (on
+i386/amd64 that's partition 'd', other archs mostly use 'c') where
+the driver ignores the disklabel and validates the access against
+an internal value of the driver which is not truncated.
+
+There are a few obstacles though.
+
+## Formatting
+
+    pussyfoot: {42} sudo newfs /dev/rwd1d
+    newfs: /dev/rwd1d partition type is not `4.2BSD'
+
+The raw partition has no correct type and newfs refuses to work, we
+have to persuade it a little bit:
+
+    pussyfoot: {45} sudo newfs -O2 -F -s 11721045168 /dev/rwd1d
+    /dev/rwd1d: 5723166.5MB (11721045168 sectors) block size 32768, fragment size 4096
+            using 7710 cylinder groups of 742.31MB, 23754 blks, 46848 inodes.
+    super-block backups (for fsck_ffs -b #) at:
+    192, 1520448, 3040704, 4560960, 6081216, 7601472, 9121728, 10641984, 12162240, 13682496, 15202752,
+    .......................................................................................................
+
+We need -O2 for a filesystem > 1TB, -F to prevent newfs from checking
+a disklabel and -s to tell it the disk size.
+
+Then we can mount and use the disk:
+
+    pussyfoot: {47} sudo mount /dev/wd1d /mnt
+    pussyfoot: {48} sudo mkdir -m 1777 /mnt/scratch
+    pussyfoot: {49} dd if=/dev/zero bs=1024k count=1000 of=/mnt/scratch/testfile
+    1000+0 records in
+    1000+0 records out
+    1048576000 bytes transferred in 10.350 secs (101311690 bytes/sec)
+    pussyfoot: {50} ls -la /mnt/scratch/
+    total 2048592
+    drwxrwxrwt  2 root     wheel         512 Oct 25 17:34 .
+    drwxr-xr-x  3 root     wheel         512 Oct 25 17:34 ..
+    -rw-r--r--  1 mlelstv  wheel  1048576000 Oct 25 17:35 testfile
+    pussyfoot: {51} sudo umount /mnt
+
+Filesystem checking needs extra effort:
+
+    pussyfoot: {58} sudo fsck /dev/rwd1d
+    fsck: vfstype `unused' on partition `/dev/rwd1d' is not supported
+
+Again you need to augment information from the disklabel for the raw
+partition:
+
+    pussyfoot: {57} sudo fsck -t ffs /dev/rwd1d
+    ** /dev/rwd1d
+    ** File system is clean; not checking
+    pussyfoot: {60} sudo fsck -t ffs -f /dev/rwd1d
+    ** /dev/rwd1d
+    ** File system is already clean
+    ** Last Mounted on /mnt
+    ** Phase 1 - Check Blocks and Sizes
+    ** Phase 2 - Check Pathnames
+    ** Phase 3 - Check Connectivity
+    ** Phase 4 - Check Reference Counts
+    ** Phase 5 - Check Cyl groups
+    3 files, 256074 used, 1442176277 free (21 frags, 180272032 blocks, 0.0% fragmentation)
+
+You can also modify the disklabel, set the raw partition to type 4.2BSD
+(including fsize+bsize parameters) and delete the 'a' partition to avoid
+overlap warnings. The result looks like:
+
+    4 partitions:
+    #        size    offset     fstype [fsize bsize cpg/sgs]
+     d: 4294967295         0     4.2BSD   4096 65536     0  # (Cyl.      0 - 4294967295*)
+
+This makes fsck recognize the disk correctly, newfs still requires the
+disksize parameter.
+
+# Wedges

Document FEX script support
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- wikisrc/ports/evbarm/allwinner.mdwn	22 Oct 2014 00:40:06 -0000	1.20
+++ wikisrc/ports/evbarm/allwinner.mdwn	22 Oct 2014 00:43:23 -0000	1.21
@@ -78,6 +78,17 @@
 """]]
 where -eb means endianness big, hf is hardware floating point support, and earm is the modern "extended" ABI for ARM CPUs, and finally v7 is version 7 of the supported instruction set.
 
+# FEX scripts
+
+Board configuration scripts can be found here: <https://github.com/linux-sunxi/sunxi-boards/blob/master/sys_config>. You can compile them with the "fex2bin" tool found here: <https://github.com/linux-sunxi/sunxi-tools>.
+
+To use, copy the compiled FEX to your MS-DOS partition, load it with U-Boot, and then tell the kernel where to find it with the "sysconfig=" boot option. For example, uEnv.txt on a Cubieboard2 might look like this:
+
+[[!template  id=programlisting text="""
+bootargs=root=ld0a sysconfig=0x43000000
+uenvcmd=mmc dev 0; mmc rescan; fatload mmc 0:1 43000000 cubieboard2.bin; fatload mmc 0:1 82000000 netbsd.ub; bootm 82000000
+"""]]
+
 # Board specific notes
 
 ## Merrii Hummingbird A31

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 23:55:52 -0000	1.19
+++ wikisrc/ports/evbarm/allwinner.mdwn	22 Oct 2014 00:40:06 -0000	1.20
@@ -15,6 +15,7 @@
  - SD/MMC controller (DMA)
  - DMA controller
  - GPIO
+   - Configuration using FEX scripts is supported
  - UART
  - I2C
  - P2WI (A31)

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 16:17:49 -0000	1.18
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 23:55:52 -0000	1.19
@@ -42,6 +42,7 @@
  - SD/MMC UHS-I support (needs sdmmc(4) changes)
  - TV input (Hummingbird A31)
  - NAND
+ - Fast Ethernet (EMAC)
 
 # Installation
 

add TOC
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 16:03:56 -0000	1.17
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 16:17:49 -0000	1.18
@@ -1,5 +1,7 @@
 [[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
 
+[[!toc levels=2]]
+
 # Supported boards
  - [Banana Pi](http://www.bananapi.org/p/product.html) (BPI)
  - Cubieboard, Cubieboard 2 (CUBIEBOARD)

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 15:46:50 -0000	1.16
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 16:03:56 -0000	1.17
@@ -73,3 +73,14 @@
 ./build.sh -m evbearmv7hf-eb 
 """]]
 where -eb means endianness big, hf is hardware floating point support, and earm is the modern "extended" ABI for ARM CPUs, and finally v7 is version 7 of the supported instruction set.
+
+# Board specific notes
+
+## Merrii Hummingbird A31
+
+There doesn't appear to be a meaningful way to generate a MAC address on these boards. U-Boot from the A31 SDK and from the u-boot-sunxi tree both lack GMAC support, and the Security ID registers (at 0x01c23800) appear to be empty.
+
+To overcome this, you can specify your own MAC address in *uEnv.txt*:
+[[!template  id=programlisting text="""
+bootargs=root=ld0a awge0.mac-address=02:a0:3d:88:1a:1e
+"""]]

TODO: NAND
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 15:17:11 -0000	1.15
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 15:46:50 -0000	1.16
@@ -39,6 +39,7 @@
  - 3G (Hummingbird A31)
  - SD/MMC UHS-I support (needs sdmmc(4) changes)
  - TV input (Hummingbird A31)
+ - NAND
 
 # Installation
 

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 14:58:07 -0000	1.14
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 15:17:11 -0000	1.15
@@ -38,6 +38,7 @@
  - Bluetooth / WiFi (Cubietruck, Hummingbird A31)
  - 3G (Hummingbird A31)
  - SD/MMC UHS-I support (needs sdmmc(4) changes)
+ - TV input (Hummingbird A31)
 
 # Installation
 

Add a TODO list
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 13:02:20 -0000	1.13
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 14:58:07 -0000	1.14
@@ -10,7 +10,7 @@
  - SoCs
    - Cortex-A8: A10
    - Cortex-A7: A20, A31
- - SD/MMC controller
+ - SD/MMC controller (DMA)
  - DMA controller
  - GPIO
  - UART
@@ -22,13 +22,23 @@
  - Watchdog timer
  - RTC
  - Audio codec
- - USB
+ - USB host
    - OHCI
    - EHCI
-   - MOTG (not yet working on A31)
+   - OTG (not yet working on A31)
  - SATA (A10/A20)
  - Gigabit Ethernet (GMAC)
 
+# TODO
+ - MULTIPROCESSOR is not yet stable
+ - HDMI (some work completed here for A20)
+ - Framebuffer
+ - OTG (A31)
+ - USB device mode
+ - Bluetooth / WiFi (Cubietruck, Hummingbird A31)
+ - 3G (Hummingbird A31)
+ - SD/MMC UHS-I support (needs sdmmc(4) changes)
+
 # Installation
 
 ## A10 / A20 based boards

tried, needs more investigatings
Index: wikisrc/wiki/todo/enable_the_attachment_plugin_for_web-editing_with_images.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/wiki/todo/enable_the_attachment_plugin_for_web-editing_with_images.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/wiki/todo/enable_the_attachment_plugin_for_web-editing_with_images.mdwn	20 Oct 2014 12:53:33 -0000	1.1
+++ wikisrc/wiki/todo/enable_the_attachment_plugin_for_web-editing_with_images.mdwn	20 Oct 2014 14:12:14 -0000	1.2
@@ -1 +1,14 @@
-It would be nice if I could use the web editor to attach images to pages.
+It would be nice if I could use the web editor to attach images to
+pages. --[[jmcneill]]
+
+> Indeed. The [[!iki plugins/attachment]] plugin, once enabled,
+> will let you attach images and help you (not that it's hard)
+> insert wikilinks to them. I tried enabling it just now, and it
+> prevented attaching files of wrong MIME types and large sizes,
+> but only because it prevented attaching any files at all. Nothing
+> in the web server log. I'll have to debug this harder later.
+>
+> In the meantime, if it helps, you can `cvs add -kb your_image.png` and
+> [[commit it directly to wikisrc|wiki/cvs]]. (Once attachments
+> work, the very fancy ikiwiki cvs plugin will automatically do
+> `-kb` for images and such.) --[[schmonz]]

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:53:03 -0000	1.12
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 13:02:20 -0000	1.13
@@ -9,7 +9,7 @@
 # Supported hardware
  - SoCs
    - Cortex-A8: A10
-   - Cortex-A7: A20, A31 SoCs
+   - Cortex-A7: A20, A31
  - SD/MMC controller
  - DMA controller
  - GPIO

--- /dev/null	2014-10-20 14:10:04.000000000 +0000
+++ wikisrc/wiki/todo/enable_the_attachment_plugin_for_web-editing_with_images.mdwn	2014-10-20 14:13:07.000000000 +0000
@@ -0,0 +1 @@
+It would be nice if I could use the web editor to attach images to pages.

Spelling.
Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:13:26 -0000	1.11
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:53:03 -0000	1.12
@@ -40,8 +40,8 @@
 # dd if=u-boot-sunxi-with-spl.bin of=beaglebone.img bs=1k seek=8 conv=notrunc
 """]]
 * Write the image to an SD card.
-* Copy the kernel (netbsd.ub) for your board to the root of the MSDOS partition.
-* Create or edit uEnv.txt on the MSDOS partition:
+* Copy the kernel (netbsd.ub) for your board to the root of the MS-DOS partition.
+* Create or edit uEnv.txt on the MS-DOS partition:
 [[!template  id=programlisting text="""
 bootargs=root=ld0a
 uenvcmd=mmc dev 0; mmc rescan; fatload mmc 0:1 82000000 netbsd.ub; bootm 82000000
@@ -54,10 +54,10 @@
 # Big (endian) fun
 
 You can run this boards with a little endian (this is the default and implied by above install instructions)
-or with a big endian kernel and userland. However, kernel and userland endianes needs to match.
+or with a big endian kernel and userland. However, kernel and userland endianness needs to match.
 
 To build a big endian release (or sets) use 
 [[!template  id=programlisting text="""
 ./build.sh -m evbearmv7hf-eb 
 """]]
-where -eb means endianes big, hf is hardware floating point support, and earm is the modern "extended" ABI for ARM cpus, and finally v7 is version 7 of the supported instruction set.
+where -eb means endianness big, hf is hardware floating point support, and earm is the modern "extended" ABI for ARM CPUs, and finally v7 is version 7 of the supported instruction set.

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:12:12 -0000	1.10
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:13:26 -0000	1.11
@@ -1,7 +1,7 @@
 [[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
 
 # Supported boards
- - BananaPi (BPI)
+ - [Banana Pi](http://www.bananapi.org/p/product.html) (BPI)
  - Cubieboard, Cubieboard 2 (CUBIEBOARD)
  - Cubietruck (CUBIETRUCK)
  - [Merrii Hummingbird A31](http://www.merrii.com/en/pla_d.asp?id=172) (HUMMINGBIRD_A31)

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:10:27 -0000	1.9
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:12:12 -0000	1.10
@@ -4,7 +4,7 @@
  - BananaPi (BPI)
  - Cubieboard, Cubieboard 2 (CUBIEBOARD)
  - Cubietruck (CUBIETRUCK)
- - Merrii Hummingbird A31 (HUMMINGBIRD_A31)
+ - [Merrii Hummingbird A31](http://www.merrii.com/en/pla_d.asp?id=172) (HUMMINGBIRD_A31)
 
 # Supported hardware
  - SoCs

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:09:01 -0000	1.8
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:10:27 -0000	1.9
@@ -1,9 +1,5 @@
 [[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
 
-[[!template  id=note text="""
-[[images/hummingbird_a31.jpg]]
-Merrii Hummingbird A31"""]]
-
 # Supported boards
  - BananaPi (BPI)
  - Cubieboard, Cubieboard 2 (CUBIEBOARD)

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:05:37 -0000	1.7
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:09:01 -0000	1.8
@@ -1,5 +1,9 @@
 [[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
 
+[[!template  id=note text="""
+[[images/hummingbird_a31.jpg]]
+Merrii Hummingbird A31"""]]
+
 # Supported boards
  - BananaPi (BPI)
  - Cubieboard, Cubieboard 2 (CUBIEBOARD)

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:02:52 -0000	1.6
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:05:37 -0000	1.7
@@ -51,7 +51,7 @@
 
 TBD.
 
-## Big (endian) fun
+# Big (endian) fun
 
 You can run this boards with a little endian (this is the default and implied by above install instructions)
 or with a big endian kernel and userland. However, kernel and userland endianes needs to match.

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:02:11 -0000	1.5
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:02:52 -0000	1.6
@@ -54,7 +54,7 @@
 ## Big (endian) fun
 
 You can run this boards with a little endian (this is the default and implied by above install instructions)
-or with a big endian kernel and userland. However, kernel and userland endianess needs to match.
+or with a big endian kernel and userland. However, kernel and userland endianes needs to match.
 
 To build a big endian release (or sets) use 
 [[!template  id=programlisting text="""

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:54:53 -0000	1.4
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 11:02:11 -0000	1.5
@@ -9,7 +9,7 @@
 # Supported hardware
  - SoCs
    - Cortex-A8: A10
-   - Cortex-A7: A20, A31
+   - Cortex-A7: A20, A31 SoCs
  - SD/MMC controller
  - DMA controller
  - GPIO
@@ -50,3 +50,14 @@
 ## A31 based boards
 
 TBD.
+
+## Big (endian) fun
+
+You can run this boards with a little endian (this is the default and implied by above install instructions)
+or with a big endian kernel and userland. However, kernel and userland endianess needs to match.
+
+To build a big endian release (or sets) use 
+[[!template  id=programlisting text="""
+./build.sh -m evbearmv7hf-eb 
+"""]]
+where -eb means endianes big, hf is hardware floating point support, and earm is the modern "extended" ABI for ARM cpus, and finally v7 is version 7 of the supported instruction set.

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:42:38 -0000	1.3
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:54:53 -0000	1.4
@@ -9,7 +9,7 @@
 # Supported hardware
  - SoCs
    - Cortex-A8: A10
-   - Cortex-A7: A20, A31 SoCs
+   - Cortex-A7: A20, A31
  - SD/MMC controller
  - DMA controller
  - GPIO

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:42:07 -0000	1.2
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:42:38 -0000	1.3
@@ -33,7 +33,7 @@
 
 ## A10 / A20 based boards
 
-* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* board such as *beaglebone.img*
+* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *beaglebone.img*
 * Download a U-Boot build for your board from the linux-sunxi web site <http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/>
 * Write the *u-boot-sunxi-with-spl.bin* loader to the base image:
 [[!template  id=programlisting text="""

Index: wikisrc/ports/evbarm/allwinner.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/allwinner.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:17:34 -0000	1.1
+++ wikisrc/ports/evbarm/allwinner.mdwn	20 Oct 2014 10:42:07 -0000	1.2
@@ -28,3 +28,25 @@
    - MOTG (not yet working on A31)
  - SATA (A10/A20)
  - Gigabit Ethernet (GMAC)
+
+# Installation
+
+## A10 / A20 based boards
+
+* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* board such as *beaglebone.img*
+* Download a U-Boot build for your board from the linux-sunxi web site <http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/>
+* Write the *u-boot-sunxi-with-spl.bin* loader to the base image:
+[[!template  id=programlisting text="""
+# dd if=u-boot-sunxi-with-spl.bin of=beaglebone.img bs=1k seek=8 conv=notrunc
+"""]]
+* Write the image to an SD card.
+* Copy the kernel (netbsd.ub) for your board to the root of the MSDOS partition.
+* Create or edit uEnv.txt on the MSDOS partition:
+[[!template  id=programlisting text="""
+bootargs=root=ld0a
+uenvcmd=mmc dev 0; mmc rescan; fatload mmc 0:1 82000000 netbsd.ub; bootm 82000000
+"""]]
+
+## A31 based boards
+
+TBD.

--- /dev/null	2014-10-20 14:10:04.000000000 +0000
+++ wikisrc/ports/evbarm/allwinner.mdwn	2014-10-20 14:13:07.000000000 +0000
@@ -0,0 +1,30 @@
+[[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
+
+# Supported boards
+ - BananaPi (BPI)
+ - Cubieboard, Cubieboard 2 (CUBIEBOARD)
+ - Cubietruck (CUBIETRUCK)
+ - Merrii Hummingbird A31 (HUMMINGBIRD_A31)
+
+# Supported hardware
+ - SoCs
+   - Cortex-A8: A10
+   - Cortex-A7: A20, A31 SoCs
+ - SD/MMC controller
+ - DMA controller
+ - GPIO
+ - UART
+ - I2C
+ - P2WI (A31)
+ - PMU
+   - AXP209 (A20)
+   - AXP221 (A31)
+ - Watchdog timer
+ - RTC
+ - Audio codec
+ - USB
+   - OHCI
+   - EHCI
+   - MOTG (not yet working on A31)
+ - SATA (A10/A20)
+ - Gigabit Ethernet (GMAC)

Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/ports/evbarm.mdwn	6 Oct 2014 21:41:28 -0000	1.9
+++ wikisrc/ports/evbarm.mdwn	20 Oct 2014 10:05:38 -0000	1.10
@@ -21,6 +21,9 @@
 ### BeagleBoard.org **BeagleBone**
 The [[BeagleBone]] is a low-cost credit-card-sized computer from BeagleBoard.
 
+### Allwinner Technology A10/A20/A31
+Various boards based on [[Allwinner]] SoCs are supported, including the BananaPi, Cubieboard, Cubieboard 2, Cubietruck, and Merrii Hummingbird A31.
+
 ### Technologic Systems **TS-7200**
 
 The TS-7200 is a low-cost mass-produced PC/104 embedded single board computer

revert previous (no change from the page in the basewiki)
--- wikisrc/ikiwiki/openid.mdwn	2014-10-20 14:13:07.000000000 +0000
+++ /dev/null	2014-10-20 14:10:04.000000000 +0000
@@ -1,28 +0,0 @@
-[[!meta title="OpenID"]]
-[[!meta robots="noindex, follow"]]
-
-[[!if test="enabled(openid)"
-     then="This wiki has OpenID **enabled**."
-     else="This wiki has OpenID **disabled**."]]
-
-[OpenID](http://openid.net) is a decentralized authentication mechanism
-that allows you to have one login that you can use on a growing number of
-websites.
-
-If you have an account with some of the larger web service providers,
-you might already have an OpenID. 
-[Directory of OpenID providers](http://openiddirectory.com/openid-providers-c-1.html)
-
-[[!if test="enabled(openid)" then="""
-To sign in to this wiki using OpenID, just enter it in the OpenID field in the
-signin form. You do not need to give this wiki a password or go through any
-registration process when using OpenID.
-"""]]
-
----
-
-It's also possible to make a page in the wiki usable as an OpenID url,
-by delegating it to an openid server. Here's an example of how to do that:
-
-	\[[!meta openid="http://yourid.myopenid.com/"
-	       server="http://www.myopenid.com/server"]]

--- /dev/null	2014-10-20 14:10:04.000000000 +0000
+++ wikisrc/ikiwiki/openid.mdwn	2014-10-20 14:13:07.000000000 +0000
@@ -0,0 +1,28 @@
+[[!meta title="OpenID"]]
+[[!meta robots="noindex, follow"]]
+
+[[!if test="enabled(openid)"
+     then="This wiki has OpenID **enabled**."
+     else="This wiki has OpenID **disabled**."]]
+
+[OpenID](http://openid.net) is a decentralized authentication mechanism
+that allows you to have one login that you can use on a growing number of
+websites.
+
+If you have an account with some of the larger web service providers,
+you might already have an OpenID. 
+[Directory of OpenID providers](http://openiddirectory.com/openid-providers-c-1.html)
+
+[[!if test="enabled(openid)" then="""
+To sign in to this wiki using OpenID, just enter it in the OpenID field in the
+signin form. You do not need to give this wiki a password or go through any
+registration process when using OpenID.
+"""]]
+
+---
+
+It's also possible to make a page in the wiki usable as an OpenID url,
+by delegating it to an openid server. Here's an example of how to do that:
+
+	\[[!meta openid="http://yourid.myopenid.com/"
+	       server="http://www.myopenid.com/server"]]

Add 6.0.6 and 6.1.5
Index: wikisrc/amazon_ec2/amis.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/amazon_ec2/amis.mdwn,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- wikisrc/amazon_ec2/amis.mdwn	19 Apr 2014 00:00:59 -0000	1.38
+++ wikisrc/amazon_ec2/amis.mdwn	15 Oct 2014 23:50:58 -0000	1.39
@@ -68,6 +68,17 @@
   <td>ami-5119bb4c</td><!-- sa-east-1 -->
 </tr>
 <tr>
+  <th>NetBSD 6.0.6</th>
+  <td>ami-ee229a86</td><!-- us-east-1 -->
+  <td>ami-ab5a4fee</td><!-- us-west-1 -->
+  <td>ami-43e2ae73</td><!-- us-west-2 -->
+  <td>ami-c62d81b1</td><!-- eu-west-1 -->
+  <td>ami-6e98be3c</td><!-- ap-southeast-1 -->
+  <td>ami-c3402df9</td><!-- ap-southeast-2 -->
+  <td>ami-7decda7c</td><!-- ap-northeast-1 -->
+  <td>ami-5fa61242</td><!-- sa-east-1 -->
+</tr>
+<tr>
   <th>NetBSD 6.1.3</th>
   <td>ami-1d90ad74</td><!-- us-east-1 -->
   <td>ami-aea092eb</td><!-- us-west-1 -->
@@ -89,6 +100,17 @@
   <td>ami-ab2a51aa</td><!-- ap-northeast-1 -->
   <td>ami-2f19bb32</td><!-- sa-east-1 -->
 </tr>
+<tr>
+  <th>NetBSD 6.1.5</th>
+  <td>ami-bc2c94d4</td><!-- us-east-1 -->
+  <td>ami-415a4f04</td><!-- us-west-1 -->
+  <td>ami-6ffbb75f</td><!-- us-west-2 -->
+  <td>ami-f253ff85</td><!-- eu-west-1 -->
+  <td>ami-989bbdca</td><!-- ap-southeast-1 -->
+  <td>ami-63402d59</td><!-- ap-southeast-2 -->
+  <td>ami-51e2d450</td><!-- ap-northeast-1 -->
+  <td>ami-f1a511ec</td><!-- sa-east-1 -->
+</tr>
 </table>
 
 ## i386 -- 32 bit AMIs
@@ -153,6 +175,17 @@
   <td>ami-a7ef42ba</td><!-- sa-east-1 -->
 </tr>
 <tr>
+  <th>NetBSD 6.0.6</th>
+  <td>ami-62249c0a</td><!-- us-east-1 -->
+  <td>ami-7945503c</td><!-- us-west-1 -->
+  <td>ami-ede2aedd</td><!-- us-west-2 -->
+  <td>ami-302e8247</td><!-- eu-west-1 -->
+  <td>ami-3498be66</td><!-- ap-southeast-1 -->
+  <td>ami-1d432e27</td><!-- ap-southeast-2 -->
+  <td>ami-b7eadcb6</td><!-- ap-northeast-1 -->
+  <td>ami-73a6126e</td><!-- sa-east-1 -->
+</tr>
+<tr>
   <th>NetBSD 6.1.3</th>
   <td>ami-a185b8c8</td><!-- us-east-1 -->
   <td>ami-e4cefca1</td><!-- us-west-1 -->
@@ -174,4 +207,15 @@
   <td>ami-a52e55a4</td><!-- ap-northeast-1 -->
   <td>ami-4b1ebc56</td><!-- sa-east-1 -->
 </tr>
+<tr>
+  <th>NetBSD 6.1.5</th>
+  <td>ami-b618a0de</td><!-- us-east-1 -->
+  <td>ami-3d5a4f78</td><!-- us-west-1 -->
+  <td>ami-3be2ae0b</td><!-- us-west-2 -->
+  <td>ami-aa2c80dd</td><!-- eu-west-1 -->
+  <td>ami-5a98be08</td><!-- ap-southeast-1 -->
+  <td>ami-fd402dc7</td><!-- ap-southeast-2 -->
+  <td>ami-3befd93a</td><!-- ap-northeast-1 -->
+  <td>ami-07a6121a</td><!-- sa-east-1 -->
+</tr>
 </table>

the zsh-current package is no more. time has passed, and shells/zsh is
new enough to satisfy the requirements specified in this document
Index: wikisrc/unicode.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/unicode.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/unicode.mdwn	5 Feb 2012 07:14:36 -0000	1.2
+++ wikisrc/unicode.mdwn	13 Oct 2014 05:23:02 -0000	1.3
@@ -66,7 +66,7 @@
 
   * Note: The stable version 4.2.x won't work. UTF-8 in the Z shell is enabled by default since 4.3.2. 
     
-       cd /usr/pkgsrc/shells/zsh-current
+       cd /usr/pkgsrc/shells/zsh
        make install clean
        chsh -s /usr/pkg/bin/zsh
     

Add new project suggested by Chuck
--- /dev/null	2014-10-20 14:10:04.000000000 +0000
+++ wikisrc/projects/project/x86_smap_smep.mdwn	2014-10-20 14:13:07.000000000 +0000
@@ -0,0 +1,23 @@
+[[!template id=project
+
+title="Add support for mapping userspace via SMAP/SMEP on newer x86 CPUs"
+
+contact="""
+[port-amd64](mailto:port-amd64@NetBSD.org),
+[port-i386](mailto:port-i386@NetBSD.org)
+"""
+
+category="ports"
+difficulty="medium"
+
+description="""
+On x86 CPUs, NetBSD currently maps the currently running userland process inside kernel VA.
+This allows for easy access to userland data, but also is a security risk and hides kernel programming errors.
+Other architectures are not doing it and require explicit copyin(9)/copyout(9) to access such pointers.
+
+Newer x86 CPUs provide features called SMAP or SMEP to help with this.
+This project is about making use of these features if available and modify the x86 pmap modules accordingly.
+
+The influence on XEN needs to be evaluated, the concepts may not apply 1:1 there but of course XEN has to stay functional.
+"""
+]]

separate cdevsw methods not used by disk drivers
Index: wikisrc/users/mlelstv/disk-devices-layered.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/disk-devices-layered.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/users/mlelstv/disk-devices-layered.mdwn	12 Oct 2014 07:04:51 -0000	1.3
+++ wikisrc/users/mlelstv/disk-devices-layered.mdwn	12 Oct 2014 07:10:09 -0000	1.4
@@ -19,16 +19,16 @@
 	- d_read
 	- d_write
 	- d_ioctl
+	- d_mmap
+	- d_discard
+  - other methods not used by disk drivers
 	- d_stop
 	- d_tty
 	- d_poll
-	- d_mmap
 	- d_kqfilter
-	- d_discard
   - constants
 	- d_flag
 
-
 Layering is possible, the dk_lookup function is used to get
 a handle (a vnode) a child device.
 

escape asterisks
Index: wikisrc/users/mlelstv/disk-devices-layered.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/disk-devices-layered.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/users/mlelstv/disk-devices-layered.mdwn	11 Oct 2014 13:23:24 -0000	1.2
+++ wikisrc/users/mlelstv/disk-devices-layered.mdwn	12 Oct 2014 07:04:51 -0000	1.3
@@ -79,7 +79,7 @@
 	- writedisklabel
   - sun/disksubr.c
 	- like subr_disk_mbr.c but different for sun3/sparc/sparc64
-  - arch/*/*/disksubr.c
+  - arch/\*/\*/disksubr.c
 	- like subr_disk_mbr.c but different
 
 

more about autoconf
Index: wikisrc/users/mlelstv/disk-devices-layered.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/disk-devices-layered.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/users/mlelstv/disk-devices-layered.mdwn	23 Sep 2014 08:14:50 -0000	1.1
+++ wikisrc/users/mlelstv/disk-devices-layered.mdwn	11 Oct 2014 13:23:24 -0000	1.2
@@ -46,13 +46,28 @@
 
 - kernel disk interface
   - kern/subr_disk.c
+	- driver calls disk_init() to register
 	- instrumentation (iostat)
 	- DIOCGDISKINFO
 	- partition support (bounds_check_..)
 	- disklabel routines
 	- low-level routines polluting namespace (disk_read_sectors)
+	- registers a callback to strategy and minphys functions,
+	  currently there are only one user, dk(4) calls the minphys
+	  function.
 
 
+Almost all disk drivers have a regular driver structure that
+is created by the autoconf framework. An exception is the ccd(4)
+driver that hand-crafts its private data without autoconf.
+
+- autoconf device building
+  - kern/subr_autoconf.c
+	- generic for all device drivers, not only disk drivers
+	- provides common data including a proplib dictionary
+	- the dictionary is used to register unit data, for example
+	  a drive geometry.
+
 The disklabel routines are mostly MD, the sun/sparc routines are
 not in arch/* but in dev/sun/*, the i386/amd64 routines (also used
 by other archs) are in kern/subr_disk_mbr.c

removed
--- wikisrc/users/obache.mdwn	2014-10-20 14:13:08.000000000 +0000
+++ /dev/null	2014-10-20 14:10:04.000000000 +0000
@@ -1,2 +0,0 @@
-is not working on anything.
-

update for 6.1.5
Index: wikisrc/ports/acorn26.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/acorn26.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/acorn26.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/acorn26.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="acorn26"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.1"
 changes_cur="6.0"
Index: wikisrc/ports/acorn32.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/acorn32.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/ports/acorn32.mdwn	8 Jun 2014 04:29:58 -0000	1.7
+++ wikisrc/ports/acorn32.mdwn	6 Oct 2014 21:41:28 -0000	1.8
@@ -1,6 +1,6 @@
 [[!template id=port
 port="acorn32"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.1"
 changes_cur="6.0"
Index: wikisrc/ports/algor.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/algor.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/ports/algor.mdwn	18 Apr 2014 20:46:30 -0000	1.5
+++ wikisrc/ports/algor.mdwn	6 Oct 2014 21:41:28 -0000	1.6
@@ -1,6 +1,6 @@
 [[!template id=port
 port="algor"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/alpha.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/alpha.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/alpha.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/alpha.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="alpha"
-cur_rel="6.1.4"
+cur_rel="6.1.5"
 pkg_rel="5.1"
 future_rel="7.0"
 changes_cur="6.0"
Index: wikisrc/ports/amd64.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/amd64.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/ports/amd64.mdwn	18 Apr 2014 20:46:30 -0000	1.10
+++ wikisrc/ports/amd64.mdwn	6 Oct 2014 21:41:28 -0000	1.11
@@ -1,6 +1,6 @@
 [[!template id=port
 port="amd64"
-cur_rel="6.1.4"
+cur_rel="6.1.5"
 future_rel="7.0"
 changes_cur="6.0"
 changes_future="7.0"
Index: wikisrc/ports/amiga.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/amiga.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/ports/amiga.mdwn	18 Apr 2014 20:46:30 -0000	1.8
+++ wikisrc/ports/amiga.mdwn	6 Oct 2014 21:41:28 -0000	1.9
@@ -1,6 +1,6 @@
 [[!template id=port
 port="amiga"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/amigappc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/amigappc.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/amigappc.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/amigappc.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,7 +1,7 @@
 [[!template id=port
 port="amigappc"
 port_alt="powerpc"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 pkg_rel="6.0"
 future_rel="7.0"
 changes_cur="6.0"
Index: wikisrc/ports/arc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/arc.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/arc.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/arc.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="arc"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/atari.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/atari.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/atari.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/atari.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="atari"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/bebox.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/bebox.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/bebox.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/bebox.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="bebox"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/cats.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/cats.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/cats.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/cats.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,6 +1,6 @@
 [[!template id=port
 port="cats"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.1"
 changes_cur="6.0"
Index: wikisrc/ports/cesfic.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/cesfic.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/ports/cesfic.mdwn	18 Apr 2014 20:46:30 -0000	1.4
+++ wikisrc/ports/cesfic.mdwn	6 Oct 2014 21:41:28 -0000	1.5
@@ -1,7 +1,7 @@
 [[!template id=port
 port="cesfic"
 port_alt="m68k"
-cur_rel="6.1.4"  
+cur_rel="6.1.5"  
 future_rel="7.0"
 pkg_rel="6.0"
 changes_cur="6.0"
Index: wikisrc/ports/cobalt.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/cobalt.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5

(Diff truncated)
--- /dev/null	2014-10-20 14:10:04.000000000 +0000
+++ wikisrc/How_to_increase_ulimit_with_rc.conf.mdwn	2014-10-20 14:13:10.000000000 +0000
@@ -0,0 +1,13 @@
+Using apache as an example:
+
+Create the file /etc/rc.conf.d/apache
+
+and put in it:
+
+ start_precmd="ulimit -n 1024"
+
+---
+
+This should work for anything in rc.conf.
+
+You can also set a "global" rc.conf ulimit by putting start_precmd in /etc/rc.conf itself

Index: wikisrc/tutorials.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials.mdwn,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- wikisrc/tutorials.mdwn	3 Oct 2014 03:15:43 -0000	1.28
+++ wikisrc/tutorials.mdwn	3 Oct 2014 03:16:11 -0000	1.29
@@ -8,7 +8,7 @@
 * [[set-up raidframe]]
 * [[LaTeX in NetBSD]]
 * [[How to use snapshots]]
-* [[How to set up a Xen Dom0 running NetBSD 6.1|how to set up a xen dom0]]
+* [[how to set up a Xen Dom0 running NetBSD 6.1|how to set up a xen dom0]]
 
 ## Pkgsrc
 * [[pkgsrc]]

Index: wikisrc/tutorials.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials.mdwn,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- wikisrc/tutorials.mdwn	3 Jul 2013 23:19:39 -0000	1.27
+++ wikisrc/tutorials.mdwn	3 Oct 2014 03:15:43 -0000	1.28
@@ -16,6 +16,7 @@
 ## System
 * [[How to enable and run DTrace]]
 * [[How to create an L2TP IPSEC tunnel between an Android or iPhone or iOS device to NetBSD]]
+* [[How to increase ulimit with rc.conf]]
 
 ## Developers Corner
 

Add note about DIAGNOSTIC option
Index: wikisrc/releng/release-prep.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/release-prep.mdwn,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- wikisrc/releng/release-prep.mdwn	30 May 2014 16:58:51 -0000	1.14
+++ wikisrc/releng/release-prep.mdwn	26 Sep 2014 03:58:38 -0000	1.15
@@ -12,6 +12,7 @@
 * Add doc/CHANGES-5.0
 * Adjust doc/README.files and doc/LAST_MINUTE 
 * Adjust gnu/usr.bin/groff/tmac/mdoc.local and sys/sys/param.h
+* Comment out DIAGNOSTIC options in kernel configuration files before Beta release.
 
 On the trunk:
 

Update for NetBSD 7.x
Index: wikisrc/releng.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/releng.mdwn	1 Jul 2014 04:27:26 -0000	1.10
+++ wikisrc/releng.mdwn	26 Sep 2014 03:54:20 -0000	1.11
@@ -6,10 +6,16 @@
 
 The next major release will be NetBSD 7.0.  There are no dates associated with NetBSD 7.0 yet.
 
-Development for NetBSD 7.0 is still occurring on the trunk of the CVS tree.
+Development for NetBSD 8.0 is still occurring on the trunk of the CVS tree.
 
 ## Active Major Releases
 
+### NetBSD 7.x
+
+* Next Major Release: NetBSD 7.0 (No release date proposed)
+  + CVS branch tag: <code>netbsd-7</code>
+* [Current pull-up queue for the netbsd-7 branch](http://releng.netbsd.org/cgi-bin/req-7.cgi)
+
 ### NetBSD 6.x
 
 * Next Minor Release: NetBSD 6.2 (No release date proposed)

Add new item.
Index: wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn	23 Sep 2014 18:22:01 -0000	1.30
+++ wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn	25 Sep 2014 10:28:12 -0000	1.31
@@ -58,5 +58,5 @@
 
 * Foundation Bylaws
 * bozohttp: Extending it (a little bit) and use it for www.NetBSD.org? (topic suggested by mbalmer)
-
+* IIJ's work (document only)
 ## Varia

Index: wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn	22 Sep 2014 07:11:18 -0000	1.29
+++ wikisrc/summits/eurobsdcon_2014_netbsd_summit.mdwn	23 Sep 2014 18:22:01 -0000	1.30
@@ -41,6 +41,9 @@
 Christoph Badura | `bad` | yes |
 Lourival Vieira Neto | `lneto` | yes |
 Marc Balmer | `mbalmer` | yes | Vera will also join the dinner
+Joerg Sonnenberger | `joerg`
+Jaap Boender
+Alexander Nasonov | `alnsn`
 """]]
 
 

u
Index: wikisrc/users/mlelstv/supported-video.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/supported-video.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/users/mlelstv/supported-video.mdwn	21 Dec 2013 14:55:38 -0000	1.3
+++ wikisrc/users/mlelstv/supported-video.mdwn	23 Sep 2014 11:40:48 -0000	1.4
@@ -13,13 +13,19 @@
  <td>2+</td>
  <td>i386/amd64</td>
  <td>NVidia GeForce2 Go</td>
- <td>base Xorg, pkgsrc modular-xorg-server</td>
+ <td>base Xorg, pkgsrc modular-xorg-server, nv driver</td>
+</tr>
+<tr>
+ <td>7+</td>
+ <td>amd64</td>
+ <td>Intel HD2000</td>
+ <td>base Xorg, igmafb driver</td>
 </tr>
 <tr>
  <td>5+</td>
  <td>i386/amd64</td>
  <td>ATI Mobility Radeon HD 3650</td>
- <td>base Xorg</td>
+ <td>base Xorg, ati driver</td>
 </tr>
 <tr>
  <td>5+</td>
@@ -30,8 +36,8 @@
 <tr>
  <td>7</td>
  <td>evbarm RPI</td>
- <td>native chipset</td>
- <td>base Xorg</td>
+ <td>BCM2835 embedded GPU</td>
+ <td>base Xorg, genfb driver</td>
 </tr>
 </table>
 

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:20:22 -0000	1.10
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:23:42 -0000	1.11
@@ -109,6 +109,9 @@
   a UUID when created. The wedge takes the name of the partition if set,
   otherwise it defaults to the UUID.
 
+A wedge has exactly one name, so it is currently not possible to have multiple
+aliases like 'by-name', 'by-uuid', 'by-label'.
+
 ## Names can be looked up in userland
 
 The command 'dkctl diskdev listwedges' shows all wedges attached to a particular

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:19:06 -0000	1.9
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:20:22 -0000	1.10
@@ -81,7 +81,7 @@
 Wedges reflect all the data and meta-data that is required to provide
 storage used by a filesystem.
 
-## Can have a name that defaults to a UUID
+## Wedges can have a name which defaults to a UUID
 
 Wedges are units of the 'dk' driver and can be identified by a name. The name
 is a string that uniquely identifies the unit and must be given to the unit

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:18:41 -0000	1.8
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:19:06 -0000	1.9
@@ -54,7 +54,7 @@
 Partition suffixes however are not portable because they are based
 on labels that depend on the machine or even individual drivers.
 
-## Wedges are partitions that look like units for a single driver
+## Wedges are partitions that look like units of a single driver
 
 A wedge is a pseudo disk that accesses the RAW_PART of a real disk. This effectively
 bypasses the driver based partitioning and is used to provide a driver independent

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:13:29 -0000	1.7
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:18:41 -0000	1.8
@@ -23,25 +23,25 @@
 
 where
 
-- sd = SCSI Disk driver name
+- sd = SCSI disk driver name
 - 3  = Unit 3
 - f  = Partition 6 (count starts with 'a')
 
-## autoconf: device are named driver+unit, unit is just the next unused unit number
+## Autoconf: devices are named driver+unit, unit is just the next unused unit number
 
 During autoconfiguration the kernel attaches disk drivers, the drivers then assign free
-unit numbers to detected hardware.
+unit numbers to detected hardware. Unit numbers are counted per driver.
 
 The disk driver name is something strongly connected to the hardware, there is hardly
-any hard disk that can attach to the IDE driver or the SCSI driver. Even when you
+any hard disk that can attach to both the IDE driver and the SCSI driver. Even when you
 think about hybrid SAS/SATA controllers or multiport USB/Firewire/SATA enclosures,
-there is no confusion, because it requires an intentious change to the hardware.
+there is no confusion, because it requires an intentional change to the hardware.
 
 The unit numbers however are very volatile. They are assigned in the order a particular
-disk is detected. Concurrent autoconfiguration could even generate unpredictable unit numbers
-in the future without any intervention.
+disk is detected. Concurrent autoconfiguration might even generate unpredictable unit numbers
+without any intervention.
 
-## partitions on device names are just private count (a,b,c,...) per device
+## Partitions on device names are just private counts (a,b,c,...) per device
 
 Partition suffixes are just indexes into a table that describes slices of a disk.
 There is always a specific slice (RAW_PART) that covers that whole disk. It is
@@ -54,7 +54,7 @@
 Partition suffixes however are not portable because they are based
 on labels that depend on the machine or even individual drivers.
 
-## wedges are partitions that look like units for a single driver
+## Wedges are partitions that look like units for a single driver
 
 A wedge is a pseudo disk that accesses the RAW_PART of a real disk. This effectively
 bypasses the driver based partitioning and is used to provide a driver independent

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:11:11 -0000	1.6
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:13:29 -0000	1.7
@@ -122,14 +122,16 @@
 ## util function getfsspecname()
 
 Programs using /etc/fstab can use wedge names instead of device paths. That's
-because the fs_spec component isn't necessarily a device path but is interpreted
-by the specific commands.
+because the fs_spec component isn't necessarily a device path but can be
+interpreted by the specific commands.
 
-The getfsspecname() function currently implements the interpretation of the string
+The getfsspecname() function currently implements the interpretation of a string
+like
 
 > NAME=name
 
-and returns the device path of the wedge that has the particular name.
+and returns the device path of the wedge that has the particular name. Other
+strings are just passed through to retain the conventional behaviour.
 
 ## Patches for userland tools (mount,umount,swapctl,fsck,quotaon,quotacheck,edquota,dumpfs,tunefs,dump)
 

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:04:54 -0000	1.5
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:11:11 -0000	1.6
@@ -73,7 +73,7 @@
 
 ## Wedges are a unified interface to partitions
 
-In a wedge enable system, each disk partition is referenced by a wedge. This is
+In a wedge enabled system, each disk partition is referenced by a wedge. This is
 a very simple view on a range of disk blocks. In particular there is no meta
 information except for the simple geometry describing the size of a block
 and the total number of blocks.
@@ -95,14 +95,15 @@
 
 - MBR partitions generate the wedge name from driver, unit, partition suffix
   of the underlying disk where the suffixes start with 'e' to avoid conflicts.
+  This looks like a conventional partition name, e.g. sd3f.
 
 - BSD disklabel partitions do something similar but also check for the volume
   name in the disklabel.
   - If there is a volume name and it is not the default string 'fictitious'
-    then the wedge name is built from volume and partition suffix seperated
-    by a '/'.
-  - Otherwise it is built from driver, unit and partition suffix, again
-    separating the partition suffix by '/'.
+    then the wedge name is built from volume and partition suffix separated
+    by a '/', e.g. system/f for partition 6 of the volume named 'system'.
+  - Otherwise it is built from driver, unit and partition suffix. This again
+    looks like a conventional partition name, e.g. sd3f.
 
 - GPT partitions may have names themselves, but they always have assigned
   a UUID when created. The wedge takes the name of the partition if set,

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:03:56 -0000	1.4
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:04:54 -0000	1.5
@@ -21,9 +21,11 @@
 
 > /dev/sd3f
 
-- sd = SCSI Disk driver
+where
+
+- sd = SCSI Disk driver name
 - 3  = Unit 3
-- f  = Partiton 6 (count starts with 'a')
+- f  = Partition 6 (count starts with 'a')
 
 ## autoconf: device are named driver+unit, unit is just the next unused unit number
 

f
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:01:32 -0000	1.3
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:03:56 -0000	1.4
@@ -4,21 +4,22 @@
 
 /etc/fstab is a simple text file describing targets of a mount operation. Each line consists
 of six fields:
-   fs_spec fs_file fs_vfstype fs_mntops fs_freq fs_passno
+
+> fs_spec fs_file fs_vfstype fs_mntops fs_freq fs_passno
 
 The manual describes the fs_spec field as
 
-   The first field, (fs_spec), describes the block special device or remote
-   file system to be mounted.  For file systems of type ffs, the special
-   file name is the block special file name, and not the character special
-   file name.  If a program needs the character special file name, the
-   program must create it by appending a ``r'' after the last ``/'' in the
-   special file name.
+> The first field, (fs_spec), describes the block special device or remote
+> file system to be mounted.  For file systems of type ffs, the special
+> file name is the block special file name, and not the character special
+> file name.  If a program needs the character special file name, the
+> program must create it by appending a ``r'' after the last ``/'' in the
+> special file name.
 
 The block special file names are built by convention from the name of the
 device driver, a unit number and a partition suffix. E.g.
 
-   /dev/sd3f
+> /dev/sd3f
 
 - sd = SCSI Disk driver
 - 3  = Unit 3
@@ -123,7 +124,7 @@
 
 The getfsspecname() function currently implements the interpretation of the string
 
-   NAME=name
+> NAME=name
 
 and returns the device path of the wedge that has the particular name.
 

text
Index: wikisrc/users/mlelstv/device-naming.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv/device-naming.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/users/mlelstv/device-naming.mdwn	26 May 2013 16:23:54 -0000	1.2
+++ wikisrc/users/mlelstv/device-naming.mdwn	23 Sep 2014 11:01:32 -0000	1.3
@@ -1,21 +1,144 @@
 # Rationale
 
-- Talk about device names used in /etc/fstab
-- autoconf: device are named driver+unit, unit is just the next unused unit number
-- static hardware has well-defined device names
-- not-so static hardware often has distinction between different controllers and thus maybe different drivers
-- partitions on device names are just private count (a,b,c,...) per device
-- wedges are partitions that look like units for a single same driver
-  - no distinction by controller / driver
-  - no distinction by private counter
+## Talk about device names used in /etc/fstab
+
+/etc/fstab is a simple text file describing targets of a mount operation. Each line consists
+of six fields:
+   fs_spec fs_file fs_vfstype fs_mntops fs_freq fs_passno
+
+The manual describes the fs_spec field as
+
+   The first field, (fs_spec), describes the block special device or remote
+   file system to be mounted.  For file systems of type ffs, the special
+   file name is the block special file name, and not the character special
+   file name.  If a program needs the character special file name, the
+   program must create it by appending a ``r'' after the last ``/'' in the
+   special file name.
+
+The block special file names are built by convention from the name of the
+device driver, a unit number and a partition suffix. E.g.
+
+   /dev/sd3f
+
+- sd = SCSI Disk driver
+- 3  = Unit 3
+- f  = Partiton 6 (count starts with 'a')
+
+## autoconf: device are named driver+unit, unit is just the next unused unit number
+
+During autoconfiguration the kernel attaches disk drivers, the drivers then assign free
+unit numbers to detected hardware.
+
+The disk driver name is something strongly connected to the hardware, there is hardly
+any hard disk that can attach to the IDE driver or the SCSI driver. Even when you
+think about hybrid SAS/SATA controllers or multiport USB/Firewire/SATA enclosures,
+there is no confusion, because it requires an intentious change to the hardware.
+
+The unit numbers however are very volatile. They are assigned in the order a particular
+disk is detected. Concurrent autoconfiguration could even generate unpredictable unit numbers
+in the future without any intervention.
+
+## partitions on device names are just private count (a,b,c,...) per device
+
+Partition suffixes are just indexes into a table that describes slices of a disk.
+There is always a specific slice (RAW_PART) that covers that whole disk. It is
+usually not used for filesystems, but for meta information like the disk label
+itself.
+
+On some disks, the partition table is computed from disk parameters instead of
+read from persistent storage. But this is supposed to be a stable mapping.
+
+Partition suffixes however are not portable because they are based
+on labels that depend on the machine or even individual drivers.
+
+## wedges are partitions that look like units for a single driver
+
+A wedge is a pseudo disk that accesses the RAW_PART of a real disk. This effectively
+bypasses the driver based partitioning and is used to provide a driver independent
+partitioning system, in particular to support foreign disk labels.
+
+Since wedges are subject to the same autoconf naming scheme, we now have a
+disk driver name that is always 'dk' and has no connection to the accessed
+hardware. There is a, this time, global unit number for all disks and
+of course no partition suffix.
+
+You must predict the order of wedge attachments to be able to access a
+particular disk.
+
 
 # Wedge names
 
-- Wedges are a unified interface to partitions
-- One wedge carries one filesystem
-- Can have a name that defaults to a UUID
-- Names can be looked up in userland
-- util function getfsspecname()
-- Patches for userland tools (mount,umount,swapctl,fsck,quotaon,quotacheck,edquota,dumpfs,tunefs,dump)
-- Kernel interface still uses driver+unit.
-- No reverse mapping, e.g. for df
+## Wedges are a unified interface to partitions
+
+In a wedge enable system, each disk partition is referenced by a wedge. This is
+a very simple view on a range of disk blocks. In particular there is no meta
+information except for the simple geometry describing the size of a block
+and the total number of blocks.
+
+Wedges reflect all the data and meta-data that is required to provide
+storage used by a filesystem.
+
+## Can have a name that defaults to a UUID
+
+Wedges are units of the 'dk' driver and can be identified by a name. The name
+is a string that uniquely identifies the unit and must be given to the unit
+when it is attached. The attachment will fail, when the name already exists.
+
+When a wedge is created manually, the name is given by the operator to the
+dkctl command.
+
+When a wedge is created by the autodetect code, the names are taken or computed
+from the detected label. In particular:
+
+- MBR partitions generate the wedge name from driver, unit, partition suffix
+  of the underlying disk where the suffixes start with 'e' to avoid conflicts.
+
+- BSD disklabel partitions do something similar but also check for the volume
+  name in the disklabel.
+  - If there is a volume name and it is not the default string 'fictitious'
+    then the wedge name is built from volume and partition suffix seperated
+    by a '/'.
+  - Otherwise it is built from driver, unit and partition suffix, again
+    separating the partition suffix by '/'.
+
+- GPT partitions may have names themselves, but they always have assigned
+  a UUID when created. The wedge takes the name of the partition if set,
+  otherwise it defaults to the UUID.
+
+## Names can be looked up in userland
+
+The command 'dkctl diskdev listwedges' shows all wedges attached to a particular
+disk and their names.
+
+The command 'dkctl wedgedev getwedgeinfo' shows data about a wedge device including
+its name.
+
+There is no command to map a name back to the device special file of the wedge.
+
+## util function getfsspecname()
+
+Programs using /etc/fstab can use wedge names instead of device paths. That's
+because the fs_spec component isn't necessarily a device path but is interpreted
+by the specific commands.
+
+The getfsspecname() function currently implements the interpretation of the string
+
+   NAME=name
+
+and returns the device path of the wedge that has the particular name.
+
+## Patches for userland tools (mount,umount,swapctl,fsck,quotaon,quotacheck,edquota,dumpfs,tunefs,dump)
+
+Several commands have been augmented to utilize the getfsspecname() function so that
+they will understand fs_spec strings. The commands use this for data fetched from
+/etc/fstab but also for command line arguments.
+
+This is a pure userland function, the commands will still use conventional device paths
+when talking to the kernel, and anything the kernel reports (e.g. syslog messages)
+will identify a device by driver name and unit number.
+
+Userland code also lacks support for reverse mapping. E.g. the df command will also
+report usage values for devices 'dk0','dk1' and so on instead of wedge names that
+might have been used in /etc/fstab for mounting the filesystems.
+
+

test
Index: wikisrc/users/mlelstv.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv.mdwn,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- wikisrc/users/mlelstv.mdwn	23 Sep 2014 09:17:52 -0000	1.16
+++ wikisrc/users/mlelstv.mdwn	23 Sep 2014 09:19:16 -0000	1.17
@@ -1,11 +1,13 @@
 [[!meta title="Michael van Elst (mlelstv@NetBSD.org)"]]
 
+# 1
 - [[Device naming, the first|mlelstv/device-naming]]
 - [[Device naming, the second|mlelstv/device-naming2]]
 - [[Disk interfaces in the kernel|mlelstv/disk-devices-layered]]
 
----
+# 2
 - [[Supported video|mlelstv/supported-video]]
----
+
+# 3
 - [[sandbox|mlelstv/sandbox]]
 

test
Index: wikisrc/users/mlelstv.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/mlelstv.mdwn,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- wikisrc/users/mlelstv.mdwn	23 Sep 2014 09:08:41 -0000	1.15
+++ wikisrc/users/mlelstv.mdwn	23 Sep 2014 09:17:52 -0000	1.16
@@ -1,16 +1,11 @@
 [[!meta title="Michael van Elst (mlelstv@NetBSD.org)"]]
-1
 
 - [[Device naming, the first|mlelstv/device-naming]]
 - [[Device naming, the second|mlelstv/device-naming2]]
 - [[Disk interfaces in the kernel|mlelstv/disk-devices-layered]]
-- foobar
-
-2
 
+---
 - [[Supported video|mlelstv/supported-video]]
-
-3
-
+---
 - [[sandbox|mlelstv/sandbox]]
 

Add a comment