[arch-commits] Commit in qemu/trunk (PKGBUILD allow_elf64.patch)

Anatol Pomozov anatolik at archlinux.org
Fri Jun 9 14:16:40 UTC 2017


    Date: Friday, June 9, 2017 @ 14:16:39
  Author: anatolik
Revision: 298489

Do not restrict elf64 binaries usage with -kernel flag

Added:
  qemu/trunk/allow_elf64.patch
Modified:
  qemu/trunk/PKGBUILD

-------------------+
 PKGBUILD          |    8 ++++++--
 allow_elf64.patch |   27 +++++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-06-09 14:03:23 UTC (rev 298488)
+++ PKGBUILD	2017-06-09 14:16:39 UTC (rev 298489)
@@ -18,12 +18,14 @@
 source=("$url/download/${pkgname}-${pkgver}.tar.bz2"{,.sig}
         qemu.sysusers
         qemu-ga.service
-        65-kvm.rules)
+        65-kvm.rules
+        allow_elf64.patch)
 sha256sums=('00bfb217b1bb03c7a6c3261b819cfccbfb5a58e3e2ceff546327d271773c6c14'
             'SKIP'
             'dd43e2ef062b071a0b9d0d5ea54737f41600ca8a84a8aefbebb1ff09f978acfb'
             'c39bcde4a09165e64419fd2033b3532378bba84d509d39e2d51694d44c1f8d88'
-            '60dcde5002c7c0b983952746e6fb2cf06d6c5b425d64f340f819356e561e7fc7')
+            '60dcde5002c7c0b983952746e6fb2cf06d6c5b425d64f340f819356e561e7fc7'
+            '13a6d9e678bdc9e1f051006cfd0555f5a80582368f54c8a1bb5a78ece3832ac4')
 validpgpkeys=('CEACC9E15534EBABB82D3FA03353C9CEF108B584')
 
 case $CARCH in
@@ -37,6 +39,8 @@
 
   cd ${pkgname}-${pkgver}
   sed -i 's/vte-2\.90/vte-2.91/g' configure
+
+  patch -p1 < ../allow_elf64.patch
 }
 
 build() {

Added: allow_elf64.patch
===================================================================
--- allow_elf64.patch	                        (rev 0)
+++ allow_elf64.patch	2017-06-09 14:16:39 UTC (rev 298489)
@@ -0,0 +1,27 @@
+commit 3c72765ec760a51f0e879dc792be82c93141e318
+Author: Anatol Pomozov <anatol.pomozov at gmail.com>
+Date:   Tue Jun 6 20:07:03 2017 -0700
+
+    Remove restriction that prevents bootimg elf64 images
+    
+    It is possible to create a 64 bit elf image that has valid multiboot header.
+    qemu should be able to boot such images.
+    
+    Signed-off-by: Anatol Pomozov <anatol.pomozov at gmail.com>
+
+diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c
+index 663f35a658..cf1b4f5fb3 100644
+--- a/hw/i386/multiboot.c
++++ b/hw/i386/multiboot.c
+@@ -192,11 +192,6 @@ int load_multiboot(FWCfgState *fw_cfg,
+         int kernel_size;
+         fclose(f);
+ 
+-        if (((struct elf64_hdr*)header)->e_machine == EM_X86_64) {
+-            fprintf(stderr, "Cannot load x86-64 image, give a 32bit one.\n");
+-            exit(1);
+-        }
+-
+         kernel_size = load_elf(kernel_filename, NULL, NULL, &elf_entry,
+                                &elf_low, &elf_high, 0, I386_ELF_MACHINE,
+                                0, 0);



More information about the arch-commits mailing list