QEMU main repository: Please see https://www.qemu.org/docs/master/devel/submitting-a-patch.html for how to submit changes to QEMU. Pull Requests are ignored. Please only use release tarballs from the QEMU website. http://www.qemu.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Mark Cave-Ayland 637016c260 Update OpenBIOS images 11 years ago
audio ossaudio: fix memory leak 11 years ago
backends qemu-char: convert testdev backend to data-driven creation 11 years ago
block block: Introduce "drained begin/end" API 11 years ago
bsd-user s/cpu_get_real_ticks/cpu_get_host_ticks/ 11 years ago
contrib ivshmem: use little-endian int64_t for the protocol 11 years ago
crypto crypto: add sanity checking of plaintext/ciphertext length 11 years ago
default-configs config: enable ivshmem on POSIX 11 years ago
disas disas/mips: Add R6 jr/jr.hb to disassembler 11 years ago
docs ivshmem: use little-endian int64_t for the protocol 11 years ago
dtc@65cc4d2748 dtc: Update dtc / libfdt submodule to version 1.4.0 11 years ago
fpu target-s390x: define default NaN values 11 years ago
fsdev maint: remove unused include for dirent.h 11 years ago
gdb-xml s390x/gdb: expose virtualization specific registers 11 years ago
hw vmxnet3: Do not fill stats if device is inactive 11 years ago
include ivshmem series 11 years ago
libdecnumber typofixes - v4 11 years ago
linux-headers vhost, pc, virtio features, fixes, cleanups 11 years ago
linux-user linux-user: Remove type casts to union type 11 years ago
migration block: Prepare for NULL BDS 11 years ago
net net: free the string returned by object_get_canonical_path_component 11 years ago
pc-bios Update OpenBIOS images 11 years ago
pixman@87eea99e44 pixman: update internal copy to pixman-0.32.6 12 years ago
po Update language files for QEMU 2.4.0 11 years ago
qapi blockdev: Allow creation of BDS trees without BB 11 years ago
qga qga: fix uninitialized value warning for win32 11 years ago
qobject Include qapi/qmp/qerror.h exactly where needed 11 years ago
qom qapi: Consistent generated code: prefer visitor 'v' 11 years ago
roms Update OpenBIOS images 11 years ago
scripts vhost, pc, virtio features, fixes, cleanups 11 years ago
slirp slirp: Fix non blocking connect for w32 11 years ago
stubs vhost, pc, virtio features, fixes, cleanups 11 years ago
target-alpha disas: QOMify alpha specific disas setup 11 years ago
target-arm * KVM page size fix for PPC 11 years ago
target-cris qdev: Protect device-list-properties against broken devices 11 years ago
target-i386 target-i386: Use 1UL for bit shift 11 years ago
target-lm32 disas: QOMify lm32 specific disas setup 11 years ago
target-m68k disas: QOMify m68k specific disas setup 11 years ago
target-microblaze qdev: Protect device-list-properties against broken devices 11 years ago
target-mips disas: QOMify mips specific disas setup 11 years ago
target-moxie disas: QOMify moxie specific disas setup 11 years ago
target-openrisc qdev: Protect device-list-properties against broken devices 11 years ago
target-ppc ppc/spapr: Add "ibm,pa-features" property to the device-tree 11 years ago
target-s390x disas: QOMify s390x specific disas setup 11 years ago
target-sh4 disas: QOMify sh4 specific disas setup 11 years ago
target-sparc disas: QOMify sparc specific disas setup 11 years ago
target-tilegx qdev: Protect device-list-properties against broken devices 11 years ago
target-tricore qdev: Protect device-list-properties against broken devices 11 years ago
target-unicore32 qdev: Protect device-list-properties against broken devices 11 years ago
target-xtensa target-xtensa: implement S32NB 11 years ago
tcg tcg/mips: Support r6 SEL{NE, EQ}Z instead of MOVN/MOVZ 11 years ago
tests ivshmem series 11 years ago
trace Remove superfluous '\n' around error_report() 11 years ago
ui util: pull Buffer code out of VNC module 11 years ago
util util: const event_notifier_get_fd() argument 11 years ago
.dir-locals.el Add .dir-locals.el file to configure emacs coding style 11 years ago
.exrc qemu: add .exrc 14 years ago
.gitignore libcacard: use the standalone project 11 years ago
.gitmodules PPC: Add u-boot firmware for e500 12 years ago
.mailmap Update mailmap 13 years ago
.travis.yml .travis.yml: Run make check for all targets, not just some 11 years ago
CODING_STYLE CODING_STYLE: update mixed declaration rules 11 years ago
COPYING COPYING: update from FSF 18 years ago
COPYING.LIB Update FSF address in GPL/LGPL boilerplate 17 years ago
Changelog Use qemu-project.org domain name 13 years ago
HACKING HACKING: Document vaddr type usage 13 years ago
LICENSE vfio: move hw/misc/vfio.c to hw/vfio/pci.c Move vfio.h into include/hw/vfio 11 years ago
MAINTAINERS util: pull Buffer code out of VNC module 11 years ago
Makefile contrib: add ivshmem client and server 11 years ago
Makefile.objs contrib: add ivshmem client and server 11 years ago
Makefile.target * Linux header update and cleanup 11 years ago
README README: fill out some useful quickstart information 11 years ago
VERSION Open 2.5 development tree 11 years ago
accel.c accel: Create accel object when initializing machine 12 years ago
aio-posix.c aio: introduce aio_{disable,enable}_external 11 years ago
aio-win32.c aio: introduce aio_{disable,enable}_external 11 years ago
arch_init.c smbios: move smbios code into a common folder 11 years ago
async.c aio: Add "is_external" flag for event handlers 11 years ago
balloon.c Include monitor/monitor.h exactly where needed 11 years ago
block.c block: Prepare for NULL BDS 11 years ago
blockdev-nbd.c Include monitor/monitor.h exactly where needed 11 years ago
blockdev.c block: Add "drained begin/end" for internal snapshot 11 years ago
blockjob.c block: Move I/O status and error actions into BB 11 years ago
bootdevice.c misc: fix typos in copyright declaration 11 years ago
bt-host.c sysemu: avoid proliferation of include/ subdirectories 13 years ago
bt-vhci.c sysemu: avoid proliferation of include/ subdirectories 13 years ago
configure contrib: add ivshmem client and server 11 years ago
cpu-exec-common.c exec.c: Collect AddressSpace related fields into a CPUAddressSpace struct 11 years ago
cpu-exec.c cpu-exec: Add "nochain" debug flag 11 years ago
cpus.c s/cpu_get_real_ticks/cpu_get_host_ticks/ 11 years ago
cputlb.c cputlb: Change tlb_set_dirty() arg to cpu 11 years ago
device-hotplug.c pci-hotplug-old: Has been dead for five major releases, bury 11 years ago
device_tree.c device_tree: Fix a typo 11 years ago
disas.c disas: QOMify alpha specific disas setup 11 years ago
dma-helpers.c range: remove useless inclusions 11 years ago
dump.c Include qapi/qmp/qerror.h exactly where needed 11 years ago
exec.c vhost, pc, virtio features, fixes, cleanups 11 years ago
gdbstub.c * Support for jemalloc 11 years ago
hmp-commands-info.hx hmp: added io apic dump state 11 years ago
hmp-commands.hx monitor: allow device_del to accept QOM paths 11 years ago
hmp.c qmp/hmp: Add throttle ratio to query-migrate and info migrate 11 years ago
hmp.h hmp: add info iothreads command 11 years ago
iohandler.c aio: Add "is_external" flag for event handlers 11 years ago
ioport.c - miscellaneous cleanups for TCG (Emilio) and NBD (Bogdan) 11 years ago
iothread.c rcu: actually register threads that have RCU read-side critical sections 11 years ago
kvm-all.c kvm: Move x86-specific functions into target-i386/kvm.c 11 years ago
kvm-stub.c kvm: Move x86-specific functions into target-i386/kvm.c 11 years ago
main-loop.c iohandler: Use aio API 11 years ago
memory.c memory: allow destroying a non-empty MemoryRegion 11 years ago
memory_mapping.c memory_mapping: Rework cpu related includes 11 years ago
module-common.c module: implement module loading 12 years ago
monitor.c block: Prepare for NULL BDS 11 years ago
nbd.c nbd: Mark fd handlers client type as "external" 11 years ago
numa.c Fix bad error handling after memory_region_init_ram() 11 years ago
os-posix.c rcu: do not create thread in pthread_atfork callback 11 years ago
os-win32.c maint: remove unused include for signal.h 11 years ago
page_cache.c maint: remove unused include for strings.h 11 years ago
qapi-schema.json sockets: allow port to be NULL when listening on IP address 11 years ago
qdev-monitor.c -----BEGIN PGP SIGNATURE----- 11 years ago
qdict-test-data.txt Introduce QDict test data file 17 years ago
qemu-bridge-helper.c qemu-bridge-helper: Fix fd leak in main() 12 years ago
qemu-char.c char: add qemu_chr_free() 11 years ago
qemu-doc.texi doc: document ivshmem & hugepages 11 years ago
qemu-ga.texi qga: start a man page 11 years ago
qemu-img-cmds.hx qemu-img: Add progress output for amend 12 years ago
qemu-img.c block: Add and use bdrv_replace_in_backing_chain() 11 years ago
qemu-img.texi maint: remove / fix many doubled words 11 years ago
qemu-io-cmds.c utils: rename strtosz to use qemu prefix 11 years ago
qemu-io.c qemu-io: Remove duplicate 'open' error message 11 years ago
qemu-log.c cpu-exec: Add "nochain" debug flag 11 years ago
qemu-nbd.c qemu-nbd: always compile in --aio=MODE option 11 years ago
qemu-nbd.texi nbd: Miscellaneous typo fixes. 12 years ago
qemu-options-wrapper.h vl.c: In qemu -h output, only print options for the arch we are running as 14 years ago
qemu-options.h vl.c: Move option generation logic into a wrapper file 14 years ago
qemu-options.hx options: Add documentation for filter-dump 11 years ago
qemu-seccomp.c seccomp: add memfd_create to whitelist 11 years ago
qemu-tech.texi doc: Refresh URLs in the qemu-tech documentation 11 years ago
qemu-timer.c qemu-timer: initialize "timers_done_ev" to set 11 years ago
qemu.nsi nsis: Add QEMU version information to Windows registry 11 years ago
qemu.sasl sasl: Avoid 'Could not find keytab file' in syslog 12 years ago
qjson.c QJSON: Use OBJECT_CHECK 11 years ago
qmp-commands.hx block: Remove wr_highest_sector from BlockAcctStats 11 years ago
qmp.c block: Move I/O status and error actions into BB 11 years ago
qtest.c Init page sizes in qtest 11 years ago
rules.mak make: load only required dependency files. 11 years ago
softmmu_template.h softmmu: remove now unused functions 11 years ago
spice-qemu-char.c qemu-char: convert spice backend to data-driven creation 11 years ago
tcg-runtime.c tcg: Push tcg-runtime routines into exec/helper-* 12 years ago
tci.c tcg: Rename debug_insn_start to insn_start 11 years ago
thread-pool.c coroutine: move into libqemuutil.a library 11 years ago
thunk.c linux-user: Allocate thunk size dynamically 11 years ago
tpm.c Include monitor/monitor.h exactly where needed 11 years ago
trace-events prep: do not use CPU_LOG_IOPORT, convert to tracepoints 11 years ago
translate-all.c tcg/ppc: Revise goto_tb implementation 11 years ago
translate-all.h translate-all: remove unnecessary argument to tb_invalidate_phys_range 11 years ago
translate-common.c translate: move real_host_page setting to -common 11 years ago
user-exec.c osdep.h: Remove qemu_printf 11 years ago
version.rc Use qemu-project.org domain name 13 years ago
vl.c net/dump: Provide the dumping facility as a net-filter 11 years ago
xen-common-stub.c accel: Move Xen registration code to xen-common.c 12 years ago
xen-common.c migration: Fix regression for xenfv and pc,accel=xen machine. 11 years ago
xen-hvm-stub.c pc: Remove redundant arguments from xen_hvm_init() 11 years ago
xen-hvm.c Fix bad error handling after memory_region_init_ram() 11 years ago
xen-mapcache.c maint: avoid useless "if (foo) free(foo)" pattern 11 years ago

