QEMU With E2K User Support
Go to file
Gerd Hoffmann 0624c7f916 e820: pass high memory too.
We have a fw_cfg entry to pass e820 entries from qemu to the firmware.
Today it's used to pass reservations only.  This patch makes qemu pass
entries for RAM too.

This allows to pass RAM sizes larger than 1TB to the firmware and it
will also allow to pass non-contignous memory ramges should we decide
to implement that some day, say for our virtual numa nodes.

Obviously this needs some extra care to not break existing firware.

SeaBIOS loads the entries and happily adds them without looking at the
type.  Which is problematic for memory below 4g as this will overwrite
reservations added for bios memory etc.  For memory above 4g it works
just fine, seabios will merge the entry derived from cmos with the one
loaded from fw_cfg.

OVMF doesn't look at the fw_cfg e820 table.
coreboot doesn't look at the fw_cfg e820 table.

Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-By: Igor Mammedov <imammedo@redhat.com>
2013-10-17 13:06:11 +02:00
audio audio: remove CONFIG_MIXEMU configure option 2013-09-24 10:29:34 +02:00
backends aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
block vmdk: Fix vmdk_parse_extents 2013-10-11 16:50:02 +02:00
bsd-user *-user: Improve documentation for lock_user function 2013-09-20 20:09:24 +04:00
default-configs default-configs: Fix A9MP and A15MP config names 2013-08-20 14:54:32 +01:00
disas disas/ppc.c: Fix little endian disassembly 2013-09-02 10:06:41 +02:00
docs Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
dtc@bc895d6d09
fpu
fsdev
gdb-xml target-arm: Add AArch64 gdbstub support 2013-09-10 19:11:28 +01:00
hw e820: pass high memory too. 2013-10-17 13:06:11 +02:00
include exec: Fix prototype of phys_mem_set_alloc and related functions 2013-10-14 08:50:34 -07:00
libcacard Merge remote-tracking branch 'stefanha/block' into staging 2013-09-23 11:53:05 -05:00
linux-headers linux-headers: update to 3.12-rc1 2013-09-20 12:38:48 +02:00
linux-user cpu: Drop cpu_model_str from CPU_COMMON 2013-10-07 11:48:47 +02:00
net net: call socket_set_fast_reuse instead of setting SO_REUSEADDR 2013-10-02 19:20:31 +02:00
pc-bios Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
pixman@97336fad32
po po: Update all *.po files 2013-08-07 12:48:00 -05:00
qapi qemu-ga: Extend 'guest-info' command to expose flag 'success-response' 2013-10-10 14:52:37 -05:00
qga qemu-ga: Extend 'guest-info' command to expose flag 'success-response' 2013-10-10 14:52:37 -05:00
qobject qdict: Extract qdict_extract_subqdict 2013-09-25 16:21:28 +02:00
qom cpu: Move cpu state syncs up into cpu_dump_state() 2013-09-20 12:37:52 +02:00
roms Update OpenBIOS images 2013-10-03 00:04:20 +01:00
scripts Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
slirp slirp: call socket_set_fast_reuse instead of setting SO_REUSEADDR 2013-10-02 19:20:31 +02:00
stubs Merge remote-tracking branch 'kiszka/queues/slirp' into staging 2013-09-17 10:01:24 -05:00
sysconfigs/target
target-alpha target-alpha: Convert to new ldst opcodes 2013-10-12 16:19:20 -07:00
target-arm Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-cris tcg: Remove stray semi-colons from target-*/helper.h 2013-10-10 11:43:37 -07:00
target-i386 Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-lm32 target: Include softmmu_exec.h where forgotten 2013-09-02 09:08:30 -07:00
target-m68k Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-microblaze tcg: Move helper registration into tcg_context_init 2013-10-10 11:43:37 -07:00
target-mips Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-moxie cpu: Drop cpu_model_str from CPU_COMMON 2013-10-07 11:48:47 +02:00
target-openrisc Merge remote-tracking branch 'jliu/or32' into staging 2013-10-14 09:15:47 -07:00
target-ppc Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-s390x exec: Fix prototype of phys_mem_set_alloc and related functions 2013-10-14 08:50:34 -07:00
target-sh4 Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-sparc Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-unicore32 Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
target-xtensa tcg: Move helper registration into tcg_context_init 2013-10-10 11:43:37 -07:00
tcg tcg-ppc64: Support new ldst opcodes 2013-10-12 16:19:20 -07:00
tests qemu-iotests: Add test for inactive L2 overlap 2013-10-11 16:50:02 +02:00
trace
ui spice-core: Use g_strdup_printf instead of snprintf 2013-09-10 11:14:08 +02:00
util blockdev: Separate ID generation from DriveInfo creation 2013-10-11 16:50:01 +02:00
.exrc
.gitignore qemu-ga: Add configure options to specify path to Windows/VSS SDK 2013-09-09 14:17:56 -05:00
.gitmodules Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
.mailmap Update mailmap 2013-09-05 09:40:31 -05:00
aio-posix.c aio / timers: Convert aio_poll to use AioContext timers' deadline 2013-08-22 19:10:28 +02:00
aio-win32.c aio-win32: replace incorrect AioHandler->opaque usage with ->e 2013-08-22 22:04:54 +02:00
arch_init.c pc,pci,virtio fixes and cleanups 2013-09-30 17:15:01 -05:00
async.c aio / timers: aio_ctx_prepare sets timeout from AioContext timers 2013-08-22 19:10:28 +02:00
balloon.c
block-migration.c migration: omit drive ref as we have bdrv_ref now 2013-09-06 15:25:08 +02:00
block.c blockdev: Don't disable COR automatically with blockdev-add 2013-10-11 16:50:02 +02:00
blockdev-nbd.c nbd: use BlockDriverState refcnt 2013-09-06 15:25:08 +02:00
blockdev.c blockdev: blockdev_init() error conversion 2013-10-11 16:50:02 +02:00
blockjob.c qapi: make use of new BlockJobType 2013-10-11 10:52:54 +02:00
bt-host.c
bt-vhci.c
Changelog Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
CODING_STYLE
configure configure: Remove CONFIG_QEMU_LDST_OPTIMIZATION 2013-10-10 11:44:26 -07:00
COPYING
COPYING.LIB
coroutine-gthread.c
coroutine-sigaltstack.c
coroutine-ucontext.c
coroutine-win32.c
cpu-exec.c cpu-exec: Also reload CPUClass *cc after longjmp return in cpu_exec() 2013-10-07 11:46:58 +02:00
cpus.c cpu: Replace qemu_for_each_cpu() 2013-09-03 12:25:55 +02:00
cputlb.c cputlb: Remove dead function tlb_update_dirty() 2013-10-07 11:48:03 +02:00
device_tree.c device_tree: Add qemu_devtree_setprop_sized_cells() utility functions 2013-07-19 12:58:46 +01:00
device-hotplug.c
disas.c disas: Implement fallback to dump object code as hex 2013-08-24 07:26:45 +02:00
dma-helpers.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
dump.c cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
exec.c exec: Fix prototype of phys_mem_set_alloc and related functions 2013-10-14 08:50:34 -07:00
gdbstub.c gdbstub: call socket_set_fast_reuse instead of setting SO_REUSEADDR 2013-10-02 19:20:31 +02:00
HACKING HACKING: Document vaddr type usage 2013-07-23 02:41:31 +02:00
hmp-commands.hx hmp: add interface hmp_snapshot_delete_blkdev_internal 2013-09-12 10:12:47 +02:00
hmp.c hmp: block-stream: fix typo 2013-09-17 11:10:47 -05:00
hmp.h hmp: add interface hmp_snapshot_delete_blkdev_internal 2013-09-12 10:12:47 +02:00
iohandler.c
ioport.c memory: Provide separate handling of unassigned io ports accesses 2013-09-05 18:11:43 +02:00
kvm-all.c Merge remote-tracking branch 'qemu-kvm/uq/master' into staging 2013-09-23 11:52:49 -05:00
kvm-stub.c kvm irqfd: support direct msimessage to irq translation 2013-09-20 12:37:52 +02:00
LICENSE LICENSE: clarify 2013-08-12 09:15:12 -05:00
main-loop.c slirp: set mainloop timeout with more precise value 2013-09-17 12:26:05 +02:00
MAINTAINERS Merge remote-tracking branch 'rth/tcg-pull' into staging 2013-10-11 09:36:52 -07:00
Makefile build: add command check-clean 2013-10-11 16:50:01 +02:00
Makefile.objs qemu-ga: Add Windows VSS provider and requester as DLL 2013-09-09 14:17:57 -05:00
Makefile.target
memory_mapping.c cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
memory.c Revert "memory: Return -1 again on reads from unsigned regions" 2013-09-05 18:11:48 +02:00
migration-exec.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration-fd.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration-rdma.c rdma: constify ram_chunk_{index, start, end} 2013-09-24 13:22:50 +02:00
migration-tcp.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration-unix.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration.c migration: Fix compiler warning ('caps' may be used uninitialized) 2013-10-05 14:02:29 +04:00
monitor.c QOM CPUState refactorings / X86CPU 2013-09-03 12:33:32 -05:00
nbd.c nbd: use BlockDriverState refcnt 2013-09-06 15:25:08 +02:00
os-posix.c
os-win32.c
page_cache.c
qapi-schema.json blockdev: 'blockdev-add' QMP command 2013-10-11 16:50:01 +02:00
qdev-monitor.c qdev-monitor: Group "device_add help" and "info qdm" by category 2013-10-11 09:36:29 -07:00
qdict-test-data.txt
qemu-bridge-helper.c
qemu-char.c Merge remote-tracking branch 'amit/char-remove-watch-on-unplug' into staging 2013-10-10 13:16:02 -07:00
qemu-coroutine-io.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
qemu-coroutine-lock.c block: Repair the throttling code. 2013-07-29 17:07:37 +02:00
qemu-coroutine-sleep.c aio / timers: convert block_job_sleep_ns and co_sleep_ns to new API 2013-08-22 19:14:24 +02:00
qemu-coroutine.c coroutine: add ./configure --disable-coroutine-pool 2013-09-12 10:12:48 +02:00
qemu-doc.texi
qemu-img-cmds.hx block: Image file option amendment 2013-09-12 10:12:46 +02:00
qemu-img.c qemu-img: fix invalid JSON 2013-09-12 13:49:50 +02:00
qemu-img.texi block: Image file option amendment 2013-09-12 10:12:46 +02:00
qemu-io-cmds.c block/qapi: Human-readable ImageInfoSpecific dump 2013-10-11 10:52:54 +02:00
qemu-io.c qemu-io: Let "open" pass options to block driver 2013-10-11 16:50:02 +02:00
qemu-log.c
qemu-nbd.c block: Error parameter for open functions 2013-09-12 10:12:48 +02:00
qemu-nbd.texi
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx block: Add iops_size to do the iops accounting for a given io size. 2013-09-06 15:25:07 +02:00
qemu-seccomp.c seccomp: fine tuning whitelist by adding times() 2013-09-24 15:15:16 -03:00
qemu-tech.texi
qemu-timer.c qemu-timer: do not take the lock in timer_pending 2013-09-18 15:48:33 +02:00
qemu.nsi Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
qemu.sasl Fix command example in qemu.sasl 2013-07-19 12:52:03 +04:00
qmp-commands.hx blockdev: 'blockdev-add' QMP command 2013-10-11 16:50:01 +02:00
qmp.c
qtest.c qtest: Fix FMT_timeval vs time_t 2013-09-02 09:08:29 -07:00
readline.c monitor: avoid use of global *cur_mon in readline_completion() 2013-08-30 07:41:14 -04:00
README Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
rules.mak configure: Support configuring C++ compiler 2013-09-09 14:17:56 -05:00
savevm.c savevm: fix wrong initialization by ram_control_load_hook 2013-09-24 13:22:08 +02:00
spice-qemu-char.c
tcg-runtime.c
tci.c misc: Use new rotate functions 2013-09-25 21:23:05 +02:00
thread-pool.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
thunk.c
tpm.c tpm.c: Don't try to put -1 in a variable of type TpmModel 2013-07-29 10:37:10 -05:00
trace-events Merge remote-tracking branch 'mjt/trivial-patches' into staging 2013-09-23 11:52:55 -05:00
translate-all.c exec: Delete is_tcg_gen_code and GETRA_EXT 2013-10-10 11:44:25 -07:00
translate-all.h
user-exec.c linux-user: fix segmentation fault passing with h2g(x) != x 2013-07-23 17:28:28 +03:00
VERSION Open up 1.7 development branch 2013-08-15 15:41:13 -05:00
version.rc Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
vl.c vl: Clean up unnecessary boot_order complications 2013-10-05 13:05:28 +04:00
xbzrle.c
xen-all.c qemu/xen: make use of xenstore relative paths 2013-10-10 14:25:52 +00:00
xen-mapcache.c
xen-stub.c pc: Initializing ram_memory under Xen. 2013-09-09 16:22:19 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team