wok diff linux/stuff/linux-efi.u @ rev 20334

Do not use efi shell (again)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat Jun 02 16:13:06 2018 +0200 (2018-06-02)
parents 99a7a1e955d4
children 5546d3d1350b
line diff
     1.1 --- a/linux/stuff/linux-efi.u	Sat Jun 02 13:53:27 2018 +0200
     1.2 +++ b/linux/stuff/linux-efi.u	Sat Jun 02 16:13:06 2018 +0200
     1.3 @@ -103,20 +103,9 @@
     1.4   		if (status != EFI_SUCCESS)
     1.5   			goto close_handles;
     1.6   
     1.7 -@@ -433,8 +500,6 @@
     1.8 - 	}
     1.9 +@@ -456,28 +523,11 @@
    1.10   
    1.11 - 	if (file_size_total) {
    1.12 --		unsigned long addr;
    1.13 --
    1.14 - 		/*
    1.15 - 		 * Multiple files need to be at consecutive addresses in memory,
    1.16 - 		 * so allocate enough memory for all the files.  This is used
    1.17 -@@ -454,30 +519,10 @@
    1.18 - 			goto free_file_total;
    1.19 - 		}
    1.20 - 
    1.21 --		addr = file_addr;
    1.22 + 		addr = file_addr;
    1.23   		for (j = 0; j < nr_files; j++) {
    1.24  -			unsigned long size;
    1.25  -
    1.26 @@ -140,13 +129,15 @@
    1.27  -			}
    1.28  -
    1.29  -			efi_file_close(files[j].handle);
    1.30 -+			status = read_efi_file(sys_table_arg, &files[j], file_addr, files[j].size);
    1.31 ++			status = read_efi_file(sys_table_arg, &files[j], addr, files[j].size);
    1.32  +			if (status != EFI_SUCCESS)
    1.33  +				goto free_file_total;
    1.34 ++			addr += files[j].size + 3;
    1.35 ++			addr &= 0xFFFFFFFCUL;
    1.36   		}
    1.37   
    1.38   	}
    1.39 -@@ -649,6 +694,30 @@
    1.40 +@@ -649,6 +699,30 @@
    1.41   	}
    1.42   
    1.43   	if (!options_chars) {
    1.44 @@ -177,7 +168,7 @@
    1.45   		/* No command line options, so return empty string*/
    1.46   		options = &zero;
    1.47   	}
    1.48 -@@ -665,6 +734,7 @@
    1.49 +@@ -665,6 +739,7 @@
    1.50   	s1 = efi_utf16_to_utf8(s1, s2, options_chars);
    1.51   	*s1 = '\0';
    1.52