[arch-releng] [PATCH] [archiso] Workaround broken BIOS for ISOLINUX
Avoiding different issues like instant reboot or error messages. This ensure that isolinux.bin is located on the most low extent possible (LBA 34) just after boot.cat (LBA 33). Directory listing of /ISOLINUX/ d--------- 0 0 0 2048 Nov 25 2013 [ 21 02] . d--------- 0 0 0 2048 Nov 25 2013 [ 19 02] .. ---------- 0 0 0 2048 Nov 25 2013 [ 33 00] BOOT.CAT;1 ---------- 0 0 0 38912 Nov 25 2013 [ 34 00] ISOLINUX.BIN;1 More details at http://www.syslinux.org/archives/2013-November/021169.html Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- archiso/mkarchiso | 1 + 1 file changed, 1 insertion(+) diff --git a/archiso/mkarchiso b/archiso/mkarchiso index 9655167..434ca1f 100755 --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -409,6 +409,7 @@ command_iso () { -no-emul-boot -boot-load-size 4 -boot-info-table \ -isohybrid-mbr ${work_dir}/iso/isolinux/isohdpfx.bin \ ${_iso_efi_boot_args} \ + --sort-weight 1 isolinux/isolinux.bin \ -output "${out_dir}/${img_name}" \ "${work_dir}/iso/" _msg_info "Done! | $(ls -sh ${out_dir}/${img_name})" -- 1.8.4.2
On 11/25/2013 05:41 PM, Gerardo Exequiel Pozzi wrote:
Avoiding different issues like instant reboot or error messages.
This ensure that isolinux.bin is located on the most low extent possible (LBA 34) just after boot.cat (LBA 33).
Directory listing of /ISOLINUX/ d--------- 0 0 0 2048 Nov 25 2013 [ 21 02] . d--------- 0 0 0 2048 Nov 25 2013 [ 19 02] .. ---------- 0 0 0 2048 Nov 25 2013 [ 33 00] BOOT.CAT;1 ---------- 0 0 0 38912 Nov 25 2013 [ 34 00] ISOLINUX.BIN;1
More details at http://www.syslinux.org/archives/2013-November/021169.html
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- archiso/mkarchiso | 1 + 1 file changed, 1 insertion(+)
diff --git a/archiso/mkarchiso b/archiso/mkarchiso index 9655167..434ca1f 100755 --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -409,6 +409,7 @@ command_iso () { -no-emul-boot -boot-load-size 4 -boot-info-table \ -isohybrid-mbr ${work_dir}/iso/isolinux/isohdpfx.bin \ ${_iso_efi_boot_args} \ + --sort-weight 1 isolinux/isolinux.bin \ -output "${out_dir}/${img_name}" \ "${work_dir}/iso/" _msg_info "Done! | $(ls -sh ${out_dir}/${img_name})"
OK, finally found the offending commit after many many tests[#1] burning differents ISOs. The cause and bug is trivially fixed: ---- diff --git a/core/isolinux.asm b/core/isolinux.asm index bd4e9556922d..c4db4133e274 100644 --- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) call getlinsec pop eax pop cx - mov dx,cx + movzx edx,cx pop bp pop bx ---- @Tobias: Could you rebuild syslinux with patch [#2] included? Thanks! [#1] http://www.syslinux.org/archives/2013-November/021187.html [#2] http://www.syslinux.org/archives/2013-November/021189.html -- Gerardo Exequiel Pozzi \cos^2\alpha + \sin^2\alpha = 1
Am 26.11.2013 16:05, schrieb Gerardo Exequiel Pozzi:
The cause and bug is trivially fixed: ---- diff --git a/core/isolinux.asm b/core/isolinux.asm index bd4e9556922d..c4db4133e274 100644 --- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) call getlinsec pop eax pop cx - mov dx,cx + movzx edx,cx pop bp pop bx ----
@Tobias: Could you rebuild syslinux with patch [#2] included? Thanks!
I don't think we rebuild the asm code in our syslinux package, as upstream doesn't recommend it. Instead, we only build the syslinux installer and use the shipped binaries.
Am 26.11.2013 16:15, schrieb Thomas Bächler:
Am 26.11.2013 16:05, schrieb Gerardo Exequiel Pozzi:
The cause and bug is trivially fixed: ---- diff --git a/core/isolinux.asm b/core/isolinux.asm index bd4e9556922d..c4db4133e274 100644 --- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) call getlinsec pop eax pop cx - mov dx,cx + movzx edx,cx pop bp pop bx ----
@Tobias: Could you rebuild syslinux with patch [#2] included? Thanks!
I don't think we rebuild the asm code in our syslinux package, as upstream doesn't recommend it. Instead, we only build the syslinux installer and use the shipped binaries.
Oh, it seems that was reverted. So this should work fine.
On 11/26/2013 12:17 PM, Thomas Bächler wrote:
Am 26.11.2013 16:15, schrieb Thomas Bächler:
Am 26.11.2013 16:05, schrieb Gerardo Exequiel Pozzi:
The cause and bug is trivially fixed: ---- diff --git a/core/isolinux.asm b/core/isolinux.asm index bd4e9556922d..c4db4133e274 100644 --- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) call getlinsec pop eax pop cx - mov dx,cx + movzx edx,cx pop bp pop bx ----
@Tobias: Could you rebuild syslinux with patch [#2] included? Thanks!
I don't think we rebuild the asm code in our syslinux package, as upstream doesn't recommend it. Instead, we only build the syslinux installer and use the shipped binaries.
Oh, it seems that was reverted. So this should work fine.
Yes. Can be great if the new pkg goes to [core] before next 2013.12 ;) Thanks -- Gerardo Exequiel Pozzi \cos^2\alpha + \sin^2\alpha = 1
Am 26.11.2013 22:54, schrieb Gerardo Exequiel Pozzi:
Yes. Can be great if the new pkg goes to [core] before next 2013.12 ;)
You can fix the package yourself and put it to [testing].
On 11/27/2013 07:55 AM, Thomas Bächler wrote:
Am 26.11.2013 22:54, schrieb Gerardo Exequiel Pozzi:
Yes. Can be great if the new pkg goes to [core] before next 2013.12 ;)
You can fix the package yourself and put it to [testing].
OK. Thanks for the authorization, I will consider this for next time ;) Have a nice day! -- Gerardo Exequiel Pozzi \cos^2\alpha + \sin^2\alpha = 1
Am 28.11.2013 06:06, schrieb Gerardo Exequiel Pozzi:
On 11/27/2013 07:55 AM, Thomas Bächler wrote:
Am 26.11.2013 22:54, schrieb Gerardo Exequiel Pozzi:
Yes. Can be great if the new pkg goes to [core] before next 2013.12 ;)
You can fix the package yourself and put it to [testing].
OK. Thanks for the authorization, I will consider this for next time ;)
You had permissions to do that all along.
participants (2)
-
Gerardo Exequiel Pozzi
-
Thomas Bächler