The diff below makes rd(4) into a real device; i.e., it attaches to
the device tree like any other device, rather than attaching as a
pseudo-device.  This avoids the trickery that rdattach() (in
dev/ramdisk.c) currently has to do to initialize and fake up its
"struct device".

This also removes a lot of useless features from ramdisk.c (e.g.,
RD_KMEM_ALLOCATED and RD_UMEM_SERVER), and generally behaves better as
a disk driver (e.g., multiple partitions should work now, should
someone want to try that for something).

The new driver is almost entirely disk driver boiler plate code from
other drivers (mostly sd.c).  I'm not sure what to do (if anything)
with the copyright; the only original rd.c/ramdisk.c code left are the
"rd_root_size" and "rd_root_image" variables.

Anyway, feedback and testing welcome.  I've tested with amd64's
ramdisk_cd image, and it seems to work fine.


Index: conf/files
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/conf/files,v
retrieving revision 1.512
diff -u -p -r1.512 files
--- conf/files  7 Apr 2011 13:42:53 -0000       1.512
+++ conf/files  9 Jun 2011 23:27:17 -0000
@@ -488,12 +488,14 @@ file      dev/softraid_raid6.c            softraid
 device spdmem
 file   dev/spdmem.c                    spdmem
 
+device rd: disk
+attach rd at root
+file   dev/rd.c                        rd needs-flag
+
 # legitimate pseudo-devices
 pseudo-device vnd: disk
 pseudo-device ccd: disk
 pseudo-device raid: disk
-pseudo-device rd: disk
-file   dev/ramdisk.c                   rd needs-flag
 
 pseudo-device pty: tty
 pseudo-device nmea: tty
@@ -1015,7 +1017,6 @@ file uvm/uvm_swap_encrypt.c               uvm_swap_en
 file uvm/uvm_unix.c
 file uvm/uvm_user.c
 file uvm/uvm_vnode.c
-file dev/rd.c                          ramdisk_hooks
 
 # IPv6
 file net/if_faith.c                    faith                   needs-count
Index: sys/conf.h
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/sys/conf.h,v
retrieving revision 1.110
diff -u -p -r1.110 conf.h
--- sys/conf.h  25 Jan 2011 20:03:35 -0000      1.110
+++ sys/conf.h  9 Jun 2011 23:20:11 -0000
@@ -607,6 +607,9 @@ bdev_decl(sw);
 bdev_decl(vnd);
 cdev_decl(vnd);
 
+bdev_decl(rd);
+cdev_decl(rd);
+
 bdev_decl(ccd);
 cdev_decl(ccd);
 
Index: kern/init_main.c
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/kern/init_main.c,v
retrieving revision 1.177
diff -u -p -r1.177 init_main.c
--- kern/init_main.c    18 Apr 2011 21:44:56 -0000      1.177
+++ kern/init_main.c    19 Jun 2011 06:46:03 -0000
@@ -100,6 +100,7 @@
 extern void nfs_init(void);
 #endif
 
+#include "rd.h"
 #include "mpath.h"
 #include "vscsi.h"
 #include "softraid.h"
@@ -457,6 +458,9 @@ main(void *framep)
 
        dostartuphooks();
 
+#if NRD > 0
+       config_rootfound("rd", NULL);
+#endif
 #if NMPATH > 0
        config_rootfound("mpath", NULL);
 #endif
Index: dev/rd.c
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/rd.c,v
retrieving revision 1.2
diff -u -p -r1.2 rd.c
--- dev/rd.c    22 Aug 2008 03:12:37 -0000      1.2
+++ dev/rd.c    20 Jun 2011 02:05:53 -0000
@@ -29,11 +29,19 @@
 
 #include <sys/param.h>
 #include <sys/systm.h>
-#include <sys/reboot.h>
-
-#include <dev/ramdisk.h>
-
-extern int boothowto;
+#include <sys/proc.h>
+#include <sys/errno.h>
+#include <sys/buf.h>
+#include <sys/malloc.h>
+#include <sys/ioctl.h>
+#include <sys/disklabel.h>
+#include <sys/device.h>
+#include <sys/disk.h>
+#include <sys/stat.h>
+#include <sys/file.h>
+#include <sys/uio.h>
+#include <sys/conf.h>
+#include <sys/dkio.h>
 
 #ifndef MINIROOTSIZE
 #define MINIROOTSIZE 512
@@ -48,25 +56,297 @@ extern int boothowto;
 u_int32_t rd_root_size = ROOTBYTES;
 char rd_root_image[ROOTBYTES] = "|This is the root ramdisk!\n";
 
-/*
- * This is called during autoconfig.
- */
+int    rd_match(struct device *, void *, void *);
+void   rd_attach(struct device *, struct device *, void *);
+
+struct rd_softc {
+       struct device   sc_dev;
+       struct disk     sc_dk;
+};
+
+struct cfattach rd_ca = {
+       sizeof(struct rd_softc),
+       rd_match,
+       rd_attach
+};
+
+struct cfdriver rd_cd = {
+       NULL,
+       "rd",
+       DV_DISK
+};
+
+#define rdlookup(unit) ((struct rd_softc *)disk_lookup(&rd_cd, (unit)))
+
+int    rdgetdisklabel(dev_t, struct rd_softc *, struct disklabel *, int);
+
+int
+rd_match(struct device *parent, void *match, void *aux)
+{
+       struct cfdata *cf = match;
+
+       /* There's only one rd_root_image, so only match rd0. */
+       return (cf->cf_unit == 0);
+}
+
 void