README

         QEMU README
===========

QEMU is a generic and open source machine & userspace emulator and
virtualizer.

QEMU is capable of emulating a complete machine in software without any
need for hardware virtualization support. By using dynamic translation,
it achieves very good performance. QEMU can also integrate with the Xen
and KVM hypervisors to provide emulated hardware while allowing the
hypervisor to manage the CPU. With hypervisor support, QEMU can achieve
near native performance for CPUs. When QEMU emulates CPUs directly it is
capable of running operating systems made for one machine (e.g. an ARMv7
board) on a different machine (e.g. an x86_64 PC board).

QEMU is also capable of providing userspace API virtualization for Linux
and BSD kernel interfaces. This allows binaries compiled against one
architecture ABI (e.g. the Linux PPC64 ABI) to be run on a host using a
different architecture ABI (e.g. the Linux x86_64 ABI). This does not
involve any hardware emulation, simply CPU and syscall emulation.

QEMU aims to fit into a variety of use cases. It can be invoked directly
by users wishing to have full control over its behaviour and settings.
It also aims to facilitate integration into higher level management
layers, by providing a stable command line interface and monitor API.
It is commonly invoked indirectly via the libvirt library when using
open source applications such as oVirt, OpenStack and virt-manager.

QEMU as a whole is released under the GNU General Public License,
version 2. For full licensing details, consult the LICENSE file.


