# HG changeset patch # User Pascal Bellard # Date 1527948786 -7200 # Node ID 02ed2446b48042173e724709f3cfec28c2681d03 # Parent 99a7a1e955d40c6c64d645ad6a8cf402eb136681 Do not use efi shell (again) diff -r 99a7a1e955d4 -r 02ed2446b480 linux/stuff/linux-efi.u --- a/linux/stuff/linux-efi.u Sat Jun 02 13:53:27 2018 +0200 +++ b/linux/stuff/linux-efi.u Sat Jun 02 16:13:06 2018 +0200 @@ -103,20 +103,9 @@ if (status != EFI_SUCCESS) goto close_handles; -@@ -433,8 +500,6 @@ - } +@@ -456,28 +523,11 @@ - if (file_size_total) { -- unsigned long addr; -- - /* - * Multiple files need to be at consecutive addresses in memory, - * so allocate enough memory for all the files. This is used -@@ -454,30 +519,10 @@ - goto free_file_total; - } - -- addr = file_addr; + addr = file_addr; for (j = 0; j < nr_files; j++) { - unsigned long size; - @@ -140,13 +129,15 @@ - } - - efi_file_close(files[j].handle); -+ status = read_efi_file(sys_table_arg, &files[j], file_addr, files[j].size); ++ status = read_efi_file(sys_table_arg, &files[j], addr, files[j].size); + if (status != EFI_SUCCESS) + goto free_file_total; ++ addr += files[j].size + 3; ++ addr &= 0xFFFFFFFCUL; } } -@@ -649,6 +694,30 @@ +@@ -649,6 +699,30 @@ } if (!options_chars) { @@ -177,7 +168,7 @@ /* No command line options, so return empty string*/ options = &zero; } -@@ -665,6 +734,7 @@ +@@ -665,6 +739,7 @@ s1 = efi_utf16_to_utf8(s1, s2, options_chars); *s1 = '\0'; diff -r 99a7a1e955d4 -r 02ed2446b480 syslinux/stuff/tools/isohybrid.sh --- a/syslinux/stuff/tools/isohybrid.sh Sat Jun 02 13:53:27 2018 +0200 +++ b/syslinux/stuff/tools/isohybrid.sh Sat Jun 02 16:13:06 2018 +0200 @@ -187,16 +187,17 @@ store32 440 $id store32 508 0xAA550000 e=$(( ((${entry:-1} -1) % 4) *16 +446)) - store32 $e 0x10080 esect=$(( ($sectors + ((($cylinders -1) & 0x300) >>2)) <<16)) ecyl=$(( (($cylinders -1) & 0xff) <<24)) epart=$(((($heads - 1) <<8) +$esect +$ecyl)) - store32 $(($e + 4)) $(($partype + $epart)) - store32 $(($e + 8)) $offset sectorcount=$(($cylinders * $heads * $sectors)) - store32 $(($e + 12)) $sectorcount - if [ -n "$efi_ofs" ]; then - lastlba=$(($sectorcount -1)) + lastlba=$(($sectorcount -1)) + if [ -z "$efi_ofs" ]; then + store32 $e 0x10080 + store32 $(($e + 4)) $(($partype + $epart)) + store32 $(($e + 8)) $offset + store32 $(($e + 12)) $sectorcount + else [ $(read16 0 1024) -eq 35615 -a $(read16 11 0) -ne 35615 ] && ddq bs=512 conv=notrunc skip=2 seek=44 count=20 if=$iso of=$iso store32 $((446)) $((0x10000)) @@ -244,8 +245,8 @@ abort "invalid boot catalog." efi_ofs= if [ $(read8 $cat 65) -eq 239 ]; then - [ ${entry:-2} != 2 ] && echo "$iso: efi boot ignore --entry $entry" - entry=2 + [ ${entry:-1} != 1 ] && echo "$iso: efi boot ignore --entry $entry" + entry=1 partype=0 efi_ofs=$((4*$(read32 $cat 104))) efi_len=$(($(read16 $(($efi_ofs/4)) 19))) diff -r 99a7a1e955d4 -r 02ed2446b480 tazlito/receipt --- a/tazlito/receipt Sat Jun 02 13:53:27 2018 +0200 +++ b/tazlito/receipt Sat Jun 02 16:13:06 2018 +0200 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="tazlito" -VERSION="504" +VERSION="507" CATEGORY="base-system" SHORT_DESC="SliTaz Live Tool." MAINTAINER="pascal.bellard@slitaz.org"