-rd_attach_hook(int unit, struct rd_conf *rd)
+rd_attach(struct device *parent, struct device *self, void *aux)
+{
+       struct rd_softc *sc = (struct rd_softc *)self;
+
+       printf("\n");
+
+       /* Attach disk. */
+       sc->sc_dk.dk_name = sc->sc_dev.dv_xname;
+       disk_attach(&sc->sc_dev, &sc->sc_dk);
+}
+
+int
+rdopen(dev_t dev, int flag, int fmt, struct proc *p)
 {
-       if (unit == 0) {
-               /* Setup root ramdisk */
-               rd->rd_addr = (caddr_t) rd_root_image;
-               rd->rd_size = (size_t)  rd_root_size;
-               rd->rd_type = RD_KMEM_FIXED;
-               printf("rd%d: fixed, %d blocks\n", unit, MINIROOTSIZE);
+       struct rd_softc *sc;
+       u_int unit, part;
+       int error;
+
+       unit = DISKUNIT(dev);
+       part = DISKPART(dev);
+
+       sc = rdlookup(unit);
+       if (sc == NULL)
+               return (ENXIO);
+
+       if ((error = disk_lock(&sc->sc_dk)) != 0)
+               goto unref;
+
+       if (sc->sc_dk.dk_openmask == 0) {
+               /* Load the partition info if not already loaded. */
+               if ((error = rdgetdisklabel(dev, sc, sc->sc_dk.dk_label, 0))
+                   != 0)
+                       goto unlock;
+       }
+
+       /* Check that the partition exists. */
+       if (part != RAW_PART && (part >= sc->sc_dk.dk_label->d_npartitions ||
+           sc->sc_dk.dk_label->d_partitions[part].p_fstype == FS_UNUSED)) {
+               error = ENXIO;
+               goto unlock;
+       }
+
+       /* Ensure the partition doesn't get changed under our feet. */
+       switch (fmt) {
+       case S_IFCHR:
+               sc->sc_dk.dk_copenmask |= (1 << part);
+               break;
+       case S_IFBLK:
+               sc->sc_dk.dk_bopenmask |= (1 << part);
+               break;
        }
+       sc->sc_dk.dk_openmask = sc->sc_dk.dk_copenmask | sc->sc_dk.dk_bopenmask;
+
+ unlock:
+       disk_unlock(&sc->sc_dk);
+ unref:
+       device_unref(&sc->sc_dev);
+       return (error);
+}
+
+int
+rdclose(dev_t dev, int flag, int fmt, struct proc *p)
+{
+       struct rd_softc *sc;
+       u_int unit, part;
+
+       unit = DISKUNIT(dev);
+       part = DISKPART(dev);
+
+       sc = rdlookup(unit);
+       if (sc == NULL)
+               return (ENXIO);
+
+       disk_lock_nointr(&sc->sc_dk);
+
+       switch (fmt) {
+       case S_IFCHR:
+               sc->sc_dk.dk_copenmask &= ~(1 << part);
+               break;
+       case S_IFBLK:
+               sc->sc_dk.dk_bopenmask &= ~(1 << part);
+               break;
+       }
+       sc->sc_dk.dk_openmask = sc->sc_dk.dk_copenmask | sc->sc_dk.dk_bopenmask;
+
+       disk_unlock(&sc->sc_dk);
+       device_unref(&sc->sc_dev);
+       return (0);
 }
 
-/*
- * This is called during open (i.e. mountroot)
- */
 void
-rd_open_hook(int unit, struct rd_conf *rd)
+rdstrategy(struct buf *bp)
+{
+       struct rd_softc *sc;
+       struct partition *p;
+       size_t off, xfer;
+       caddr_t addr;
+       int s;
+
+       sc = rdlookup(DISKUNIT(bp->b_dev));
+       if (sc == NULL) {
+               bp->b_error = ENXIO;
+               goto bad;
+       }
+
+       /* If it's a null transfer, return immediately. */
+       if (bp->b_bcount == 0)
+               goto done;
+
+       /* The transfer must be a whole number of sectors. */
+       if ((bp->b_bcount % sc->sc_dk.dk_label->d_secsize) != 0) {
+               bp->b_error = EINVAL;
+               goto bad;
+       }
+
+       /* Check that the request is within the partition boundaries. */
+       if (bounds_check_with_label(bp, sc->sc_dk.dk_label) <= 0)
+               goto done;
+
+       /* Do the transfer. */
+       /* XXX: Worry about overflow when computing off? */
+
+       p = &sc->sc_dk.dk_label->d_partitions[DISKPART(bp->b_dev)];
+       off = DL_GETPOFFSET(p) * sc->sc_dk.dk_label->d_secsize +
+           (u_int64_t)bp->b_blkno * DEV_BSIZE;
+       if (off > rd_root_size)
+               off = rd_root_size;
+       xfer = bp->b_bcount;
+       if (xfer > rd_root_size - off)
+               xfer = rd_root_size - off;
+       addr = rd_root_image + off;
+       if (bp->b_flags & B_READ)
+               memcpy(bp->b_data, addr, xfer);
+       else
+               memcpy(addr, bp->b_data, xfer);
+       bp->b_resid = bp->b_bcount - xfer;
+       goto done;
+
+ bad:
+       bp->b_flags |= B_ERROR;
+ done:
+       s = splbio();
+       biodone(bp);
+       splx(s);
+       device_unref(&sc->sc_dev);
+}
+
+int
+rdioctl(dev_t dev, u_long cmd, caddr_t data, int fflag, struct proc *p)
+{
+       struct rd_softc *sc;
+       struct disklabel *lp;
+       int error = 0;
+
+       sc = rdlookup(DISKUNIT(dev));
+       if (sc == NULL)
+               return (ENXIO);
+
+       switch (cmd) {
+       case DIOCRLDINFO:
+               lp = malloc(sizeof(*lp), M_TEMP, M_WAITOK);
+               rdgetdisklabel(dev, sc, lp, 0);
+               bcopy(lp, sc->sc_dk.dk_label, sizeof(*lp));
+               free(lp, M_TEMP);
+               goto done;
+
+       case DIOCGPDINFO:
+               rdgetdisklabel(dev, sc, (struct disklabel *)data, 1);
+               goto done;
+
+       case DIOCGDINFO:
+               *(struct disklabel *)data = *(sc->sc_dk.dk_label);
+               goto done;
+
+       case DIOCGPART:
+               ((struct partinfo *)data)->disklab = sc->sc_dk.dk_label;
+               ((struct partinfo *)data)->part =
+                   &sc->sc_dk.dk_label->d_partitions[DISKPART(dev)];
+               goto done;
+
+       case DIOCWDINFO:
+       case DIOCSDINFO:
+               if ((fflag & FWRITE) == 0) {
+                       error = EBADF;
+                       goto done;
+               }
+
+               if ((error = disk_lock(&sc->sc_dk)) != 0)
+                       goto done;
+
+               error = setdisklabel(sc->sc_dk.dk_label,
+                   (struct disklabel *)data, sc->sc_dk.dk_openmask);
+               if (error == 0) {
+                       if (cmd == DIOCWDINFO)
+                               error = writedisklabel(DISKLABELDEV(dev),
+                                   rdstrategy, sc->sc_dk.dk_label);
+               }
+
+               disk_unlock(&sc->sc_dk);
+               goto done;
+       }
+
+ done:
+       device_unref(&sc->sc_dev);
+       return (error);
+}
+
+int
+rdgetdisklabel(dev_t dev, struct rd_softc *sc, struct disklabel *lp,
+    int spoofonly)
+{
+       bzero(lp, sizeof(struct disklabel));
+
+       lp->d_secsize = DEV_BSIZE;
+       lp->d_ntracks = 1;
+       lp->d_nsectors = rd_root_size >> DEV_BSHIFT;
+       lp->d_ncylinders = 1;
+       lp->d_secpercyl = lp->d_nsectors;
+       if (lp->d_secpercyl == 0) {
+               lp->d_secpercyl = 100;
+               /* as long as it's not 0 - readdisklabel divides by it */
+       }
+
+       strncpy(lp->d_typename, "RAM disk", sizeof(lp->d_typename));
+       lp->d_type = DTYPE_SCSI;
+       strncpy(lp->d_packname, "fictitious", sizeof(lp->d_packname));
+       DL_SETDSIZE(lp, lp->d_nsectors);
+       lp->d_version = 1;
+
+       lp->d_magic = DISKMAGIC;
+       lp->d_magic2 = DISKMAGIC;
+       lp->d_checksum = dkcksum(lp);
+
+       /* Call the generic disklabel extraction routine. */
+       return (readdisklabel(DISKLABELDEV(dev), rdstrategy, lp, spoofonly));
+}
+
+int
+rdread(dev_t dev, struct uio *uio, int ioflag)
+{
+       return (physio(rdstrategy, dev, B_READ, minphys, uio));
+}
+
+int
+rdwrite(dev_t dev, struct uio *uio, int ioflag)
+{
+       return (physio(rdstrategy, dev, B_WRITE, minphys, uio));
+}
+
+int
+rddump(dev_t dev, daddr64_t blkno, caddr_t va, size_t size)
+{
+       return (ENXIO);
+}
+
+daddr64_t
+rdsize(dev_t dev)
 {
+       return (-1);
 }
Index: arch/alpha/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/alpha/conf/RAMDISK,v
retrieving revision 1.70
diff -u -p -r1.70 RAMDISK
--- arch/alpha/conf/RAMDISK     24 Jun 2009 11:38:39 -0000      1.70
+++ arch/alpha/conf/RAMDISK     19 Jun 2011 06:59:51 -0000
@@ -23,7 +23,6 @@ option                DEC_1000A       # Corelle etc:  Digital
 #option                API_UP1000      # EV6:          Alpha Processor UP1000
 
 # Enable the hooks used for initializing the ram-disk.
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=5744       # 4 Megabytes!
 
 option         NO_IEEE         # Disable IEEE math
@@ -48,6 +47,8 @@ option                BOOT_CONFIG
 
 config bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 cpu*   at mainbus0
 
@@ -157,5 +158,4 @@ wskbd*              at pckbd? mux 1
 
 #pseudo-device bpfilter        1
 pseudo-device  loop
-pseudo-device  rd              1
 pseudo-device  wsmux           2       # mouse & keyboard multiplexor
Index: arch/alpha/conf/RAMDISKB
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/alpha/conf/RAMDISKB,v
retrieving revision 1.36
diff -u -p -r1.36 RAMDISKB
--- arch/alpha/conf/RAMDISKB    25 Jun 2009 13:06:16 -0000      1.36
+++ arch/alpha/conf/RAMDISKB    19 Jun 2011 06:59:51 -0000
@@ -22,7 +22,6 @@ option                DEC_6600        # EV6:          XP1000, 
264DP O
 option         API_UP1000      # EV6:          Alpha Processor UP1000
 
 # Enable the hooks used for initializing the ram-disk.
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=5744       # 4 Megabytes!
 
 option         NO_IEEE         # Disable IEEE math
@@ -47,6 +46,8 @@ option                BOOT_CONFIG
 
 config bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 cpu*   at mainbus0
 
@@ -153,5 +154,4 @@ wskbd*              at pckbd? mux 1
 
 #pseudo-device bpfilter        1
 pseudo-device  loop
-pseudo-device  rd              1
 pseudo-device  wsmux           2       # mouse & keyboard multiplexor
Index: arch/alpha/conf/RAMDISKBIG
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/alpha/conf/RAMDISKBIG,v
retrieving revision 1.83
diff -u -p -r1.83 RAMDISKBIG
--- arch/alpha/conf/RAMDISKBIG  24 May 2011 20:27:11 -0000      1.83
+++ arch/alpha/conf/RAMDISKBIG  19 Jun 2011 06:59:51 -0000
@@ -25,7 +25,6 @@ option                DEC_6600        # EV6:          XP1000, 
264DP O
 option         API_UP1000      # EV6:          Alpha Processor UP1000
 
 # Enable the hooks used for initializing the ram-disk.
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=5744       # 4 Megabytes!
 
 option         NO_IEEE         # Disable IEEE math
@@ -52,6 +51,8 @@ option                BOOT_CONFIG
 
 config bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 cpu*   at mainbus0
 
@@ -321,6 +322,5 @@ wsmouse*    at pms? mux 0
 pseudo-device  bpfilter        1
 pseudo-device  vlan            # IEEE 802.1Q VLAN 
 pseudo-device  loop
-pseudo-device  rd              1
 pseudo-device  wsmux           2
 pseudo-device  bio             1       # ioctl multiplexing device
Index: arch/amd64/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/amd64/conf/RAMDISK,v
retrieving revision 1.51
diff -u -p -r1.51 RAMDISK
--- arch/amd64/conf/RAMDISK     24 May 2011 20:27:11 -0000      1.51
+++ arch/amd64/conf/RAMDISK     19 Jun 2011 06:59:51 -0000
@@ -25,11 +25,12 @@ option              INET            # IP + ICMP + TCP + UDP
 
 option         BOOT_CONFIG     # boot-time kernel config
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=4480
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 bios0  at mainbus?
 
@@ -268,6 +269,5 @@ pseudo-device       loop    1       # network loopback
 #pseudo-device sl      1       # CSLIP
 #pseudo-device ppp     1       # PPP
 pseudo-device  bpfilter 1      # packet filter
-pseudo-device  rd      1       # ramdisk
 #pseudo-device ccd     4       # concatenated disk devices
 pseudo-device  wsmux   2
Index: arch/amd64/conf/RAMDISK_CD
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/amd64/conf/RAMDISK_CD,v
retrieving revision 1.118
diff -u -p -r1.118 RAMDISK_CD
--- arch/amd64/conf/RAMDISK_CD  24 May 2011 20:27:11 -0000      1.118
+++ arch/amd64/conf/RAMDISK_CD  19 Jun 2011 06:59:51 -0000
@@ -28,11 +28,12 @@ option              INET6           # IPv6 (needs INET)
 option         BOOT_CONFIG     # boot-time kernel config
 option         CRYPTO          # Cryptographic framework
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=4480
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 bios0  at mainbus?
 
@@ -360,7 +361,6 @@ pseudo-device       loop    1       # network loopback
 #pseudo-device ppp     1       # PPP
 pseudo-device  vlan            # IEEE 802.1Q VLAN 
 pseudo-device  bpfilter 1      # packet filter
-pseudo-device  rd      1       # ramdisk
 pseudo-device  ccd     4       # concatenated disk devices
 pseudo-device  wsmux   2
 pseudo-device  bio     1       # ioctl multiplexing device
Index: arch/armish/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/armish/conf/RAMDISK,v
retrieving revision 1.18
diff -u -p -r1.18 RAMDISK
--- arch/armish/conf/RAMDISK    24 May 2011 20:27:11 -0000      1.18
+++ arch/armish/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -38,6 +38,8 @@ option                EXT2FS                  # Second 
Extended Files
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 # The main bus device
 mainbus0       at root
 cpu0           at mainbus?
@@ -179,10 +181,8 @@ pseudo-device      hotplug         1       # devices hot p
 #
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter                1       # packet filter
-pseudo-device  rd              1       # ram disk
 
 option         BOOT_CONFIG             # boot-time kernel config
 
 # RAMDISK stuff
 option         MINIROOTSIZE=5120
-option         RAMDISK_HOOKS
Index: arch/beagle/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/beagle/conf/RAMDISK,v
retrieving revision 1.9
diff -u -p -r1.9 RAMDISK
--- arch/beagle/conf/RAMDISK    17 Feb 2011 20:14:30 -0000      1.9
+++ arch/beagle/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -58,6 +58,8 @@ option WSDISPLAY_DEFAULTSCREENS=1
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 # The main bus device
 mainbus0       at root
 cpu0           at mainbus?
@@ -185,8 +187,6 @@ scsibus* at sdmmc?          # SCSI emulation
 #pseudo-device crypto          1
 pseudo-device  loop            1       # network loopback
 pseudo-device   bpfilter        1       # packet filter
-pseudo-device   rd              1       # ram disk
 
 # RAMDISK stuff
 options        MINIROOTSIZE=5120
-options        RAMDISK_HOOKS
Index: arch/gumstix/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/gumstix/conf/RAMDISK,v
retrieving revision 1.3
diff -u -p -r1.3 RAMDISK
--- arch/gumstix/conf/RAMDISK   3 Jul 2010 03:59:16 -0000       1.3
+++ arch/gumstix/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -37,6 +37,8 @@ makeoptions   CPUFLAGS="-mcpu=xscale"
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 # The main bus device
 mainbus0       at root
 cpu0           at mainbus?
@@ -164,11 +166,9 @@ com2       at pxaip? addr 0x40700000 intr 20       #
 #pseudo-device crypto          1
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ram disk
 pseudo-device  bio             1       # ioctl multiplexing device
 
 options        BOOT_CONFIG     # boot-time kernel config
 
 # RAMDISK stuff
 options        MINIROOTSIZE=5120
-options        RAMDISK_HOOKS
Index: arch/hp300/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/hp300/conf/RAMDISK,v
retrieving revision 1.30
diff -u -p -r1.30 RAMDISK
--- arch/hp300/conf/RAMDISK     8 Jun 2008 20:37:39 -0000       1.30
+++ arch/hp300/conf/RAMDISK     19 Jun 2011 06:59:51 -0000
@@ -48,10 +48,11 @@ option              DIOVERBOSE      # recognize "unknown"
 
 # Options for the ramdisk.
 option         MINIROOTSIZE=4096
-option         RAMDISK_HOOKS
 
 config         bsd     root on rd0 swap on rd0 and hd0b and sd0b
 
+rd0    at root
+
 mainbus0       at root         # root "bus"
 
 intio0         at mainbus0     # internal i/o space
@@ -137,4 +138,3 @@ cd*         at scsibus?             # SCSI CD-ROMs
 pseudo-device  loop    1       # network loopback
 pseudo-device  pty     16      # pseudo-terminals
 pseudo-device  bpfilter 1      # packet filter
-pseudo-device  rd      1       # ramdisk
Index: arch/hppa/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/hppa/conf/RAMDISK,v
retrieving revision 1.92
diff -u -p -r1.92 RAMDISK
--- arch/hppa/conf/RAMDISK      24 May 2011 20:27:11 -0000      1.92
+++ arch/hppa/conf/RAMDISK      19 Jun 2011 06:59:51 -0000
@@ -41,10 +41,11 @@ maxusers    32
 option         TIMEZONE=0      # time zone to adjust RTC time by
 option         DST=0           # daylight saving time used by RTC
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=5120
 config bsd     root on rd0a swap on rd0b # and sd0b
 
+rd0    at root
+
 mainbus0 at root               # root bus
 
 mem*   at mainbus0 flags 0x0000        # /dev/*mem and memory controller
@@ -335,7 +336,6 @@ cd* at scsibus?
 #ch*   at scsibus?
 #uk*   at scsibus?
 
-pseudo-device  rd      1       # ramdisk
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
 pseudo-device  vlan            # IEEE 802.1Q VLAN 
Index: arch/hppa64/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/hppa64/conf/RAMDISK,v
retrieving revision 1.11
diff -u -p -r1.11 RAMDISK
--- arch/hppa64/conf/RAMDISK    24 May 2011 20:27:11 -0000      1.11
+++ arch/hppa64/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -23,10 +23,11 @@ maxusers    32
 option         TIMEZONE=0      # time zone to adjust RTC time by
 option         DST=0           # daylight saving time used by RTC
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=5120
 config bsd     root on rd0a swap on rd0b # and sd0b
 
+rd0    at root
+
 mainbus0 at root               # root bus
 
 mem*   at mainbus0 flags 0x00  # /dev/*mem and memory controller
@@ -186,7 +187,6 @@ cd* at scsibus?
 ch*    at scsibus?
 uk*    at scsibus?
 
-pseudo-device  rd      1       # ramdisk
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
 pseudo-device  pty     16      # pseudo-terminals
Index: arch/i386/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/i386/conf/RAMDISK,v
retrieving revision 1.174
diff -u -p -r1.174 RAMDISK
--- arch/i386/conf/RAMDISK      6 Jun 2011 06:15:02 -0000       1.174
+++ arch/i386/conf/RAMDISK      19 Jun 2011 06:59:51 -0000
@@ -26,11 +26,12 @@ option              INET            # IP + ICMP + TCP + UDP
 
 option         BOOT_CONFIG     # boot-time kernel config
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=3872
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 
 acpi0          at bios?
@@ -282,5 +283,4 @@ pseudo-device       loop    1               # network 
loopback
 #pseudo-device sl      1               # CSLIP
 #pseudo-device ppp     1               # PPP
 pseudo-device  bpfilter 1              # packet filter
-pseudo-device  rd      1               # ramdisk
 pseudo-device  wsmux   2
Index: arch/i386/conf/RAMDISKB
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/i386/conf/RAMDISKB,v
retrieving revision 1.117
diff -u -p -r1.117 RAMDISKB
--- arch/i386/conf/RAMDISKB     7 Jan 2011 19:33:08 -0000       1.117
+++ arch/i386/conf/RAMDISKB     19 Jun 2011 06:59:51 -0000
@@ -26,11 +26,12 @@ option              INET            # IP + ICMP + TCP + UDP
 
 option         BOOT_CONFIG     # boot-time kernel config
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=3872
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 
 acpi0          at bios?
@@ -303,5 +304,4 @@ pseudo-device       loop    1               # network 
loopback
 #pseudo-device sl      1               # CSLIP
 #pseudo-device ppp     1               # PPP
 pseudo-device  bpfilter 1              # packet filter
-pseudo-device  rd      1               # ramdisk
 pseudo-device  wsmux   2
Index: arch/i386/conf/RAMDISKC
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/i386/conf/RAMDISKC,v
retrieving revision 1.98
diff -u -p -r1.98 RAMDISKC
--- arch/i386/conf/RAMDISKC     24 May 2011 20:27:11 -0000      1.98
+++ arch/i386/conf/RAMDISKC     19 Jun 2011 06:59:51 -0000
@@ -26,11 +26,12 @@ option              INET            # IP + ICMP + TCP + UDP
 
 option         BOOT_CONFIG     # boot-time kernel config
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=3872
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 
 acpi0          at bios?
@@ -330,5 +331,4 @@ pseudo-device       loop    1               # network 
loopback
 #pseudo-device sl      1               # CSLIP
 #pseudo-device ppp     1               # PPP
 pseudo-device  bpfilter 1              # packet filter
-pseudo-device  rd      1               # ramdisk
 pseudo-device  wsmux   2
Index: arch/i386/conf/RAMDISK_CD
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/i386/conf/RAMDISK_CD,v
retrieving revision 1.187
diff -u -p -r1.187 RAMDISK_CD
--- arch/i386/conf/RAMDISK_CD   24 May 2011 20:27:11 -0000      1.187
+++ arch/i386/conf/RAMDISK_CD   19 Jun 2011 06:59:51 -0000
@@ -30,11 +30,12 @@ option              INET6           # IPv6 (needs INET)
 option         BOOT_CONFIG     # boot-time kernel config
 option         CRYPTO          # Cryptographic framework
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=3872
 
 config         bsd     root on rd0a swap on rd0b and wd0b and sd0b
 
+rd0    at root
+
 mainbus0 at root
 
 acpi0          at bios?
@@ -443,7 +444,6 @@ pseudo-device       loop    1               # network 
loopback
 #pseudo-device ppp     1               # PPP
 pseudo-device  vlan                    # IEEE 802.1Q VLAN 
 pseudo-device  bpfilter 1              # packet filter
-pseudo-device  rd      1               # ramdisk
 pseudo-device  ccd     4               # concatenated disk devices
 pseudo-device  wsmux   2
 pseudo-device  bio     1               # ioctl multiplexing device
Index: arch/landisk/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/landisk/conf/RAMDISK,v
retrieving revision 1.14
diff -u -p -r1.14 RAMDISK
--- arch/landisk/conf/RAMDISK   24 May 2011 20:27:11 -0000      1.14
+++ arch/landisk/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -34,6 +34,8 @@ option                EXT2FS                  # Second 
Extended Files
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 mainbus0 at root
 cpu0   at mainbus?
 
@@ -131,9 +133,7 @@ option          BOOT_CONFIG             
 
 pseudo-device   loop            1       # network loopback
 pseudo-device   bpfilter                1       # packet filter
-pseudo-device   rd              1       # ram disk
 
 # RAMDISK stuff
 option          MINIROOTSIZE=5120
-option          RAMDISK_HOOKS
 
Index: arch/loongson/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/loongson/conf/RAMDISK,v
retrieving revision 1.18
diff -u -p -r1.18 RAMDISK
--- arch/loongson/conf/RAMDISK  25 May 2011 21:19:59 -0000      1.18
+++ arch/loongson/conf/RAMDISK  19 Jun 2011 06:59:51 -0000
@@ -32,10 +32,11 @@ option              INET6           # IPv6 (needs INET)
 option         DDB             # kernel debugger
 
 option         MINIROOTSIZE=8192
-option         RAMDISK_HOOKS
 
 config bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 # Definition of system
 #
@@ -151,7 +152,6 @@ cd*         at scsibus?
 
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ram disk
 pseudo-device  wsmux           2       # mouse & keyboard multiplexor
 
 option         BOOT_CONFIG     # boot-time kernel config
Index: arch/luna88k/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/luna88k/conf/RAMDISK,v
retrieving revision 1.9
diff -u -p -r1.9 RAMDISK
--- arch/luna88k/conf/RAMDISK   8 Jun 2008 20:37:39 -0000       1.9
+++ arch/luna88k/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -4,7 +4,6 @@ machine         luna88k m88k
 
 # 4 meg ramdisk
 option         MINIROOTSIZE=4096
-option         RAMDISK_HOOKS
 
 # Processor type
 option         M88100          # 88100 support; mandatory
@@ -19,6 +18,8 @@ maxusers      32
 
 config         bsd             root rd0 swap on rd0b
 
+rd0    at root
+
 option         SCSITERSE
 option         SMALL_KERNEL
 option         NO_PROPOLICE
@@ -60,4 +61,3 @@ cd*           at scsibus?                     # SCSI CD-ROM
 
 pseudo-device  loop    1
 pseudo-device  bpfilter 1
-pseudo-device  rd      1
Index: arch/mac68k/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/mac68k/conf/RAMDISK,v
retrieving revision 1.23
diff -u -p -r1.23 RAMDISK
--- arch/mac68k/conf/RAMDISK    8 Jun 2008 20:37:39 -0000       1.23
+++ arch/mac68k/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -6,7 +6,6 @@ machine         mac68k m68k
 
 # 1.4 meg ramdisk
 option         MINIROOTSIZE=2880
-option         RAMDISK_HOOKS
 
 option         SCSITERSE
 option         SMALL_KERNEL
@@ -33,6 +32,8 @@ option                FPSP
 option         FPU_EMULATE
 
 config         bsd             root on rd0a
+
+rd0    at root
 maxusers       32
 
 mainbus0       at root
@@ -76,4 +77,3 @@ sd*           at scsibus?             # SCSI disk drives
 st*            at scsibus?             # SCSI tape drives
 cd*            at scsibus?             # SCSI CD-ROM drives
 
-pseudo-device  rd 1
Index: arch/macppc/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/macppc/conf/RAMDISK,v
retrieving revision 1.90
diff -u -p -r1.90 RAMDISK
--- arch/macppc/conf/RAMDISK    3 Jul 2010 03:59:16 -0000       1.90
+++ arch/macppc/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -30,6 +30,8 @@ option                CRYPTO          # Cryptographic framewor
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 mainbus0       at root
 softraid0      at root
 cpu0           at mainbus0
@@ -229,7 +231,6 @@ cd*         at scsibus?
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
 pseudo-device  vlan            # IEEE 802.1Q VLAN 
-pseudo-device  rd      1       # ram disk
 pseudo-device  wsmux   2       # mouse & keyboard multiplexor
 pseudo-device  bio     1       # ioctl multiplexing device
 
@@ -237,4 +238,3 @@ option              BOOT_CONFIG     # boot-time kernel c
 
 # RAMDISK stuff
 option         MINIROOTSIZE=8192
-option         RAMDISK_HOOKS
Index: arch/mvme68k/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/mvme68k/conf/RAMDISK,v
retrieving revision 1.14
diff -u -p -r1.14 RAMDISK
--- arch/mvme68k/conf/RAMDISK   12 Apr 2009 16:11:40 -0000      1.14
+++ arch/mvme68k/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -4,7 +4,6 @@ machine         mvme68k m68k
 
 # 2 meg ramdisk
 option         MINIROOTSIZE=4096
-option         RAMDISK_HOOKS
 
 option         M68030          # support for 030
 option         M68040          # support for 040
@@ -37,6 +36,8 @@ option                BOOT_CONFIG     # boot-time kernel c
 
 config         bsd             root rd0 swap on rd0b
 
+rd0    at root
+
 mainbus0 at root
 
 # MVME141
@@ -126,4 +127,3 @@ cd* at scsibus?
 
 pseudo-device  loop    1               # network loopback
 pseudo-device  bpfilter 1              # packet filter
-pseudo-device  rd      1               # ramdisk
Index: arch/mvme88k/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/mvme88k/conf/RAMDISK,v
retrieving revision 1.32
diff -u -p -r1.32 RAMDISK
--- arch/mvme88k/conf/RAMDISK   14 Feb 2009 17:41:40 -0000      1.32
+++ arch/mvme88k/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -4,7 +4,6 @@ machine         mvme88k m88k
 
 # 4 meg ramdisk
 option         MINIROOTSIZE=4096
-option         RAMDISK_HOOKS
 
 # Processor type
 option         M88100
@@ -33,6 +32,8 @@ option                BOOT_CONFIG
 
 config         bsd             root rd0 swap on rd0b
 
+rd0    at root
+
 mainbus0 at root
 
 bussw0 at mainbus0 addr 0xfff00000
@@ -85,4 +86,3 @@ cd*   at scsibus?
 
 pseudo-device  loop    1
 pseudo-device  bpfilter 1
-pseudo-device  rd      1
Index: arch/mvmeppc/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/mvmeppc/conf/RAMDISK,v
retrieving revision 1.13
diff -u -p -r1.13 RAMDISK
--- arch/mvmeppc/conf/RAMDISK   26 Sep 2010 20:39:08 -0000      1.13
+++ arch/mvmeppc/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -18,6 +18,8 @@ rmoption      PTRACE
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 #  Now the Machine specification
 #
@@ -82,9 +84,7 @@ sd0           at scsibus? target 0 lun 0
 #ch*           at scsibus?
 #uk*           at scsibus?
 
-pseudo-device  rd              1       # ram disk
 
 # RAMDISK stuff
 option         MINIROOTSIZE=8192
-option         RAMDISK_HOOKS
 
Index: arch/octeon/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/octeon/conf/RAMDISK,v
retrieving revision 1.9
diff -u -p -r1.9 RAMDISK
--- arch/octeon/conf/RAMDISK    16 Jun 2011 11:22:30 -0000      1.9
+++ arch/octeon/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -32,10 +32,11 @@ option              INET6           # IPv6 (needs INET)
 option         DDB             # kernel debugger
 
 option         MINIROOTSIZE=8192
-option         RAMDISK_HOOKS
 
 config bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 # Definition of system
 #
@@ -66,7 +67,6 @@ rgephy*               at mii?
 
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ram disk
 pseudo-device  wsmux           2       # mouse & keyboard multiplexor
 
 option         BOOT_CONFIG     # boot-time kernel config
Index: arch/palm/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/palm/conf/RAMDISK,v
retrieving revision 1.7
diff -u -p -r1.7 RAMDISK
--- arch/palm/conf/RAMDISK      3 Jul 2010 03:59:17 -0000       1.7
+++ arch/palm/conf/RAMDISK      19 Jun 2011 06:59:51 -0000
@@ -38,6 +38,8 @@ option        WSDISPLAY_COMPAT_PCVT           # emulate 
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 # The main bus device
 mainbus0       at root
 cpu0           at mainbus?
@@ -157,11 +159,9 @@ pseudo-device      wsmux           2       # mouse & 
keyboar
 #pseudo-device crypto          1
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ram disk
 pseudo-device  bio             1       # ioctl multiplexing device
 
 options        BOOT_CONFIG     # boot-time kernel config
 
 # RAMDISK stuff
 options        MINIROOTSIZE=5120
-options        RAMDISK_HOOKS
Index: arch/sgi/conf/RAMDISK-IP27
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sgi/conf/RAMDISK-IP27,v
retrieving revision 1.25
diff -u -p -r1.25 RAMDISK-IP27
--- arch/sgi/conf/RAMDISK-IP27  24 May 2011 20:27:11 -0000      1.25
+++ arch/sgi/conf/RAMDISK-IP27  19 Jun 2011 06:59:51 -0000
@@ -29,7 +29,6 @@ option                INET6           # IPv6 (needs INET)
 
 # RAMDISK stuff
 option         MINIROOTSIZE=10240
-option         RAMDISK_HOOKS
 
 # Define what targets to support
 option         TGT_ORIGIN      # IP27/IP35
@@ -40,6 +39,8 @@ option                CPU_R10000      # R10000/R12000/R1400
 # Specify storage configuration using ramdisk
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 # Definition of system
 #
@@ -220,7 +221,6 @@ cd*         at scsibus?
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter ports
 
-pseudo-device  rd              1       # Ram disk.
 pseudo-device  bio             1       # ioctl multiplexing device
 
 option         BOOT_CONFIG     # add support for boot -c
Index: arch/sgi/conf/RAMDISK-IP30
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sgi/conf/RAMDISK-IP30,v
retrieving revision 1.21
diff -u -p -r1.21 RAMDISK-IP30
--- arch/sgi/conf/RAMDISK-IP30  24 May 2011 20:27:11 -0000      1.21
+++ arch/sgi/conf/RAMDISK-IP30  19 Jun 2011 06:59:51 -0000
@@ -29,7 +29,6 @@ option                INET6           # IPv6 (needs INET)
 
 # RAMDISK stuff
 option         MINIROOTSIZE=10240
-option         RAMDISK_HOOKS
 
 # Define what targets to support
 option         TGT_OCTANE      # Octane, Octane 2
@@ -40,6 +39,8 @@ option                CPU_R10000      # R10000/R12000/R1400
 # Specify storage configuration using ramdisk
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 # Definition of system
 #
@@ -213,7 +214,6 @@ cd*         at scsibus?
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter ports
 
-pseudo-device  rd              1       # Ram disk.
 pseudo-device  bio             1       # ioctl multiplexing device
 
 option         BOOT_CONFIG     # add support for boot -c
Index: arch/sgi/conf/RAMDISK-IP32
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sgi/conf/RAMDISK-IP32,v
retrieving revision 1.17
diff -u -p -r1.17 RAMDISK-IP32
--- arch/sgi/conf/RAMDISK-IP32  24 May 2011 20:27:11 -0000      1.17
+++ arch/sgi/conf/RAMDISK-IP32  19 Jun 2011 06:59:51 -0000
@@ -29,7 +29,6 @@ option                INET6           # IPv6 (needs INET)
 
 # RAMDISK stuff
 option         MINIROOTSIZE=10240
-option         RAMDISK_HOOKS
 
 # Define what targets to support
 option         TGT_O2          # O2, O2+
@@ -41,6 +40,8 @@ option                CPU_R10000      # R10000/R12000/R1400
 # Specify storage configuration using ramdisk
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 #
 # Definition of system
 #
@@ -204,7 +205,6 @@ cd*         at scsibus?
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter ports
 
-pseudo-device  rd              1       # Ram disk.
 pseudo-device  bio             1       # ioctl multiplexing device
 
 option         BOOT_CONFIG     # add support for boot -c
Index: arch/socppc/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/socppc/conf/RAMDISK,v
retrieving revision 1.8
diff -u -p -r1.8 RAMDISK
--- arch/socppc/conf/RAMDISK    3 Mar 2010 22:19:40 -0000       1.8
+++ arch/socppc/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -19,6 +19,8 @@ option                DDB             # kernel debugger
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 mainbus0       at root
 cpu0           at mainbus0
 obio0          at mainbus0
@@ -82,10 +84,8 @@ athn*                at pci?         # Atheros AR9k (802.11a/
 
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
-pseudo-device  rd      1       # ram disk
 
 option         BOOT_CONFIG     # boot-time kernel config
 
 # RAMDISK stuff
 option          MINIROOTSIZE=8192
-option          RAMDISK_HOOKS
Index: arch/sparc/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sparc/conf/RAMDISK,v
retrieving revision 1.71
diff -u -p -r1.71 RAMDISK
--- arch/sparc/conf/RAMDISK     10 Jul 2010 19:32:20 -0000      1.71
+++ arch/sparc/conf/RAMDISK     19 Jun 2011 06:59:51 -0000
@@ -8,7 +8,6 @@ machine         sparc
 maxusers       2
 
 # the size for MINIROOTSIZE must insure: 16384+size(bsd) < RELOC(boot,bootxx)
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=4000
 
 #option                DDB             # need this to see what's happening
@@ -47,6 +46,8 @@ option                WSEMUL_NO_VT100 # do not provide
 # Generic swap; second partition of root disk or network.
 config         bsd     root on rd0a
 
+rd0    at root
+
 # Main bus and CPU .. all systems.
 mainbus0 at root
 cpu0   at mainbus0
@@ -328,7 +329,6 @@ fdc0        at mainbus0                             # sun4c 
controller
 fdc0   at obio0                                # sun4m controller
 fd*    at fdc0                                 # the drive itself
 
-pseudo-device  rd      2
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
 #pseudo-device pty     4       # pseudo-terminals
Index: arch/sparc64/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sparc64/conf/RAMDISK,v
retrieving revision 1.100
diff -u -p -r1.100 RAMDISK
--- arch/sparc64/conf/RAMDISK   24 May 2011 20:27:11 -0000      1.100
+++ arch/sparc64/conf/RAMDISK   19 Jun 2011 06:59:51 -0000
@@ -6,7 +6,6 @@ machine         sparc64
 # maxusers means mostly "let's get small" in terms of kernel malloc's
 maxusers       2
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=6144
 
 option         SUN4US
@@ -39,6 +38,8 @@ option                WSEMUL_DUMB
 # Generic swap; second partition of root disk or network.
 config         bsd     root on rd0a
 
+rd0    at root
+
 # Main bus and CPU .. all systems.
 mainbus0 at root
 cpu0   at mainbus0
@@ -325,7 +326,6 @@ wsdisplay* at pcons?
 ## PROM clock -- if all else failse
 prtc0  at mainbus0
 
-pseudo-device  rd      2       # ramdisk
 pseudo-device  loop    1       # network loopback
 pseudo-device  bpfilter 1      # packet filter
 pseudo-device  vlan            # IEEE 802.1Q VLAN 
Index: arch/sparc64/conf/RAMDISKU1
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sparc64/conf/RAMDISKU1,v
retrieving revision 1.20
diff -u -p -r1.20 RAMDISKU1
--- arch/sparc64/conf/RAMDISKU1 12 Jul 2009 19:17:50 -0000      1.20
+++ arch/sparc64/conf/RAMDISKU1 19 Jun 2011 06:59:51 -0000
@@ -6,7 +6,6 @@ machine         sparc64
 # maxusers means mostly "let's get small" in terms of kernel malloc's
 maxusers       2
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=6144
 
 #option                DDB             # need this to see what's happening
@@ -28,6 +27,8 @@ option                WSEMUL_NO_VT100 # do not provide
 # Generic swap; second partition of root disk or network.
 config         bsd     root on rd0a
 
+rd0    at root
+
 # Main bus and CPU .. all systems.
 mainbus0 at root
 cpu0   at mainbus0
@@ -113,5 +114,4 @@ sbus*               at xbox?
 ## PROM console driver -- if all else fails
 pcons0 at mainbus0                     # PROM console
 
-pseudo-device  rd      2       # ramdisk
 pseudo-device  loop    1       # network loopback
Index: arch/sparc64/conf/RAMDISKU5
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/sparc64/conf/RAMDISKU5,v
retrieving revision 1.16
diff -u -p -r1.16 RAMDISKU5
--- arch/sparc64/conf/RAMDISKU5 24 Jun 2009 11:38:40 -0000      1.16
+++ arch/sparc64/conf/RAMDISKU5 19 Jun 2011 06:59:51 -0000
@@ -6,7 +6,6 @@ machine         sparc64
 # maxusers means mostly "let's get small" in terms of kernel malloc's
 maxusers       2
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=6144
 
 #option                DDB             # need this to see what's happening
@@ -28,6 +27,8 @@ option                WSEMUL_NO_VT100 # do not provide
 # Generic swap; second partition of root disk or network.
 config         bsd     root on rd0a
 
+rd0    at root
+
 # Main bus and CPU .. all systems.
 mainbus0 at root
 cpu0   at mainbus0
@@ -115,5 +116,4 @@ wsdisplay*  at raptor?
 vgafb*         at pci?
 wsdisplay*     at vgafb?
 
-pseudo-device  rd      2       # ramdisk
 pseudo-device  loop    1       # network loopback
Index: arch/vax/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/vax/conf/RAMDISK,v
retrieving revision 1.33
diff -u -p -r1.33 RAMDISK
--- arch/vax/conf/RAMDISK       3 Jul 2010 03:59:17 -0000       1.33
+++ arch/vax/conf/RAMDISK       19 Jun 2011 06:59:51 -0000
@@ -2,7 +2,6 @@
 
 machine                vax                     # machine type
 
-option         RAMDISK_HOOKS
 option         MINIROOTSIZE=3072
 
 # Here are all different supported CPU types listed.
@@ -42,6 +41,8 @@ option                BOOT_CONFIG     # boot-time kernel c
 
 config         bsd     root on rd0a swap on rd0b       # and sd0b
 
+rd0    at root
+
 # Old compat stuff; needed to run 4.3BSD Reno programs.
 #option                COMPAT_VAX1K    # Must be present to run pre-1.4 
binaries.
 
@@ -178,5 +179,4 @@ wskbd*              at lkkbd?
 
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ramdisk
 
Index: arch/zaurus/conf/RAMDISK
===================================================================
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/arch/zaurus/conf/RAMDISK,v
retrieving revision 1.41
diff -u -p -r1.41 RAMDISK
--- arch/zaurus/conf/RAMDISK    3 Jul 2010 03:59:17 -0000       1.41
+++ arch/zaurus/conf/RAMDISK    19 Jun 2011 06:59:51 -0000
@@ -38,6 +38,8 @@ makeoptions   CPUFLAGS="-mcpu=xscale"
 
 config         bsd     root on rd0a swap on rd0b
 
+rd0    at root
+
 # The main bus device
 mainbus0       at root
 cpu0           at mainbus?
@@ -167,11 +169,9 @@ pseudo-device      wsmux           2       # mouse & 
keyboar
 #pseudo-device crypto          1
 pseudo-device  loop            1       # network loopback
 pseudo-device  bpfilter        1       # packet filter
-pseudo-device  rd              1       # ram disk
 pseudo-device  bio             1       # ioctl multiplexing device
 
 options        BOOT_CONFIG     # boot-time kernel config
 
 # RAMDISK stuff
 options        MINIROOTSIZE=5120
-options        RAMDISK_HOOKS

Reply via email to