summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-11-03 21:47:55 +0000
committerphk <phk@FreeBSD.org>2002-11-03 21:47:55 +0000
commitb6df9a9c87f29b7c0c4de47b53f1ada9c8769c51 (patch)
tree4978b89d6fe9dbfc8f102566c72f030b1ccfee59 /sys/boot
parentc558e52c472821cf4bf191dab97502d166c0b9ed (diff)
downloadFreeBSD-src-b6df9a9c87f29b7c0c4de47b53f1ada9c8769c51.zip
FreeBSD-src-b6df9a9c87f29b7c0c4de47b53f1ada9c8769c51.tar.gz
Correctly recognize both bogus and genuine BSD disklabels.
Don't expect me to participate in a discussion which is which. Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/i386/libi386/biosdisk.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/boot/i386/libi386/biosdisk.c b/sys/boot/i386/libi386/biosdisk.c
index 886bcb9..67c0f71 100644
--- a/sys/boot/i386/libi386/biosdisk.c
+++ b/sys/boot/i386/libi386/biosdisk.c
@@ -614,7 +614,10 @@ bd_opendisk(struct open_disk **odp, struct i386_devdesc *dev)
DEBUG("warning, partition marked as unused");
#endif
- od->od_boff = lp->d_partitions[dev->d_kind.biosdisk.partition].p_offset;
+ od->od_boff =
+ lp->d_partitions[dev->d_kind.biosdisk.partition].p_offset -
+ lp->d_partitions[RAW_PART].p_offset +
+ sector;
}
out:
OpenPOWER on IntegriCloud