Building
========

QEMU is multi-platform software intended to be buildable on all modern
Linux platforms, OS-X, Win32 (via the Mingw64 toolchain) and a variety
of other UNIX targets. The simple steps to build QEMU are:

mkdir build
cd build
../configure
make

Complete details of the process for building and configuring QEMU for
all supported host platforms can be found in the qemu-tech.html file.
Additional information can also be found online via the QEMU website:

http://qemu-project.org/Hosts/Linux
http://qemu-project.org/Hosts/W32


Submitting patches
==================

The QEMU source code is maintained under the GIT version control system.

git clone git://git.qemu-project.org/qemu.git

When submitting patches, the preferred approach is to use 'git
format-patch' and/or 'git send-email' to format & send the mail to the
qemu-devel@nongnu.org mailing list. All patches submitted must contain
a 'Signed-off-by' line from the author. Patches should follow the
guidelines set out in the HACKING and CODING_STYLE files.

Additional information on submitting patches can be found online via
the QEMU website

http://qemu-project.org/Contribute/SubmitAPatch
http://qemu-project.org/Contribute/TrivialPatches


Bug reporting
=============

The QEMU project uses Launchpad as its primary upstream bug tracker. Bugs
found when running code built from QEMU git or upstream released sources
should be reported via:

https://bugs.launchpad.net/qemu/

If using QEMU via an operating system vendor pre-built binary package, it
is preferable to report bugs to the vendor's own bug tracker first. If
the bug is also known to affect latest upstream code, it can also be
reported via launchpad.

For additional information on bug reporting consult:

http://qemu-project.org/Contribute/ReportABug


Contact
=======

The QEMU community can be contacted in a number of ways, with the two
main methods being email and IRC

- qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel
- #qemu on irc.oftc.net

Information on additional methods of contacting the community can be
found online via the QEMU website:

http://qemu-project.org/Contribute/StartHere

-- End