Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(79)

Unified Diff: qemu/qemu-2.3.0.patch_arm

Issue 1105003003: Remove qemu tarballs (Closed) Base URL: https://chromium.googlesource.com/native_client/src/third_party.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « qemu/qemu-1.0.1.tar.gz ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: qemu/qemu-2.3.0.patch_arm
diff --git a/qemu/qemu-2.3.0.patch_arm b/qemu/qemu-2.3.0.patch_arm
new file mode 100644
index 0000000000000000000000000000000000000000..60d6fe6e77324c35cb444445aa3b79e60ae7184a
--- /dev/null
+++ b/qemu/qemu-2.3.0.patch_arm
@@ -0,0 +1,87 @@
+diff -ur qemu-2.3.0/linux-user/elfload.c qemu-2.3.0.patched/linux-user/elfload.c
+--- qemu-2.3.0/linux-user/elfload.c 2015-04-27 07:08:25.000000000 -0700
++++ qemu-2.3.0.patched/linux-user/elfload.c 2015-04-28 12:02:11.459311636 -0700
+@@ -1304,7 +1304,7 @@
+ #ifdef USE_ELF_CORE_DUMP
+ static int elf_core_dump(int, const CPUArchState *);
+ #endif /* USE_ELF_CORE_DUMP */
+-static void load_symbols(struct elfhdr *hdr, int fd, abi_ulong load_bias);
++void load_symbols(struct elfhdr *hdr, int fd, abi_ulong load_bias);
+
+ /* Verify the portions of EHDR within E_IDENT for the target.
+ This can be performed before bswapping the entire header. */
+@@ -2062,7 +2062,7 @@
+ }
+
+ /* Best attempt to load symbols from this ELF object. */
+-static void load_symbols(struct elfhdr *hdr, int fd, abi_ulong load_bias)
++void load_symbols(struct elfhdr *hdr, int fd, abi_ulong load_bias)
+ {
+ int i, shnum, nsyms, sym_idx = 0, str_idx = 0;
+ struct elf_shdr *shdr;
+Only in qemu-2.3.0.patched/linux-user: elfload.c.orig
+diff -ur qemu-2.3.0/linux-user/main.c qemu-2.3.0.patched/linux-user/main.c
+--- qemu-2.3.0/linux-user/main.c 2015-04-27 07:08:25.000000000 -0700
++++ qemu-2.3.0.patched/linux-user/main.c 2015-04-28 12:02:11.459311636 -0700
+@@ -3650,6 +3650,38 @@
+ exit(0);
+ }
+
++// @LOCAL-MOD-START
++// zero initialized and zero terminated
++#define NACL_ELF_MAX 10
++struct syminfo* extra_syminfo[NACL_ELF_MAX + 1];
++#include "elf.h"
++void load_symbols(struct elf32_hdr *hdr, int fd, abi_ulong load_bias);
++
++static void handle_arg_nacl_extra_elf(const char *arg) {
++ int i;
++ for (i=0; i< NACL_ELF_MAX; ++i) {
++ if (extra_syminfo[i] == 0) break;
++ }
++
++ if (i >= NACL_ELF_MAX) {
++ printf("ERROR: too many extra symbol files\n");
++ }
++
++ printf("adding symbols from %s\n", arg);
++
++ struct elf32_hdr elf_ex;
++ int fd;
++ fd = open(arg, O_RDONLY);
++ if (fd <= 0) {
++ printf("ERROR: opening secondary exe %s\n", filename);
++ return;
++ }
++
++ read(fd, &elf_ex, sizeof elf_ex);
++ load_symbols(&elf_ex, fd, 0);
++}
++
++
+ struct qemu_argument {
+ const char *argv;
+ const char *env;
+@@ -3699,6 +3731,8 @@
+ "", "Seed for pseudo-random number generator"},
+ {"version", "QEMU_VERSION", false, handle_arg_version,
+ "", "display version information and exit"},
++ {"nacl_extra_elf", "", true, handle_arg_nacl_extra_elf,
++ "", ""},
+ {NULL, NULL, false, NULL, NULL, NULL}
+ };
+
+@@ -3883,6 +3917,12 @@
+
+ optind = parse_args(argc, argv);
+
++ // @LOCALMOD-START
++ if (qemu_loglevel_mask(CPU_LOG_EXEC)) {
++ printf("qemu with NACL mods\n");
++ }
++ // @LOCALMOD-END
++
+ /* Zero out regs */
+ memset(regs, 0, sizeof(struct target_pt_regs));
+
+Only in qemu-2.3.0.patched/linux-user: main.c.orig
« no previous file with comments | « qemu/qemu-1.0.1.tar.gz ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698