aboutsummaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2012-10-05 15:02:30 +0100
committerMichael Brown <mcb30@ipxe.org>2012-10-05 15:04:27 +0100
commitfcdfe817644c601f40a5435c03f16a46b5264ab1 (patch)
tree436834bc18b675a8acc6d908ad18d2c512e21c30 /src/arch
parentbab0a4c1ce5dc0485c35dcda9338dc92c1802121 (diff)
downloadipxe-fcdfe817644c601f40a5435c03f16a46b5264ab1.zip
ipxe-fcdfe817644c601f40a5435c03f16a46b5264ab1.tar.gz
ipxe-fcdfe817644c601f40a5435c03f16a46b5264ab1.tar.bz2
[int13] Do not zero %edx when jumping to a boot sector
Commit 73eb3f1 ("[int13] Zero all possible registers when jumping to a boot sector") introduced a regression preventing the SAN-booting of boot sectors which rely upon %dl containing the correct drive number (such as most CD-ROM boot sectors). Fix by not zeroing %edx. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/image/bootsector.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arch/i386/image/bootsector.c b/src/arch/i386/image/bootsector.c
index faf21c6..ab3cf94 100644
--- a/src/arch/i386/image/bootsector.c
+++ b/src/arch/i386/image/bootsector.c
@@ -87,7 +87,7 @@ int call_bootsector ( unsigned int segment, unsigned int offset,
"xorl %%eax, %%eax\n\t"
"xorl %%ebx, %%ebx\n\t"
"xorl %%ecx, %%ecx\n\t"
- "xorl %%edx, %%edx\n\t"
+ /* %edx contains drive number */
"xorl %%esi, %%esi\n\t"
"xorl %%edi, %%edi\n\t"
"xorl %%ebp, %%ebp\n\t"