When setupldr.efi file from Windows XP 64-Bit Edition Version 2003 (Itanium) is launched with screen bski -noconsole ski-efi setupldr.efi command, only loading setupldr.efi... message appears on screen, suggesting hang inside of ski-efi.
Such hang happens because of incorrect parameter passed into memset function, on this line:
|
memset((char *)__pa(sec_hdr->virtual_address + image_base) + sec_hdr->raw_data_size, 0, |
|
sec_hdr->virtual_size - sec_hdr->raw_data_size); |
However, with such problem fixed by adding
if (sec_hdr->virtual_size > sec_hdr->raw_data_size) code before this line, loading still fails, this time with
Unknown relocation type message.
There may be more problems with loading of this file, but at least these two should be easy to fix.
When
setupldr.efifile from Windows XP 64-Bit Edition Version 2003 (Itanium) is launched withscreen bski -noconsole ski-efi setupldr.eficommand, onlyloading setupldr.efi...message appears on screen, suggesting hang inside ofski-efi.Such hang happens because of incorrect parameter passed into
memsetfunction, on this line:ski/ski-efi/bootloader.c
Lines 231 to 232 in 6984f89
However, with such problem fixed by adding
if (sec_hdr->virtual_size > sec_hdr->raw_data_size)code before this line, loading still fails, this time withUnknown relocation typemessage.There may be more problems with loading of this file, but at least these two should be easy to fix.