diff options
author | dim <dim@FreeBSD.org> | 2012-08-13 21:04:01 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2012-08-13 21:04:01 +0000 |
commit | 09a614af9c9c7f3f8f7c1cabbdfc5ffa704835d1 (patch) | |
tree | f8cfcefc551ffb16e84986549e02c03fdde61ec7 /sys/boot/i386 | |
parent | 1c5f3b6a9fa142516befd3b82fff6e202e95b6bd (diff) | |
download | FreeBSD-src-09a614af9c9c7f3f8f7c1cabbdfc5ffa704835d1.zip FreeBSD-src-09a614af9c9c7f3f8f7c1cabbdfc5ffa704835d1.tar.gz |
After r239066, reinitialize v86.ctl and v86.addr for int 13 EDD probing
in sys/boot/i386/libi386/biosdisk.c. Otherwise, when DISK_DEBUG is
enabled, the DEBUG() macros will clobber those fields, and cause the
probing to always fail mysteriously when debugging is enabled.
Diffstat (limited to 'sys/boot/i386')
-rw-r--r-- | sys/boot/i386/libi386/biosdisk.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/boot/i386/libi386/biosdisk.c b/sys/boot/i386/libi386/biosdisk.c index 1d60f10..53e7e6a 100644 --- a/sys/boot/i386/libi386/biosdisk.c +++ b/sys/boot/i386/libi386/biosdisk.c @@ -215,6 +215,8 @@ bd_int13probe(struct bdinfo *bd) bd->bd_hds, bd->bd_sec); /* Determine if we can use EDD with this device. */ + v86.ctl = V86_FLAGS; + v86.addr = 0x13; v86.eax = 0x4100; v86.edx = bd->bd_unit; v86.ebx = 0x55aa; |