summaryrefslogtreecommitdiffstats
path: root/sys/amd64
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1994-03-21 14:37:01 +0000
committerache <ache@FreeBSD.org>1994-03-21 14:37:01 +0000
commite23f78c6520be979e57de6eddbd0f502a2dc85ae (patch)
tree331acbbed023c68513200e2eb06b32ffa560aaa0 /sys/amd64
parentde5a2a0539eba82512907963f35c16ab891bb20c (diff)
downloadFreeBSD-src-e23f78c6520be979e57de6eddbd0f502a2dc85ae.zip
FreeBSD-src-e23f78c6520be979e57de6eddbd0f502a2dc85ae.tar.gz
Fix for root system mounted on second floppy
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/amd64/autoconf.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/amd64/amd64/autoconf.c b/sys/amd64/amd64/autoconf.c
index 6cbd026..c55e88d 100644
--- a/sys/amd64/amd64/autoconf.c
+++ b/sys/amd64/amd64/autoconf.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)autoconf.c 7.1 (Berkeley) 5/9/91
- * $Id: autoconf.c,v 1.7 1994/01/16 02:21:56 martin Exp $
+ * $Id: autoconf.c,v 1.8 1994/01/31 23:47:24 davidg Exp $
*/
/*
@@ -134,6 +134,7 @@ u_long bootdev = 0; /* should be dev_t, but not until 32 bits */
static char devname[][2] = {
'w','d', /* 0 = wd */
's','w', /* 1 = sw */
+#define FDMAJOR 2
'f','d', /* 2 = fd */
'w','t', /* 3 = wt */
's','d', /* 4 = sd -- new SCSI system */
@@ -164,7 +165,10 @@ setroot()
adaptor = (bootdev >> B_ADAPTORSHIFT) & B_ADAPTORMASK;
part = (bootdev >> B_PARTITIONSHIFT) & B_PARTITIONMASK;
unit = (bootdev >> B_UNITSHIFT) & B_UNITMASK;
- mindev = (unit << PARTITIONSHIFT) + part;
+ if (majdev == FDMAJOR)
+ mindev = unit << 6;
+ else
+ mindev = (unit << PARTITIONSHIFT) + part;
orootdev = rootdev;
rootdev = makedev(majdev, mindev);
/*
OpenPOWER on IntegriCloud