Browse Source

[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>
tags/v1.20.1
Michael Brown 12 years ago
parent
commit
fcdfe81764
1 changed files with 1 additions and 1 deletions
  1. 1
    1
      src/arch/i386/image/bootsector.c

+ 1
- 1
src/arch/i386/image/bootsector.c View File

87
 					   "xorl %%eax, %%eax\n\t"
87
 					   "xorl %%eax, %%eax\n\t"
88
 					   "xorl %%ebx, %%ebx\n\t"
88
 					   "xorl %%ebx, %%ebx\n\t"
89
 					   "xorl %%ecx, %%ecx\n\t"
89
 					   "xorl %%ecx, %%ecx\n\t"
90
-					   "xorl %%edx, %%edx\n\t"
90
+					   /* %edx contains drive number */
91
 					   "xorl %%esi, %%esi\n\t"
91
 					   "xorl %%esi, %%esi\n\t"
92
 					   "xorl %%edi, %%edi\n\t"
92
 					   "xorl %%edi, %%edi\n\t"
93
 					   "xorl %%ebp, %%ebp\n\t"
93
 					   "xorl %%ebp, %%ebp\n\t"

Loading…
Cancel
Save