[syslinux] Crash with core32 (syslinux-3.81-pre12-68-g4a211f6)
Sebastian Herbszt
herbszt at gmx.de
Tue May 26 12:30:15 PDT 2009
H. Peter Anvin wrote:
> Sebastian Herbszt wrote:
>> H. Peter Anvin wrote:
>>> By the way, watch out for missing dependencies. I just checked in a
>>> dependency fix.
>>
>> Still no go.
>> core_syscall.rm_return from pxelinux.lst:
>>
>> 9237 0000A31F 66BB[94000000] <3> mov ebx,.pm_return
>> 9238 0000A325 E933FE <3> jmp enter_pm
>> ...
>> 9245 <3> .pm_return:
>> 9246 00100094 670FB736[182C] <3> movzx esi,word [word RealModeSSSP]
>>
>> Tracing in bochs gives
>>
>> 0000a31f: ( ): mov ebx, 0x000034b4 ; 66bbb4340000
>>
>
> What does "objdump -dr pxelinux.o" show for that chunk of code?
# objdump -dr pxelinux.o
objdump: 'pxelinux.o': No such file
# objdump -dr pxelinux.0
objdump: pxelinux.0: File format not recognized
# objdump -dr pxelinux.bin
objdump: pxelinux.bin: File format not recognized
# objdump -dr pxelinux.elf
<snip>
0000a310 <core_syscall.rm_return>:
a310: 2e 8b 26 mov %cs:(%esi),%esp
a313: 04 47 add $0x47,%al
a315: 66 9c pushfw
a317: 66 60 pushaw
a319: 1e push %ds
a31a: 06 push %es
a31b: 0f a0 push %fs
a31d: 0f a8 push %gs
a31f: 66 bb b4 34 mov $0x34b4,%bx
a323: 00 00 add %al,(%eax)
a325: e9 33 fe cb 2e jmp 2ecca15d <hash_nocomplete+0x11926a77>
<snip>
# ndisasm pxelinux.0
<snip>
00002710 2E8B260447 mov sp,[cs:0x4704]
00002715 669C pushfd
00002717 6660 pushad
00002719 1E push ds
0000271A 06 push es
0000271B 0FA0 push fs
0000271D 0FA8 push gs
0000271F 66BBB4340000 mov ebx,0x34b4
00002725 E933FE jmp 0x255b
<snip>
> Either nasm or ld is doing something very wrong here, and probably is
> unsupportable.
>
> -hpa
- Sebastian
More information about the Syslinux
mailing list